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

com.pulumi.azurenative.datafactory.inputs.XmlReadSettingsArgs Maven / Gradle / Ivy

There is a newer version: 2.72.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.datafactory.inputs;

import com.pulumi.azurenative.datafactory.inputs.TarGZipReadSettingsArgs;
import com.pulumi.azurenative.datafactory.inputs.TarReadSettingsArgs;
import com.pulumi.azurenative.datafactory.inputs.ZipDeflateReadSettingsArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.core.internal.Codegen;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Object;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Xml read settings.
 * 
 */
public final class XmlReadSettingsArgs extends com.pulumi.resources.ResourceArgs {

    public static final XmlReadSettingsArgs Empty = new XmlReadSettingsArgs();

    /**
     * Compression settings.
     * 
     */
    @Import(name="compressionProperties")
    private @Nullable Output compressionProperties;

    /**
     * @return Compression settings.
     * 
     */
    public Optional> compressionProperties() {
        return Optional.ofNullable(this.compressionProperties);
    }

    /**
     * Indicates whether type detection is enabled when reading the xml files. Type: boolean (or Expression with resultType boolean).
     * 
     */
    @Import(name="detectDataType")
    private @Nullable Output detectDataType;

    /**
     * @return Indicates whether type detection is enabled when reading the xml files. Type: boolean (or Expression with resultType boolean).
     * 
     */
    public Optional> detectDataType() {
        return Optional.ofNullable(this.detectDataType);
    }

    /**
     * Namespace uri to prefix mappings to override the prefixes in column names when namespace is enabled, if no prefix is defined for a namespace uri, the prefix of xml element/attribute name in the xml data file will be used. Example: "{"http://www.example.com/xml":"prefix"}" Type: object (or Expression with resultType object).
     * 
     */
    @Import(name="namespacePrefixes")
    private @Nullable Output namespacePrefixes;

    /**
     * @return Namespace uri to prefix mappings to override the prefixes in column names when namespace is enabled, if no prefix is defined for a namespace uri, the prefix of xml element/attribute name in the xml data file will be used. Example: "{"http://www.example.com/xml":"prefix"}" Type: object (or Expression with resultType object).
     * 
     */
    public Optional> namespacePrefixes() {
        return Optional.ofNullable(this.namespacePrefixes);
    }

    /**
     * Indicates whether namespace is enabled when reading the xml files. Type: boolean (or Expression with resultType boolean).
     * 
     */
    @Import(name="namespaces")
    private @Nullable Output namespaces;

    /**
     * @return Indicates whether namespace is enabled when reading the xml files. Type: boolean (or Expression with resultType boolean).
     * 
     */
    public Optional> namespaces() {
        return Optional.ofNullable(this.namespaces);
    }

    /**
     * The read setting type.
     * Expected value is 'XmlReadSettings'.
     * 
     */
    @Import(name="type", required=true)
    private Output type;

    /**
     * @return The read setting type.
     * Expected value is 'XmlReadSettings'.
     * 
     */
    public Output type() {
        return this.type;
    }

    /**
     * Indicates what validation method is used when reading the xml files. Allowed values: 'none', 'xsd', or 'dtd'. Type: string (or Expression with resultType string).
     * 
     */
    @Import(name="validationMode")
    private @Nullable Output validationMode;

    /**
     * @return Indicates what validation method is used when reading the xml files. Allowed values: 'none', 'xsd', or 'dtd'. Type: string (or Expression with resultType string).
     * 
     */
    public Optional> validationMode() {
        return Optional.ofNullable(this.validationMode);
    }

    private XmlReadSettingsArgs() {}

    private XmlReadSettingsArgs(XmlReadSettingsArgs $) {
        this.compressionProperties = $.compressionProperties;
        this.detectDataType = $.detectDataType;
        this.namespacePrefixes = $.namespacePrefixes;
        this.namespaces = $.namespaces;
        this.type = $.type;
        this.validationMode = $.validationMode;
    }

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

    public static final class Builder {
        private XmlReadSettingsArgs $;

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

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

        /**
         * @param compressionProperties Compression settings.
         * 
         * @return builder
         * 
         */
        public Builder compressionProperties(@Nullable Output compressionProperties) {
            $.compressionProperties = compressionProperties;
            return this;
        }

        /**
         * @param compressionProperties Compression settings.
         * 
         * @return builder
         * 
         */
        public Builder compressionProperties(Object compressionProperties) {
            return compressionProperties(Output.of(compressionProperties));
        }

        /**
         * @param detectDataType Indicates whether type detection is enabled when reading the xml files. Type: boolean (or Expression with resultType boolean).
         * 
         * @return builder
         * 
         */
        public Builder detectDataType(@Nullable Output detectDataType) {
            $.detectDataType = detectDataType;
            return this;
        }

        /**
         * @param detectDataType Indicates whether type detection is enabled when reading the xml files. Type: boolean (or Expression with resultType boolean).
         * 
         * @return builder
         * 
         */
        public Builder detectDataType(Object detectDataType) {
            return detectDataType(Output.of(detectDataType));
        }

        /**
         * @param namespacePrefixes Namespace uri to prefix mappings to override the prefixes in column names when namespace is enabled, if no prefix is defined for a namespace uri, the prefix of xml element/attribute name in the xml data file will be used. Example: "{"http://www.example.com/xml":"prefix"}" Type: object (or Expression with resultType object).
         * 
         * @return builder
         * 
         */
        public Builder namespacePrefixes(@Nullable Output namespacePrefixes) {
            $.namespacePrefixes = namespacePrefixes;
            return this;
        }

        /**
         * @param namespacePrefixes Namespace uri to prefix mappings to override the prefixes in column names when namespace is enabled, if no prefix is defined for a namespace uri, the prefix of xml element/attribute name in the xml data file will be used. Example: "{"http://www.example.com/xml":"prefix"}" Type: object (or Expression with resultType object).
         * 
         * @return builder
         * 
         */
        public Builder namespacePrefixes(Object namespacePrefixes) {
            return namespacePrefixes(Output.of(namespacePrefixes));
        }

        /**
         * @param namespaces Indicates whether namespace is enabled when reading the xml files. Type: boolean (or Expression with resultType boolean).
         * 
         * @return builder
         * 
         */
        public Builder namespaces(@Nullable Output namespaces) {
            $.namespaces = namespaces;
            return this;
        }

        /**
         * @param namespaces Indicates whether namespace is enabled when reading the xml files. Type: boolean (or Expression with resultType boolean).
         * 
         * @return builder
         * 
         */
        public Builder namespaces(Object namespaces) {
            return namespaces(Output.of(namespaces));
        }

        /**
         * @param type The read setting type.
         * Expected value is 'XmlReadSettings'.
         * 
         * @return builder
         * 
         */
        public Builder type(Output type) {
            $.type = type;
            return this;
        }

        /**
         * @param type The read setting type.
         * Expected value is 'XmlReadSettings'.
         * 
         * @return builder
         * 
         */
        public Builder type(String type) {
            return type(Output.of(type));
        }

        /**
         * @param validationMode Indicates what validation method is used when reading the xml files. Allowed values: 'none', 'xsd', or 'dtd'. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder validationMode(@Nullable Output validationMode) {
            $.validationMode = validationMode;
            return this;
        }

        /**
         * @param validationMode Indicates what validation method is used when reading the xml files. Allowed values: 'none', 'xsd', or 'dtd'. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder validationMode(Object validationMode) {
            return validationMode(Output.of(validationMode));
        }

        public XmlReadSettingsArgs build() {
            $.type = Codegen.stringProp("type").output().arg($.type).require();
            return $;
        }
    }

}