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

com.pulumi.azurenative.compute.DiskAccessAPrivateEndpointConnectionArgs 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.compute;

import com.pulumi.azurenative.compute.inputs.PrivateLinkServiceConnectionStateArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class DiskAccessAPrivateEndpointConnectionArgs extends com.pulumi.resources.ResourceArgs {

    public static final DiskAccessAPrivateEndpointConnectionArgs Empty = new DiskAccessAPrivateEndpointConnectionArgs();

    /**
     * The name of the disk access resource that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.
     * 
     */
    @Import(name="diskAccessName", required=true)
    private Output diskAccessName;

    /**
     * @return The name of the disk access resource that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.
     * 
     */
    public Output diskAccessName() {
        return this.diskAccessName;
    }

    /**
     * The name of the private endpoint connection.
     * 
     */
    @Import(name="privateEndpointConnectionName")
    private @Nullable Output privateEndpointConnectionName;

    /**
     * @return The name of the private endpoint connection.
     * 
     */
    public Optional> privateEndpointConnectionName() {
        return Optional.ofNullable(this.privateEndpointConnectionName);
    }

    /**
     * A collection of information about the state of the connection between DiskAccess and Virtual Network.
     * 
     */
    @Import(name="privateLinkServiceConnectionState", required=true)
    private Output privateLinkServiceConnectionState;

    /**
     * @return A collection of information about the state of the connection between DiskAccess and Virtual Network.
     * 
     */
    public Output privateLinkServiceConnectionState() {
        return this.privateLinkServiceConnectionState;
    }

    /**
     * The name of the resource group.
     * 
     */
    @Import(name="resourceGroupName", required=true)
    private Output resourceGroupName;

    /**
     * @return The name of the resource group.
     * 
     */
    public Output resourceGroupName() {
        return this.resourceGroupName;
    }

    private DiskAccessAPrivateEndpointConnectionArgs() {}

    private DiskAccessAPrivateEndpointConnectionArgs(DiskAccessAPrivateEndpointConnectionArgs $) {
        this.diskAccessName = $.diskAccessName;
        this.privateEndpointConnectionName = $.privateEndpointConnectionName;
        this.privateLinkServiceConnectionState = $.privateLinkServiceConnectionState;
        this.resourceGroupName = $.resourceGroupName;
    }

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

    public static final class Builder {
        private DiskAccessAPrivateEndpointConnectionArgs $;

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

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

        /**
         * @param diskAccessName The name of the disk access resource that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.
         * 
         * @return builder
         * 
         */
        public Builder diskAccessName(Output diskAccessName) {
            $.diskAccessName = diskAccessName;
            return this;
        }

        /**
         * @param diskAccessName The name of the disk access resource that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.
         * 
         * @return builder
         * 
         */
        public Builder diskAccessName(String diskAccessName) {
            return diskAccessName(Output.of(diskAccessName));
        }

        /**
         * @param privateEndpointConnectionName The name of the private endpoint connection.
         * 
         * @return builder
         * 
         */
        public Builder privateEndpointConnectionName(@Nullable Output privateEndpointConnectionName) {
            $.privateEndpointConnectionName = privateEndpointConnectionName;
            return this;
        }

        /**
         * @param privateEndpointConnectionName The name of the private endpoint connection.
         * 
         * @return builder
         * 
         */
        public Builder privateEndpointConnectionName(String privateEndpointConnectionName) {
            return privateEndpointConnectionName(Output.of(privateEndpointConnectionName));
        }

        /**
         * @param privateLinkServiceConnectionState A collection of information about the state of the connection between DiskAccess and Virtual Network.
         * 
         * @return builder
         * 
         */
        public Builder privateLinkServiceConnectionState(Output privateLinkServiceConnectionState) {
            $.privateLinkServiceConnectionState = privateLinkServiceConnectionState;
            return this;
        }

        /**
         * @param privateLinkServiceConnectionState A collection of information about the state of the connection between DiskAccess and Virtual Network.
         * 
         * @return builder
         * 
         */
        public Builder privateLinkServiceConnectionState(PrivateLinkServiceConnectionStateArgs privateLinkServiceConnectionState) {
            return privateLinkServiceConnectionState(Output.of(privateLinkServiceConnectionState));
        }

        /**
         * @param resourceGroupName The name of the resource group.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(Output resourceGroupName) {
            $.resourceGroupName = resourceGroupName;
            return this;
        }

        /**
         * @param resourceGroupName The name of the resource group.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(String resourceGroupName) {
            return resourceGroupName(Output.of(resourceGroupName));
        }

        public DiskAccessAPrivateEndpointConnectionArgs build() {
            if ($.diskAccessName == null) {
                throw new MissingRequiredPropertyException("DiskAccessAPrivateEndpointConnectionArgs", "diskAccessName");
            }
            if ($.privateLinkServiceConnectionState == null) {
                throw new MissingRequiredPropertyException("DiskAccessAPrivateEndpointConnectionArgs", "privateLinkServiceConnectionState");
            }
            if ($.resourceGroupName == null) {
                throw new MissingRequiredPropertyException("DiskAccessAPrivateEndpointConnectionArgs", "resourceGroupName");
            }
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy