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

com.pulumi.azurenative.videoanalyzer.outputs.RtspSourceResponse Maven / Gradle / Ivy

The newest version!
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.azurenative.videoanalyzer.outputs;

import com.pulumi.azurenative.videoanalyzer.outputs.TlsEndpointResponse;
import com.pulumi.azurenative.videoanalyzer.outputs.UnsecuredEndpointResponse;
import com.pulumi.core.Either;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class RtspSourceResponse {
    /**
     * @return RTSP endpoint information for Video Analyzer to connect to. This contains the required information for Video Analyzer to connect to RTSP cameras and/or generic RTSP servers.
     * 
     */
    private Either endpoint;
    /**
     * @return Node name. Must be unique within the topology.
     * 
     */
    private String name;
    /**
     * @return Network transport utilized by the RTSP and RTP exchange: TCP or HTTP. When using TCP, the RTP packets are interleaved on the TCP RTSP connection. When using HTTP, the RTSP messages are exchanged through long lived HTTP connections, and the RTP packages are interleaved in the HTTP connections alongside the RTSP messages.
     * 
     */
    private @Nullable String transport;
    /**
     * @return The discriminator for derived types.
     * Expected value is '#Microsoft.VideoAnalyzer.RtspSource'.
     * 
     */
    private String type;

    private RtspSourceResponse() {}
    /**
     * @return RTSP endpoint information for Video Analyzer to connect to. This contains the required information for Video Analyzer to connect to RTSP cameras and/or generic RTSP servers.
     * 
     */
    public Either endpoint() {
        return this.endpoint;
    }
    /**
     * @return Node name. Must be unique within the topology.
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @return Network transport utilized by the RTSP and RTP exchange: TCP or HTTP. When using TCP, the RTP packets are interleaved on the TCP RTSP connection. When using HTTP, the RTSP messages are exchanged through long lived HTTP connections, and the RTP packages are interleaved in the HTTP connections alongside the RTSP messages.
     * 
     */
    public Optional transport() {
        return Optional.ofNullable(this.transport);
    }
    /**
     * @return The discriminator for derived types.
     * Expected value is '#Microsoft.VideoAnalyzer.RtspSource'.
     * 
     */
    public String type() {
        return this.type;
    }

    public static Builder builder() {
        return new Builder();
    }

    public static Builder builder(RtspSourceResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private Either endpoint;
        private String name;
        private @Nullable String transport;
        private String type;
        public Builder() {}
        public Builder(RtspSourceResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.endpoint = defaults.endpoint;
    	      this.name = defaults.name;
    	      this.transport = defaults.transport;
    	      this.type = defaults.type;
        }

        @CustomType.Setter
        public Builder endpoint(Either endpoint) {
            if (endpoint == null) {
              throw new MissingRequiredPropertyException("RtspSourceResponse", "endpoint");
            }
            this.endpoint = endpoint;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("RtspSourceResponse", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder transport(@Nullable String transport) {

            this.transport = transport;
            return this;
        }
        @CustomType.Setter
        public Builder type(String type) {
            if (type == null) {
              throw new MissingRequiredPropertyException("RtspSourceResponse", "type");
            }
            this.type = type;
            return this;
        }
        public RtspSourceResponse build() {
            final var _resultValue = new RtspSourceResponse();
            _resultValue.endpoint = endpoint;
            _resultValue.name = name;
            _resultValue.transport = transport;
            _resultValue.type = type;
            return _resultValue;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy