All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.glookast.commons.capture.Channel Maven / Gradle / Ivy

Go to download

Helper classes with Jackson annotations for easy interfacing with Glookast Products

There is a newer version: 3.1.6
Show newest version
package com.glookast.commons.capture;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.UUID;

@Data
@NoArgsConstructor
@AllArgsConstructor
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, defaultImpl = Channel.class)
public class Channel
{
    protected int id;
    protected ChannelStatus status;
    protected String bufferLocation;
    protected String streamingUrl;
    protected SignalFormat inputSignal;
    protected ReferenceSignalStatus referenceSignalStatus;
    protected Boolean loopRecordingEnabled;
    protected UUID loopRecordingVideoFormatId;
    protected Integer loopRecordingMaxDuration;
    protected Boolean playoutEnabled;
    protected Boolean vtrRecordingEnabled;
    protected String vtrRecordingComPort;

    public Channel(Channel channel)
    {
        this.id = channel.id;
        this.status = channel.status;
        this.bufferLocation = channel.bufferLocation;
        this.streamingUrl = channel.streamingUrl;
        this.inputSignal = channel.inputSignal != null ? new SignalFormat(inputSignal) : null;
        this.referenceSignalStatus = channel.referenceSignalStatus;
        this.loopRecordingEnabled = channel.loopRecordingEnabled;
        this.loopRecordingVideoFormatId = channel.loopRecordingVideoFormatId;
        this.loopRecordingMaxDuration = channel.loopRecordingMaxDuration;
        this.vtrRecordingEnabled = channel.vtrRecordingEnabled;
        this.vtrRecordingComPort = channel.vtrRecordingComPort;
        this.playoutEnabled = channel.playoutEnabled;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy