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

com.pulumi.azurenative.databox.inputs.StorageAccountDetailsArgs Maven / Gradle / Ivy

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

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.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Details for the storage account.
 * 
 */
public final class StorageAccountDetailsArgs extends com.pulumi.resources.ResourceArgs {

    public static final StorageAccountDetailsArgs Empty = new StorageAccountDetailsArgs();

    /**
     * Account Type of the data to be transferred.
     * Expected value is 'StorageAccount'.
     * 
     */
    @Import(name="dataAccountType", required=true)
    private Output dataAccountType;

    /**
     * @return Account Type of the data to be transferred.
     * Expected value is 'StorageAccount'.
     * 
     */
    public Output dataAccountType() {
        return this.dataAccountType;
    }

    /**
     * Password for all the shares to be created on the device. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements :  Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : {@literal @}#\-$%^!+=;:_()]+
     * 
     */
    @Import(name="sharePassword")
    private @Nullable Output sharePassword;

    /**
     * @return Password for all the shares to be created on the device. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements :  Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : {@literal @}#\-$%^!+=;:_()]+
     * 
     */
    public Optional> sharePassword() {
        return Optional.ofNullable(this.sharePassword);
    }

    /**
     * Storage Account Resource Id.
     * 
     */
    @Import(name="storageAccountId", required=true)
    private Output storageAccountId;

    /**
     * @return Storage Account Resource Id.
     * 
     */
    public Output storageAccountId() {
        return this.storageAccountId;
    }

    private StorageAccountDetailsArgs() {}

    private StorageAccountDetailsArgs(StorageAccountDetailsArgs $) {
        this.dataAccountType = $.dataAccountType;
        this.sharePassword = $.sharePassword;
        this.storageAccountId = $.storageAccountId;
    }

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

    public static final class Builder {
        private StorageAccountDetailsArgs $;

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

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

        /**
         * @param dataAccountType Account Type of the data to be transferred.
         * Expected value is 'StorageAccount'.
         * 
         * @return builder
         * 
         */
        public Builder dataAccountType(Output dataAccountType) {
            $.dataAccountType = dataAccountType;
            return this;
        }

        /**
         * @param dataAccountType Account Type of the data to be transferred.
         * Expected value is 'StorageAccount'.
         * 
         * @return builder
         * 
         */
        public Builder dataAccountType(String dataAccountType) {
            return dataAccountType(Output.of(dataAccountType));
        }

        /**
         * @param sharePassword Password for all the shares to be created on the device. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements :  Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : {@literal @}#\-$%^!+=;:_()]+
         * 
         * @return builder
         * 
         */
        public Builder sharePassword(@Nullable Output sharePassword) {
            $.sharePassword = sharePassword;
            return this;
        }

        /**
         * @param sharePassword Password for all the shares to be created on the device. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements :  Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : {@literal @}#\-$%^!+=;:_()]+
         * 
         * @return builder
         * 
         */
        public Builder sharePassword(String sharePassword) {
            return sharePassword(Output.of(sharePassword));
        }

        /**
         * @param storageAccountId Storage Account Resource Id.
         * 
         * @return builder
         * 
         */
        public Builder storageAccountId(Output storageAccountId) {
            $.storageAccountId = storageAccountId;
            return this;
        }

        /**
         * @param storageAccountId Storage Account Resource Id.
         * 
         * @return builder
         * 
         */
        public Builder storageAccountId(String storageAccountId) {
            return storageAccountId(Output.of(storageAccountId));
        }

        public StorageAccountDetailsArgs build() {
            $.dataAccountType = Codegen.stringProp("dataAccountType").output().arg($.dataAccountType).def("StorageAccount").require();
            if ($.storageAccountId == null) {
                throw new MissingRequiredPropertyException("StorageAccountDetailsArgs", "storageAccountId");
            }
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy