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

com.pulumi.azurenative.databox.inputs.PreferencesArgs 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.azurenative.databox.enums.StorageAccountAccessTier;
import com.pulumi.azurenative.databox.inputs.EncryptionPreferencesArgs;
import com.pulumi.azurenative.databox.inputs.TransportPreferencesArgs;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Preferences related to the order
 * 
 */
public final class PreferencesArgs extends com.pulumi.resources.ResourceArgs {

    public static final PreferencesArgs Empty = new PreferencesArgs();

    /**
     * Preferences related to the Encryption.
     * 
     */
    @Import(name="encryptionPreferences")
    private @Nullable Output encryptionPreferences;

    /**
     * @return Preferences related to the Encryption.
     * 
     */
    public Optional> encryptionPreferences() {
        return Optional.ofNullable(this.encryptionPreferences);
    }

    /**
     * Preferred data center region.
     * 
     */
    @Import(name="preferredDataCenterRegion")
    private @Nullable Output> preferredDataCenterRegion;

    /**
     * @return Preferred data center region.
     * 
     */
    public Optional>> preferredDataCenterRegion() {
        return Optional.ofNullable(this.preferredDataCenterRegion);
    }

    /**
     * Optional Preferences related to the reverse shipment logistics of the sku.
     * 
     */
    @Import(name="reverseTransportPreferences")
    private @Nullable Output reverseTransportPreferences;

    /**
     * @return Optional Preferences related to the reverse shipment logistics of the sku.
     * 
     */
    public Optional> reverseTransportPreferences() {
        return Optional.ofNullable(this.reverseTransportPreferences);
    }

    /**
     * Preferences related to the Access Tier of storage accounts.
     * 
     */
    @Import(name="storageAccountAccessTierPreferences")
    private @Nullable Output>> storageAccountAccessTierPreferences;

    /**
     * @return Preferences related to the Access Tier of storage accounts.
     * 
     */
    public Optional>>> storageAccountAccessTierPreferences() {
        return Optional.ofNullable(this.storageAccountAccessTierPreferences);
    }

    /**
     * Preferences related to the shipment logistics of the sku.
     * 
     */
    @Import(name="transportPreferences")
    private @Nullable Output transportPreferences;

    /**
     * @return Preferences related to the shipment logistics of the sku.
     * 
     */
    public Optional> transportPreferences() {
        return Optional.ofNullable(this.transportPreferences);
    }

    private PreferencesArgs() {}

    private PreferencesArgs(PreferencesArgs $) {
        this.encryptionPreferences = $.encryptionPreferences;
        this.preferredDataCenterRegion = $.preferredDataCenterRegion;
        this.reverseTransportPreferences = $.reverseTransportPreferences;
        this.storageAccountAccessTierPreferences = $.storageAccountAccessTierPreferences;
        this.transportPreferences = $.transportPreferences;
    }

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

    public static final class Builder {
        private PreferencesArgs $;

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

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

        /**
         * @param encryptionPreferences Preferences related to the Encryption.
         * 
         * @return builder
         * 
         */
        public Builder encryptionPreferences(@Nullable Output encryptionPreferences) {
            $.encryptionPreferences = encryptionPreferences;
            return this;
        }

        /**
         * @param encryptionPreferences Preferences related to the Encryption.
         * 
         * @return builder
         * 
         */
        public Builder encryptionPreferences(EncryptionPreferencesArgs encryptionPreferences) {
            return encryptionPreferences(Output.of(encryptionPreferences));
        }

        /**
         * @param preferredDataCenterRegion Preferred data center region.
         * 
         * @return builder
         * 
         */
        public Builder preferredDataCenterRegion(@Nullable Output> preferredDataCenterRegion) {
            $.preferredDataCenterRegion = preferredDataCenterRegion;
            return this;
        }

        /**
         * @param preferredDataCenterRegion Preferred data center region.
         * 
         * @return builder
         * 
         */
        public Builder preferredDataCenterRegion(List preferredDataCenterRegion) {
            return preferredDataCenterRegion(Output.of(preferredDataCenterRegion));
        }

        /**
         * @param preferredDataCenterRegion Preferred data center region.
         * 
         * @return builder
         * 
         */
        public Builder preferredDataCenterRegion(String... preferredDataCenterRegion) {
            return preferredDataCenterRegion(List.of(preferredDataCenterRegion));
        }

        /**
         * @param reverseTransportPreferences Optional Preferences related to the reverse shipment logistics of the sku.
         * 
         * @return builder
         * 
         */
        public Builder reverseTransportPreferences(@Nullable Output reverseTransportPreferences) {
            $.reverseTransportPreferences = reverseTransportPreferences;
            return this;
        }

        /**
         * @param reverseTransportPreferences Optional Preferences related to the reverse shipment logistics of the sku.
         * 
         * @return builder
         * 
         */
        public Builder reverseTransportPreferences(TransportPreferencesArgs reverseTransportPreferences) {
            return reverseTransportPreferences(Output.of(reverseTransportPreferences));
        }

        /**
         * @param storageAccountAccessTierPreferences Preferences related to the Access Tier of storage accounts.
         * 
         * @return builder
         * 
         */
        public Builder storageAccountAccessTierPreferences(@Nullable Output>> storageAccountAccessTierPreferences) {
            $.storageAccountAccessTierPreferences = storageAccountAccessTierPreferences;
            return this;
        }

        /**
         * @param storageAccountAccessTierPreferences Preferences related to the Access Tier of storage accounts.
         * 
         * @return builder
         * 
         */
        public Builder storageAccountAccessTierPreferences(List> storageAccountAccessTierPreferences) {
            return storageAccountAccessTierPreferences(Output.of(storageAccountAccessTierPreferences));
        }

        /**
         * @param storageAccountAccessTierPreferences Preferences related to the Access Tier of storage accounts.
         * 
         * @return builder
         * 
         */
        public Builder storageAccountAccessTierPreferences(Either... storageAccountAccessTierPreferences) {
            return storageAccountAccessTierPreferences(List.of(storageAccountAccessTierPreferences));
        }

        /**
         * @param transportPreferences Preferences related to the shipment logistics of the sku.
         * 
         * @return builder
         * 
         */
        public Builder transportPreferences(@Nullable Output transportPreferences) {
            $.transportPreferences = transportPreferences;
            return this;
        }

        /**
         * @param transportPreferences Preferences related to the shipment logistics of the sku.
         * 
         * @return builder
         * 
         */
        public Builder transportPreferences(TransportPreferencesArgs transportPreferences) {
            return transportPreferences(Output.of(transportPreferences));
        }

        public PreferencesArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy