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

com.pulumi.azurenative.avs.inputs.PrivateCloudIdentityArgs Maven / Gradle / Ivy

// *** 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.avs.inputs;

import com.pulumi.azurenative.avs.enums.ResourceIdentityType;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Identity for the virtual machine.
 * 
 */
public final class PrivateCloudIdentityArgs extends com.pulumi.resources.ResourceArgs {

    public static final PrivateCloudIdentityArgs Empty = new PrivateCloudIdentityArgs();

    /**
     * The type of identity used for the private cloud. The type 'SystemAssigned' refers to an implicitly created identity. The type 'None' will remove any identities from the Private Cloud.
     * 
     */
    @Import(name="type")
    private @Nullable Output> type;

    /**
     * @return The type of identity used for the private cloud. The type 'SystemAssigned' refers to an implicitly created identity. The type 'None' will remove any identities from the Private Cloud.
     * 
     */
    public Optional>> type() {
        return Optional.ofNullable(this.type);
    }

    private PrivateCloudIdentityArgs() {}

    private PrivateCloudIdentityArgs(PrivateCloudIdentityArgs $) {
        this.type = $.type;
    }

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

    public static final class Builder {
        private PrivateCloudIdentityArgs $;

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

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

        /**
         * @param type The type of identity used for the private cloud. The type 'SystemAssigned' refers to an implicitly created identity. The type 'None' will remove any identities from the Private Cloud.
         * 
         * @return builder
         * 
         */
        public Builder type(@Nullable Output> type) {
            $.type = type;
            return this;
        }

        /**
         * @param type The type of identity used for the private cloud. The type 'SystemAssigned' refers to an implicitly created identity. The type 'None' will remove any identities from the Private Cloud.
         * 
         * @return builder
         * 
         */
        public Builder type(Either type) {
            return type(Output.of(type));
        }

        /**
         * @param type The type of identity used for the private cloud. The type 'SystemAssigned' refers to an implicitly created identity. The type 'None' will remove any identities from the Private Cloud.
         * 
         * @return builder
         * 
         */
        public Builder type(String type) {
            return type(Either.ofLeft(type));
        }

        /**
         * @param type The type of identity used for the private cloud. The type 'SystemAssigned' refers to an implicitly created identity. The type 'None' will remove any identities from the Private Cloud.
         * 
         * @return builder
         * 
         */
        public Builder type(ResourceIdentityType type) {
            return type(Either.ofRight(type));
        }

        public PrivateCloudIdentityArgs build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy