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

com.pulumi.azurenative.avs.outputs.GetPrivateCloudResult 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.outputs;

import com.pulumi.azurenative.avs.outputs.AvailabilityPropertiesResponse;
import com.pulumi.azurenative.avs.outputs.CircuitResponse;
import com.pulumi.azurenative.avs.outputs.EncryptionResponse;
import com.pulumi.azurenative.avs.outputs.EndpointsResponse;
import com.pulumi.azurenative.avs.outputs.IdentitySourceResponse;
import com.pulumi.azurenative.avs.outputs.ManagementClusterResponse;
import com.pulumi.azurenative.avs.outputs.PrivateCloudIdentityResponse;
import com.pulumi.azurenative.avs.outputs.SkuResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class GetPrivateCloudResult {
    /**
     * @return Properties describing how the cloud is distributed across availability zones
     * 
     */
    private @Nullable AvailabilityPropertiesResponse availability;
    /**
     * @return An ExpressRoute Circuit
     * 
     */
    private @Nullable CircuitResponse circuit;
    /**
     * @return Customer managed key encryption, can be enabled or disabled
     * 
     */
    private @Nullable EncryptionResponse encryption;
    /**
     * @return The endpoints
     * 
     */
    private EndpointsResponse endpoints;
    /**
     * @return Array of cloud link IDs from other clouds that connect to this one
     * 
     */
    private List externalCloudLinks;
    /**
     * @return Resource ID.
     * 
     */
    private String id;
    /**
     * @return The identity of the private cloud, if configured.
     * 
     */
    private @Nullable PrivateCloudIdentityResponse identity;
    /**
     * @return vCenter Single Sign On Identity Sources
     * 
     */
    private @Nullable List identitySources;
    /**
     * @return Connectivity to internet is enabled or disabled
     * 
     */
    private @Nullable String internet;
    /**
     * @return Resource location
     * 
     */
    private String location;
    /**
     * @return The default cluster used for management
     * 
     */
    private ManagementClusterResponse managementCluster;
    /**
     * @return Network used to access vCenter Server and NSX-T Manager
     * 
     */
    private String managementNetwork;
    /**
     * @return Resource name.
     * 
     */
    private String name;
    /**
     * @return The block of addresses should be unique across VNet in your subscription as well as on-premise. Make sure the CIDR format is conformed to (A.B.C.D/X) where A,B,C,D are between 0 and 255, and X is between 0 and 22
     * 
     */
    private String networkBlock;
    /**
     * @return Flag to indicate whether the private cloud has the quota for provisioned NSX Public IP count raised from 64 to 1024
     * 
     */
    private String nsxPublicIpQuotaRaised;
    /**
     * @return Thumbprint of the NSX-T Manager SSL certificate
     * 
     */
    private String nsxtCertificateThumbprint;
    /**
     * @return Optionally, set the NSX-T Manager password when the private cloud is created
     * 
     */
    private @Nullable String nsxtPassword;
    /**
     * @return Used for virtual machine cold migration, cloning, and snapshot migration
     * 
     */
    private String provisioningNetwork;
    /**
     * @return The provisioning state
     * 
     */
    private String provisioningState;
    /**
     * @return A secondary expressRoute circuit from a separate AZ. Only present in a stretched private cloud
     * 
     */
    private @Nullable CircuitResponse secondaryCircuit;
    /**
     * @return The private cloud SKU
     * 
     */
    private SkuResponse sku;
    /**
     * @return Resource tags
     * 
     */
    private @Nullable Map tags;
    /**
     * @return Resource type.
     * 
     */
    private String type;
    /**
     * @return Thumbprint of the vCenter Server SSL certificate
     * 
     */
    private String vcenterCertificateThumbprint;
    /**
     * @return Optionally, set the vCenter admin password when the private cloud is created
     * 
     */
    private @Nullable String vcenterPassword;
    /**
     * @return Used for live migration of virtual machines
     * 
     */
    private String vmotionNetwork;

    private GetPrivateCloudResult() {}
    /**
     * @return Properties describing how the cloud is distributed across availability zones
     * 
     */
    public Optional availability() {
        return Optional.ofNullable(this.availability);
    }
    /**
     * @return An ExpressRoute Circuit
     * 
     */
    public Optional circuit() {
        return Optional.ofNullable(this.circuit);
    }
    /**
     * @return Customer managed key encryption, can be enabled or disabled
     * 
     */
    public Optional encryption() {
        return Optional.ofNullable(this.encryption);
    }
    /**
     * @return The endpoints
     * 
     */
    public EndpointsResponse endpoints() {
        return this.endpoints;
    }
    /**
     * @return Array of cloud link IDs from other clouds that connect to this one
     * 
     */
    public List externalCloudLinks() {
        return this.externalCloudLinks;
    }
    /**
     * @return Resource ID.
     * 
     */
    public String id() {
        return this.id;
    }
    /**
     * @return The identity of the private cloud, if configured.
     * 
     */
    public Optional identity() {
        return Optional.ofNullable(this.identity);
    }
    /**
     * @return vCenter Single Sign On Identity Sources
     * 
     */
    public List identitySources() {
        return this.identitySources == null ? List.of() : this.identitySources;
    }
    /**
     * @return Connectivity to internet is enabled or disabled
     * 
     */
    public Optional internet() {
        return Optional.ofNullable(this.internet);
    }
    /**
     * @return Resource location
     * 
     */
    public String location() {
        return this.location;
    }
    /**
     * @return The default cluster used for management
     * 
     */
    public ManagementClusterResponse managementCluster() {
        return this.managementCluster;
    }
    /**
     * @return Network used to access vCenter Server and NSX-T Manager
     * 
     */
    public String managementNetwork() {
        return this.managementNetwork;
    }
    /**
     * @return Resource name.
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @return The block of addresses should be unique across VNet in your subscription as well as on-premise. Make sure the CIDR format is conformed to (A.B.C.D/X) where A,B,C,D are between 0 and 255, and X is between 0 and 22
     * 
     */
    public String networkBlock() {
        return this.networkBlock;
    }
    /**
     * @return Flag to indicate whether the private cloud has the quota for provisioned NSX Public IP count raised from 64 to 1024
     * 
     */
    public String nsxPublicIpQuotaRaised() {
        return this.nsxPublicIpQuotaRaised;
    }
    /**
     * @return Thumbprint of the NSX-T Manager SSL certificate
     * 
     */
    public String nsxtCertificateThumbprint() {
        return this.nsxtCertificateThumbprint;
    }
    /**
     * @return Optionally, set the NSX-T Manager password when the private cloud is created
     * 
     */
    public Optional nsxtPassword() {
        return Optional.ofNullable(this.nsxtPassword);
    }
    /**
     * @return Used for virtual machine cold migration, cloning, and snapshot migration
     * 
     */
    public String provisioningNetwork() {
        return this.provisioningNetwork;
    }
    /**
     * @return The provisioning state
     * 
     */
    public String provisioningState() {
        return this.provisioningState;
    }
    /**
     * @return A secondary expressRoute circuit from a separate AZ. Only present in a stretched private cloud
     * 
     */
    public Optional secondaryCircuit() {
        return Optional.ofNullable(this.secondaryCircuit);
    }
    /**
     * @return The private cloud SKU
     * 
     */
    public SkuResponse sku() {
        return this.sku;
    }
    /**
     * @return Resource tags
     * 
     */
    public Map tags() {
        return this.tags == null ? Map.of() : this.tags;
    }
    /**
     * @return Resource type.
     * 
     */
    public String type() {
        return this.type;
    }
    /**
     * @return Thumbprint of the vCenter Server SSL certificate
     * 
     */
    public String vcenterCertificateThumbprint() {
        return this.vcenterCertificateThumbprint;
    }
    /**
     * @return Optionally, set the vCenter admin password when the private cloud is created
     * 
     */
    public Optional vcenterPassword() {
        return Optional.ofNullable(this.vcenterPassword);
    }
    /**
     * @return Used for live migration of virtual machines
     * 
     */
    public String vmotionNetwork() {
        return this.vmotionNetwork;
    }

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

    public static Builder builder(GetPrivateCloudResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable AvailabilityPropertiesResponse availability;
        private @Nullable CircuitResponse circuit;
        private @Nullable EncryptionResponse encryption;
        private EndpointsResponse endpoints;
        private List externalCloudLinks;
        private String id;
        private @Nullable PrivateCloudIdentityResponse identity;
        private @Nullable List identitySources;
        private @Nullable String internet;
        private String location;
        private ManagementClusterResponse managementCluster;
        private String managementNetwork;
        private String name;
        private String networkBlock;
        private String nsxPublicIpQuotaRaised;
        private String nsxtCertificateThumbprint;
        private @Nullable String nsxtPassword;
        private String provisioningNetwork;
        private String provisioningState;
        private @Nullable CircuitResponse secondaryCircuit;
        private SkuResponse sku;
        private @Nullable Map tags;
        private String type;
        private String vcenterCertificateThumbprint;
        private @Nullable String vcenterPassword;
        private String vmotionNetwork;
        public Builder() {}
        public Builder(GetPrivateCloudResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.availability = defaults.availability;
    	      this.circuit = defaults.circuit;
    	      this.encryption = defaults.encryption;
    	      this.endpoints = defaults.endpoints;
    	      this.externalCloudLinks = defaults.externalCloudLinks;
    	      this.id = defaults.id;
    	      this.identity = defaults.identity;
    	      this.identitySources = defaults.identitySources;
    	      this.internet = defaults.internet;
    	      this.location = defaults.location;
    	      this.managementCluster = defaults.managementCluster;
    	      this.managementNetwork = defaults.managementNetwork;
    	      this.name = defaults.name;
    	      this.networkBlock = defaults.networkBlock;
    	      this.nsxPublicIpQuotaRaised = defaults.nsxPublicIpQuotaRaised;
    	      this.nsxtCertificateThumbprint = defaults.nsxtCertificateThumbprint;
    	      this.nsxtPassword = defaults.nsxtPassword;
    	      this.provisioningNetwork = defaults.provisioningNetwork;
    	      this.provisioningState = defaults.provisioningState;
    	      this.secondaryCircuit = defaults.secondaryCircuit;
    	      this.sku = defaults.sku;
    	      this.tags = defaults.tags;
    	      this.type = defaults.type;
    	      this.vcenterCertificateThumbprint = defaults.vcenterCertificateThumbprint;
    	      this.vcenterPassword = defaults.vcenterPassword;
    	      this.vmotionNetwork = defaults.vmotionNetwork;
        }

        @CustomType.Setter
        public Builder availability(@Nullable AvailabilityPropertiesResponse availability) {

            this.availability = availability;
            return this;
        }
        @CustomType.Setter
        public Builder circuit(@Nullable CircuitResponse circuit) {

            this.circuit = circuit;
            return this;
        }
        @CustomType.Setter
        public Builder encryption(@Nullable EncryptionResponse encryption) {

            this.encryption = encryption;
            return this;
        }
        @CustomType.Setter
        public Builder endpoints(EndpointsResponse endpoints) {
            if (endpoints == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "endpoints");
            }
            this.endpoints = endpoints;
            return this;
        }
        @CustomType.Setter
        public Builder externalCloudLinks(List externalCloudLinks) {
            if (externalCloudLinks == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "externalCloudLinks");
            }
            this.externalCloudLinks = externalCloudLinks;
            return this;
        }
        public Builder externalCloudLinks(String... externalCloudLinks) {
            return externalCloudLinks(List.of(externalCloudLinks));
        }
        @CustomType.Setter
        public Builder id(String id) {
            if (id == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "id");
            }
            this.id = id;
            return this;
        }
        @CustomType.Setter
        public Builder identity(@Nullable PrivateCloudIdentityResponse identity) {

            this.identity = identity;
            return this;
        }
        @CustomType.Setter
        public Builder identitySources(@Nullable List identitySources) {

            this.identitySources = identitySources;
            return this;
        }
        public Builder identitySources(IdentitySourceResponse... identitySources) {
            return identitySources(List.of(identitySources));
        }
        @CustomType.Setter
        public Builder internet(@Nullable String internet) {

            this.internet = internet;
            return this;
        }
        @CustomType.Setter
        public Builder location(String location) {
            if (location == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "location");
            }
            this.location = location;
            return this;
        }
        @CustomType.Setter
        public Builder managementCluster(ManagementClusterResponse managementCluster) {
            if (managementCluster == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "managementCluster");
            }
            this.managementCluster = managementCluster;
            return this;
        }
        @CustomType.Setter
        public Builder managementNetwork(String managementNetwork) {
            if (managementNetwork == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "managementNetwork");
            }
            this.managementNetwork = managementNetwork;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder networkBlock(String networkBlock) {
            if (networkBlock == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "networkBlock");
            }
            this.networkBlock = networkBlock;
            return this;
        }
        @CustomType.Setter
        public Builder nsxPublicIpQuotaRaised(String nsxPublicIpQuotaRaised) {
            if (nsxPublicIpQuotaRaised == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "nsxPublicIpQuotaRaised");
            }
            this.nsxPublicIpQuotaRaised = nsxPublicIpQuotaRaised;
            return this;
        }
        @CustomType.Setter
        public Builder nsxtCertificateThumbprint(String nsxtCertificateThumbprint) {
            if (nsxtCertificateThumbprint == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "nsxtCertificateThumbprint");
            }
            this.nsxtCertificateThumbprint = nsxtCertificateThumbprint;
            return this;
        }
        @CustomType.Setter
        public Builder nsxtPassword(@Nullable String nsxtPassword) {

            this.nsxtPassword = nsxtPassword;
            return this;
        }
        @CustomType.Setter
        public Builder provisioningNetwork(String provisioningNetwork) {
            if (provisioningNetwork == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "provisioningNetwork");
            }
            this.provisioningNetwork = provisioningNetwork;
            return this;
        }
        @CustomType.Setter
        public Builder provisioningState(String provisioningState) {
            if (provisioningState == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "provisioningState");
            }
            this.provisioningState = provisioningState;
            return this;
        }
        @CustomType.Setter
        public Builder secondaryCircuit(@Nullable CircuitResponse secondaryCircuit) {

            this.secondaryCircuit = secondaryCircuit;
            return this;
        }
        @CustomType.Setter
        public Builder sku(SkuResponse sku) {
            if (sku == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "sku");
            }
            this.sku = sku;
            return this;
        }
        @CustomType.Setter
        public Builder tags(@Nullable Map tags) {

            this.tags = tags;
            return this;
        }
        @CustomType.Setter
        public Builder type(String type) {
            if (type == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "type");
            }
            this.type = type;
            return this;
        }
        @CustomType.Setter
        public Builder vcenterCertificateThumbprint(String vcenterCertificateThumbprint) {
            if (vcenterCertificateThumbprint == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "vcenterCertificateThumbprint");
            }
            this.vcenterCertificateThumbprint = vcenterCertificateThumbprint;
            return this;
        }
        @CustomType.Setter
        public Builder vcenterPassword(@Nullable String vcenterPassword) {

            this.vcenterPassword = vcenterPassword;
            return this;
        }
        @CustomType.Setter
        public Builder vmotionNetwork(String vmotionNetwork) {
            if (vmotionNetwork == null) {
              throw new MissingRequiredPropertyException("GetPrivateCloudResult", "vmotionNetwork");
            }
            this.vmotionNetwork = vmotionNetwork;
            return this;
        }
        public GetPrivateCloudResult build() {
            final var _resultValue = new GetPrivateCloudResult();
            _resultValue.availability = availability;
            _resultValue.circuit = circuit;
            _resultValue.encryption = encryption;
            _resultValue.endpoints = endpoints;
            _resultValue.externalCloudLinks = externalCloudLinks;
            _resultValue.id = id;
            _resultValue.identity = identity;
            _resultValue.identitySources = identitySources;
            _resultValue.internet = internet;
            _resultValue.location = location;
            _resultValue.managementCluster = managementCluster;
            _resultValue.managementNetwork = managementNetwork;
            _resultValue.name = name;
            _resultValue.networkBlock = networkBlock;
            _resultValue.nsxPublicIpQuotaRaised = nsxPublicIpQuotaRaised;
            _resultValue.nsxtCertificateThumbprint = nsxtCertificateThumbprint;
            _resultValue.nsxtPassword = nsxtPassword;
            _resultValue.provisioningNetwork = provisioningNetwork;
            _resultValue.provisioningState = provisioningState;
            _resultValue.secondaryCircuit = secondaryCircuit;
            _resultValue.sku = sku;
            _resultValue.tags = tags;
            _resultValue.type = type;
            _resultValue.vcenterCertificateThumbprint = vcenterCertificateThumbprint;
            _resultValue.vcenterPassword = vcenterPassword;
            _resultValue.vmotionNetwork = vmotionNetwork;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy