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

com.pulumi.azurenative.logic.inputs.EdifactProtocolSettingsArgs Maven / Gradle / Ivy

There is a newer version: 2.82.0
Show 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.logic.inputs;

import com.pulumi.azurenative.logic.inputs.EdifactAcknowledgementSettingsArgs;
import com.pulumi.azurenative.logic.inputs.EdifactDelimiterOverrideArgs;
import com.pulumi.azurenative.logic.inputs.EdifactEnvelopeOverrideArgs;
import com.pulumi.azurenative.logic.inputs.EdifactEnvelopeSettingsArgs;
import com.pulumi.azurenative.logic.inputs.EdifactFramingSettingsArgs;
import com.pulumi.azurenative.logic.inputs.EdifactMessageFilterArgs;
import com.pulumi.azurenative.logic.inputs.EdifactMessageIdentifierArgs;
import com.pulumi.azurenative.logic.inputs.EdifactProcessingSettingsArgs;
import com.pulumi.azurenative.logic.inputs.EdifactSchemaReferenceArgs;
import com.pulumi.azurenative.logic.inputs.EdifactValidationOverrideArgs;
import com.pulumi.azurenative.logic.inputs.EdifactValidationSettingsArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * The Edifact agreement protocol settings.
 * 
 */
public final class EdifactProtocolSettingsArgs extends com.pulumi.resources.ResourceArgs {

    public static final EdifactProtocolSettingsArgs Empty = new EdifactProtocolSettingsArgs();

    /**
     * The EDIFACT acknowledgement settings.
     * 
     */
    @Import(name="acknowledgementSettings", required=true)
    private Output acknowledgementSettings;

    /**
     * @return The EDIFACT acknowledgement settings.
     * 
     */
    public Output acknowledgementSettings() {
        return this.acknowledgementSettings;
    }

    /**
     * The EDIFACT delimiter override settings.
     * 
     */
    @Import(name="edifactDelimiterOverrides")
    private @Nullable Output> edifactDelimiterOverrides;

    /**
     * @return The EDIFACT delimiter override settings.
     * 
     */
    public Optional>> edifactDelimiterOverrides() {
        return Optional.ofNullable(this.edifactDelimiterOverrides);
    }

    /**
     * The EDIFACT envelope override settings.
     * 
     */
    @Import(name="envelopeOverrides")
    private @Nullable Output> envelopeOverrides;

    /**
     * @return The EDIFACT envelope override settings.
     * 
     */
    public Optional>> envelopeOverrides() {
        return Optional.ofNullable(this.envelopeOverrides);
    }

    /**
     * The EDIFACT envelope settings.
     * 
     */
    @Import(name="envelopeSettings", required=true)
    private Output envelopeSettings;

    /**
     * @return The EDIFACT envelope settings.
     * 
     */
    public Output envelopeSettings() {
        return this.envelopeSettings;
    }

    /**
     * The EDIFACT framing settings.
     * 
     */
    @Import(name="framingSettings", required=true)
    private Output framingSettings;

    /**
     * @return The EDIFACT framing settings.
     * 
     */
    public Output framingSettings() {
        return this.framingSettings;
    }

    /**
     * The EDIFACT message filter.
     * 
     */
    @Import(name="messageFilter", required=true)
    private Output messageFilter;

    /**
     * @return The EDIFACT message filter.
     * 
     */
    public Output messageFilter() {
        return this.messageFilter;
    }

    /**
     * The EDIFACT message filter list.
     * 
     */
    @Import(name="messageFilterList")
    private @Nullable Output> messageFilterList;

    /**
     * @return The EDIFACT message filter list.
     * 
     */
    public Optional>> messageFilterList() {
        return Optional.ofNullable(this.messageFilterList);
    }

    /**
     * The EDIFACT processing Settings.
     * 
     */
    @Import(name="processingSettings", required=true)
    private Output processingSettings;

    /**
     * @return The EDIFACT processing Settings.
     * 
     */
    public Output processingSettings() {
        return this.processingSettings;
    }

    /**
     * The EDIFACT schema references.
     * 
     */
    @Import(name="schemaReferences", required=true)
    private Output> schemaReferences;

    /**
     * @return The EDIFACT schema references.
     * 
     */
    public Output> schemaReferences() {
        return this.schemaReferences;
    }

    /**
     * The EDIFACT validation override settings.
     * 
     */
    @Import(name="validationOverrides")
    private @Nullable Output> validationOverrides;

    /**
     * @return The EDIFACT validation override settings.
     * 
     */
    public Optional>> validationOverrides() {
        return Optional.ofNullable(this.validationOverrides);
    }

    /**
     * The EDIFACT validation settings.
     * 
     */
    @Import(name="validationSettings", required=true)
    private Output validationSettings;

    /**
     * @return The EDIFACT validation settings.
     * 
     */
    public Output validationSettings() {
        return this.validationSettings;
    }

    private EdifactProtocolSettingsArgs() {}

    private EdifactProtocolSettingsArgs(EdifactProtocolSettingsArgs $) {
        this.acknowledgementSettings = $.acknowledgementSettings;
        this.edifactDelimiterOverrides = $.edifactDelimiterOverrides;
        this.envelopeOverrides = $.envelopeOverrides;
        this.envelopeSettings = $.envelopeSettings;
        this.framingSettings = $.framingSettings;
        this.messageFilter = $.messageFilter;
        this.messageFilterList = $.messageFilterList;
        this.processingSettings = $.processingSettings;
        this.schemaReferences = $.schemaReferences;
        this.validationOverrides = $.validationOverrides;
        this.validationSettings = $.validationSettings;
    }

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

    public static final class Builder {
        private EdifactProtocolSettingsArgs $;

        public Builder() {
            $ = new EdifactProtocolSettingsArgs();
        }

        public Builder(EdifactProtocolSettingsArgs defaults) {
            $ = new EdifactProtocolSettingsArgs(Objects.requireNonNull(defaults));
        }

        /**
         * @param acknowledgementSettings The EDIFACT acknowledgement settings.
         * 
         * @return builder
         * 
         */
        public Builder acknowledgementSettings(Output acknowledgementSettings) {
            $.acknowledgementSettings = acknowledgementSettings;
            return this;
        }

        /**
         * @param acknowledgementSettings The EDIFACT acknowledgement settings.
         * 
         * @return builder
         * 
         */
        public Builder acknowledgementSettings(EdifactAcknowledgementSettingsArgs acknowledgementSettings) {
            return acknowledgementSettings(Output.of(acknowledgementSettings));
        }

        /**
         * @param edifactDelimiterOverrides The EDIFACT delimiter override settings.
         * 
         * @return builder
         * 
         */
        public Builder edifactDelimiterOverrides(@Nullable Output> edifactDelimiterOverrides) {
            $.edifactDelimiterOverrides = edifactDelimiterOverrides;
            return this;
        }

        /**
         * @param edifactDelimiterOverrides The EDIFACT delimiter override settings.
         * 
         * @return builder
         * 
         */
        public Builder edifactDelimiterOverrides(List edifactDelimiterOverrides) {
            return edifactDelimiterOverrides(Output.of(edifactDelimiterOverrides));
        }

        /**
         * @param edifactDelimiterOverrides The EDIFACT delimiter override settings.
         * 
         * @return builder
         * 
         */
        public Builder edifactDelimiterOverrides(EdifactDelimiterOverrideArgs... edifactDelimiterOverrides) {
            return edifactDelimiterOverrides(List.of(edifactDelimiterOverrides));
        }

        /**
         * @param envelopeOverrides The EDIFACT envelope override settings.
         * 
         * @return builder
         * 
         */
        public Builder envelopeOverrides(@Nullable Output> envelopeOverrides) {
            $.envelopeOverrides = envelopeOverrides;
            return this;
        }

        /**
         * @param envelopeOverrides The EDIFACT envelope override settings.
         * 
         * @return builder
         * 
         */
        public Builder envelopeOverrides(List envelopeOverrides) {
            return envelopeOverrides(Output.of(envelopeOverrides));
        }

        /**
         * @param envelopeOverrides The EDIFACT envelope override settings.
         * 
         * @return builder
         * 
         */
        public Builder envelopeOverrides(EdifactEnvelopeOverrideArgs... envelopeOverrides) {
            return envelopeOverrides(List.of(envelopeOverrides));
        }

        /**
         * @param envelopeSettings The EDIFACT envelope settings.
         * 
         * @return builder
         * 
         */
        public Builder envelopeSettings(Output envelopeSettings) {
            $.envelopeSettings = envelopeSettings;
            return this;
        }

        /**
         * @param envelopeSettings The EDIFACT envelope settings.
         * 
         * @return builder
         * 
         */
        public Builder envelopeSettings(EdifactEnvelopeSettingsArgs envelopeSettings) {
            return envelopeSettings(Output.of(envelopeSettings));
        }

        /**
         * @param framingSettings The EDIFACT framing settings.
         * 
         * @return builder
         * 
         */
        public Builder framingSettings(Output framingSettings) {
            $.framingSettings = framingSettings;
            return this;
        }

        /**
         * @param framingSettings The EDIFACT framing settings.
         * 
         * @return builder
         * 
         */
        public Builder framingSettings(EdifactFramingSettingsArgs framingSettings) {
            return framingSettings(Output.of(framingSettings));
        }

