
com.pulumi.aws.medialive.outputs.ChannelInputAttachment Maven / Gradle / Ivy
// *** 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.aws.medialive.outputs;
import com.pulumi.aws.medialive.outputs.ChannelInputAttachmentAutomaticInputFailoverSettings;
import com.pulumi.aws.medialive.outputs.ChannelInputAttachmentInputSettings;
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 ChannelInputAttachment {
/**
* @return User-specified settings for defining what the conditions are for declaring the input unhealthy and failing over to a different input. See Automatic Input Failover Settings for more details.
*
*/
private @Nullable ChannelInputAttachmentAutomaticInputFailoverSettings automaticInputFailoverSettings;
/**
* @return User-specified name for the attachment.
*
*/
private String inputAttachmentName;
/**
* @return The ID of the input.
*
*/
private String inputId;
/**
* @return Settings of an input. See Input Settings for more details.
*
*/
private @Nullable ChannelInputAttachmentInputSettings inputSettings;
private ChannelInputAttachment() {}
/**
* @return User-specified settings for defining what the conditions are for declaring the input unhealthy and failing over to a different input. See Automatic Input Failover Settings for more details.
*
*/
public Optional automaticInputFailoverSettings() {
return Optional.ofNullable(this.automaticInputFailoverSettings);
}
/**
* @return User-specified name for the attachment.
*
*/
public String inputAttachmentName() {
return this.inputAttachmentName;
}
/**
* @return The ID of the input.
*
*/
public String inputId() {
return this.inputId;
}
/**
* @return Settings of an input. See Input Settings for more details.
*
*/
public Optional inputSettings() {
return Optional.ofNullable(this.inputSettings);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(ChannelInputAttachment defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable ChannelInputAttachmentAutomaticInputFailoverSettings automaticInputFailoverSettings;
private String inputAttachmentName;
private String inputId;
private @Nullable ChannelInputAttachmentInputSettings inputSettings;
public Builder() {}
public Builder(ChannelInputAttachment defaults) {
Objects.requireNonNull(defaults);
this.automaticInputFailoverSettings = defaults.automaticInputFailoverSettings;
this.inputAttachmentName = defaults.inputAttachmentName;
this.inputId = defaults.inputId;
this.inputSettings = defaults.inputSettings;
}
@CustomType.Setter
public Builder automaticInputFailoverSettings(@Nullable ChannelInputAttachmentAutomaticInputFailoverSettings automaticInputFailoverSettings) {
this.automaticInputFailoverSettings = automaticInputFailoverSettings;
return this;
}
@CustomType.Setter
public Builder inputAttachmentName(String inputAttachmentName) {
if (inputAttachmentName == null) {
throw new MissingRequiredPropertyException("ChannelInputAttachment", "inputAttachmentName");
}
this.inputAttachmentName = inputAttachmentName;
return this;
}
@CustomType.Setter
public Builder inputId(String inputId) {
if (inputId == null) {
throw new MissingRequiredPropertyException("ChannelInputAttachment", "inputId");
}
this.inputId = inputId;
return this;
}
@CustomType.Setter
public Builder inputSettings(@Nullable ChannelInputAttachmentInputSettings inputSettings) {
this.inputSettings = inputSettings;
return this;
}
public ChannelInputAttachment build() {
final var _resultValue = new ChannelInputAttachment();
_resultValue.automaticInputFailoverSettings = automaticInputFailoverSettings;
_resultValue.inputAttachmentName = inputAttachmentName;
_resultValue.inputId = inputId;
_resultValue.inputSettings = inputSettings;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy