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

com.pulumi.azurenative.datafactory.inputs.WebBasicAuthenticationArgs 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.AzureKeyVaultSecretReferenceArgs;
import com.pulumi.azurenative.datafactory.inputs.SecureStringArgs;
import com.pulumi.core.Either;
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;


/**
 * A WebLinkedService that uses basic authentication to communicate with an HTTP endpoint.
 * 
 */
public final class WebBasicAuthenticationArgs extends com.pulumi.resources.ResourceArgs {

    public static final WebBasicAuthenticationArgs Empty = new WebBasicAuthenticationArgs();

    /**
     * Type of authentication used to connect to the web table source.
     * Expected value is 'Basic'.
     * 
     */
    @Import(name="authenticationType", required=true)
    private Output authenticationType;

    /**
     * @return Type of authentication used to connect to the web table source.
     * Expected value is 'Basic'.
     * 
     */
    public Output authenticationType() {
        return this.authenticationType;
    }

    /**
     * The password for Basic authentication.
     * 
     */
    @Import(name="password", required=true)
    private Output> password;

    /**
     * @return The password for Basic authentication.
     * 
     */
    public Output> password() {
        return this.password;
    }

    /**
     * The URL of the web service endpoint, e.g. https://www.microsoft.com . Type: string (or Expression with resultType string).
     * 
     */
    @Import(name="url", required=true)
    private Output url;

    /**
     * @return The URL of the web service endpoint, e.g. https://www.microsoft.com . Type: string (or Expression with resultType string).
     * 
     */
    public Output url() {
        return this.url;
    }

    /**
     * User name for Basic authentication. Type: string (or Expression with resultType string).
     * 
     */
    @Import(name="username", required=true)
    private Output username;

    /**
     * @return User name for Basic authentication. Type: string (or Expression with resultType string).
     * 
     */
    public Output username() {
        return this.username;
    }

    private WebBasicAuthenticationArgs() {}

    private WebBasicAuthenticationArgs(WebBasicAuthenticationArgs $) {
        this.authenticationType = $.authenticationType;
        this.password = $.password;
        this.url = $.url;
        this.username = $.username;
    }

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

    public static final class Builder {
        private WebBasicAuthenticationArgs $;

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

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

        /**
         * @param authenticationType Type of authentication used to connect to the web table source.
         * Expected value is 'Basic'.
         * 
         * @return builder
         * 
         */
        public Builder authenticationType(Output authenticationType) {
            $.authenticationType = authenticationType;
            return this;
        }

        /**
         * @param authenticationType Type of authentication used to connect to the web table source.
         * Expected value is 'Basic'.
         * 
         * @return builder
         * 
         */
        public Builder authenticationType(String authenticationType) {
            return authenticationType(Output.of(authenticationType));
        }

        /**
         * @param password The password for Basic authentication.
         * 
         * @return builder
         * 
         */
        public Builder password(Output> password) {
            $.password = password;
            return this;
        }

        /**
         * @param password The password for Basic authentication.
         * 
         * @return builder
         * 
         */
        public Builder password(Either password) {
            return password(Output.of(password));
        }

        /**
         * @param password The password for Basic authentication.
         * 
         * @return builder
         * 
         */
        public Builder password(AzureKeyVaultSecretReferenceArgs password) {
            return password(Either.ofLeft(password));
        }

        /**
         * @param password The password for Basic authentication.
         * 
         * @return builder
         * 
         */
        public Builder password(SecureStringArgs password) {
            return password(Either.ofRight(password));
        }

        /**
         * @param url The URL of the web service endpoint, e.g. https://www.microsoft.com . Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder url(Output url) {
            $.url = url;
            return this;
        }

        /**
         * @param url The URL of the web service endpoint, e.g. https://www.microsoft.com . Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder url(Object url) {
            return url(Output.of(url));
        }

        /**
         * @param username User name for Basic authentication. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder username(Output username) {
            $.username = username;
            return this;
        }

        /**
         * @param username User name for Basic authentication. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder username(Object username) {
            return username(Output.of(username));
        }

        public WebBasicAuthenticationArgs build() {
            $.authenticationType = Codegen.stringProp("authenticationType").output().arg($.authenticationType).require();
            if ($.password == null) {
                throw new MissingRequiredPropertyException("WebBasicAuthenticationArgs", "password");
            }
            if ($.url == null) {
                throw new MissingRequiredPropertyException("WebBasicAuthenticationArgs", "url");
            }
            if ($.username == null) {
                throw new MissingRequiredPropertyException("WebBasicAuthenticationArgs", "username");
            }
            return $;
        }
    }

}