        /**
         * @param messageFilter The EDIFACT message filter.
         * 
         * @return builder
         * 
         */
        public Builder messageFilter(Output messageFilter) {
            $.messageFilter = messageFilter;
            return this;
        }

        /**
         * @param messageFilter The EDIFACT message filter.
         * 
         * @return builder
         * 
         */
        public Builder messageFilter(EdifactMessageFilterArgs messageFilter) {
            return messageFilter(Output.of(messageFilter));
        }

        /**
         * @param messageFilterList The EDIFACT message filter list.
         * 
         * @return builder
         * 
         */
        public Builder messageFilterList(@Nullable Output> messageFilterList) {
            $.messageFilterList = messageFilterList;
            return this;
        }

        /**
         * @param messageFilterList The EDIFACT message filter list.
         * 
         * @return builder
         * 
         */
        public Builder messageFilterList(List messageFilterList) {
            return messageFilterList(Output.of(messageFilterList));
        }

        /**
         * @param messageFilterList The EDIFACT message filter list.
         * 
         * @return builder
         * 
         */
        public Builder messageFilterList(EdifactMessageIdentifierArgs... messageFilterList) {
            return messageFilterList(List.of(messageFilterList));
        }

        /**
         * @param processingSettings The EDIFACT processing Settings.
         * 
         * @return builder
         * 
         */
        public Builder processingSettings(Output processingSettings) {
            $.processingSettings = processingSettings;
            return this;
        }

        /**
         * @param processingSettings The EDIFACT processing Settings.
         * 
         * @return builder
         * 
         */
        public Builder processingSettings(EdifactProcessingSettingsArgs processingSettings) {
            return processingSettings(Output.of(processingSettings));
        }

        /**
         * @param schemaReferences The EDIFACT schema references.
         * 
         * @return builder
         * 
         */
        public Builder schemaReferences(Output> schemaReferences) {
            $.schemaReferences = schemaReferences;
            return this;
        }

        /**
         * @param schemaReferences The EDIFACT schema references.
         * 
         * @return builder
         * 
         */
        public Builder schemaReferences(List schemaReferences) {
            return schemaReferences(Output.of(schemaReferences));
        }

        /**
         * @param schemaReferences The EDIFACT schema references.
         * 
         * @return builder
         * 
         */
        public Builder schemaReferences(EdifactSchemaReferenceArgs... schemaReferences) {
            return schemaReferences(List.of(schemaReferences));
        }

        /**
         * @param validationOverrides The EDIFACT validation override settings.
         * 
         * @return builder
         * 
         */
        public Builder validationOverrides(@Nullable Output> validationOverrides) {
            $.validationOverrides = validationOverrides;
            return this;
        }

        /**
         * @param validationOverrides The EDIFACT validation override settings.
         * 
         * @return builder
         * 
         */
        public Builder validationOverrides(List validationOverrides) {
            return validationOverrides(Output.of(validationOverrides));
        }

        /**
         * @param validationOverrides The EDIFACT validation override settings.
         * 
         * @return builder
         * 
         */
        public Builder validationOverrides(EdifactValidationOverrideArgs... validationOverrides) {
            return validationOverrides(List.of(validationOverrides));
        }

        /**
         * @param validationSettings The EDIFACT validation settings.
         * 
         * @return builder
         * 
         */
        public Builder validationSettings(Output validationSettings) {
            $.validationSettings = validationSettings;
            return this;
        }

        /**
         * @param validationSettings The EDIFACT validation settings.
         * 
         * @return builder
         * 
         */
        public Builder validationSettings(EdifactValidationSettingsArgs validationSettings) {
            return validationSettings(Output.of(validationSettings));
        }

        public EdifactProtocolSettingsArgs build() {
            if ($.acknowledgementSettings == null) {
                throw new MissingRequiredPropertyException("EdifactProtocolSettingsArgs", "acknowledgementSettings");
            }
            if ($.envelopeSettings == null) {
                throw new MissingRequiredPropertyException("EdifactProtocolSettingsArgs", "envelopeSettings");
            }
            if ($.framingSettings == null) {
                throw new MissingRequiredPropertyException("EdifactProtocolSettingsArgs", "framingSettings");
            }
            if ($.messageFilter == null) {
                throw new MissingRequiredPropertyException("EdifactProtocolSettingsArgs", "messageFilter");
            }
            if ($.processingSettings == null) {
                throw new MissingRequiredPropertyException("EdifactProtocolSettingsArgs", "processingSettings");
            }
            if ($.schemaReferences == null) {
                throw new MissingRequiredPropertyException("EdifactProtocolSettingsArgs", "schemaReferences");
            }
            if ($.validationSettings == null) {
                throw new MissingRequiredPropertyException("EdifactProtocolSettingsArgs", "validationSettings");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy