Class ComputeSubnetworkConfig.Jsii$Proxy

    • Constructor Detail

      • Jsii$Proxy

        protected Jsii$Proxy​(software.amazon.jsii.JsiiObjectRef objRef)
        Constructor that initializes the object based on values retrieved from the JsiiObject.
        Parameters:
        objRef - Reference to the JSII managed object.
    • Method Detail

      • getIpCidrRange

        public final String getIpCidrRange()
        Description copied from interface: ComputeSubnetworkConfig
        The range of internal addresses that are owned by this subnetwork.

        Provide this property when you create the subnetwork. For example, 10.0.0.0/8 or 192.168.0.0/16. Ranges must be unique and non-overlapping within a network. Only IPv4 is supported. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#ip_cidr_range ComputeSubnetwork#ip_cidr_range}

        Specified by:
        getIpCidrRange in interface ComputeSubnetworkConfig
      • getName

        public final String getName()
        Description copied from interface: ComputeSubnetworkConfig
        The name of the resource, provided by the client when initially creating the resource.

        The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression '[a-z](%5B-a-z0-9%5D*%5Ba-z0-9%5D)?' which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#name ComputeSubnetwork#name}

        Specified by:
        getName in interface ComputeSubnetworkConfig
      • getNetwork

        public final String getNetwork()
        Description copied from interface: ComputeSubnetworkConfig
        The network this subnet belongs to. Only networks that are in the distributed mode can have subnetworks.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#network ComputeSubnetwork#network}

        Specified by:
        getNetwork in interface ComputeSubnetworkConfig
      • getDescription

        public final String getDescription()
        Description copied from interface: ComputeSubnetworkConfig
        An optional description of this resource.

        Provide this property when you create the resource. This field can be set only at resource creation time. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#description ComputeSubnetwork#description}

        Specified by:
        getDescription in interface ComputeSubnetworkConfig
      • getExternalIpv6Prefix

        public final String getExternalIpv6Prefix()
        Description copied from interface: ComputeSubnetworkConfig
        The range of external IPv6 addresses that are owned by this subnetwork.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#external_ipv6_prefix ComputeSubnetwork#external_ipv6_prefix}

        Specified by:
        getExternalIpv6Prefix in interface ComputeSubnetworkConfig
      • getId

        public final String getId()
        Description copied from interface: ComputeSubnetworkConfig
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#id ComputeSubnetwork#id}.

        Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.

        Specified by:
        getId in interface ComputeSubnetworkConfig
      • getIpv6AccessType

        public final String getIpv6AccessType()
        Description copied from interface: ComputeSubnetworkConfig
        The access type of IPv6 address this subnet holds.

        It's immutable and can only be specified during creation or the first time the subnet is updated into IPV4_IPV6 dual stack. If the ipv6_type is EXTERNAL then this subnet cannot enable direct path. Possible values: ["EXTERNAL", "INTERNAL"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#ipv6_access_type ComputeSubnetwork#ipv6_access_type}

        Specified by:
        getIpv6AccessType in interface ComputeSubnetworkConfig
      • getPrivateIpGoogleAccess

        public final Object getPrivateIpGoogleAccess()
        Description copied from interface: ComputeSubnetworkConfig
        When enabled, VMs in this subnetwork without external IP addresses can access Google APIs and services by using Private Google Access.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#private_ip_google_access ComputeSubnetwork#private_ip_google_access}

        Specified by:
        getPrivateIpGoogleAccess in interface ComputeSubnetworkConfig
      • getPrivateIpv6GoogleAccess

        public final String getPrivateIpv6GoogleAccess()
        Description copied from interface: ComputeSubnetworkConfig
        The private IPv6 google access type for the VMs in this subnet.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#private_ipv6_google_access ComputeSubnetwork#private_ipv6_google_access}

        Specified by:
        getPrivateIpv6GoogleAccess in interface ComputeSubnetworkConfig
      • getProject

        public final String getProject()
        Description copied from interface: ComputeSubnetworkConfig
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#project ComputeSubnetwork#project}.
        Specified by:
        getProject in interface ComputeSubnetworkConfig
      • getPurpose

        public final String getPurpose()
        Description copied from interface: ComputeSubnetworkConfig
        The purpose of the resource.

        This field can be either 'PRIVATE_RFC_1918', 'REGIONAL_MANAGED_PROXY', 'GLOBAL_MANAGED_PROXY', 'PRIVATE_SERVICE_CONNECT' or 'PRIVATE_NAT'([Beta](https://terraform.io/docs/providers/google/guides/provider_versions.html)). A subnet with purpose set to 'REGIONAL_MANAGED_PROXY' is a user-created subnetwork that is reserved for regional Envoy-based load balancers. A subnetwork in a given region with purpose set to 'GLOBAL_MANAGED_PROXY' is a proxy-only subnet and is shared between all the cross-regional Envoy-based load balancers. A subnetwork with purpose set to 'PRIVATE_SERVICE_CONNECT' reserves the subnet for hosting a Private Service Connect published service. A subnetwork with purpose set to 'PRIVATE_NAT' is used as source range for Private NAT gateways. Note that 'REGIONAL_MANAGED_PROXY' is the preferred setting for all regional Envoy load balancers. If unspecified, the purpose defaults to 'PRIVATE_RFC_1918'. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#purpose ComputeSubnetwork#purpose}

        Specified by:
        getPurpose in interface ComputeSubnetworkConfig
      • getRegion

        public final String getRegion()
        Description copied from interface: ComputeSubnetworkConfig
        The GCP region for this subnetwork.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#region ComputeSubnetwork#region}

        Specified by:
        getRegion in interface ComputeSubnetworkConfig
      • getRole

        public final String getRole()
        Description copied from interface: ComputeSubnetworkConfig
        The role of subnetwork.

        Currently, this field is only used when 'purpose' is 'REGIONAL_MANAGED_PROXY'. The value can be set to 'ACTIVE' or 'BACKUP'. An 'ACTIVE' subnetwork is one that is currently being used for Envoy-based load balancers in a region. A 'BACKUP' subnetwork is one that is ready to be promoted to 'ACTIVE' or is currently draining. Possible values: ["ACTIVE", "BACKUP"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#role ComputeSubnetwork#role}

        Specified by:
        getRole in interface ComputeSubnetworkConfig
      • getSecondaryIpRange

        public final Object getSecondaryIpRange()
        Description copied from interface: ComputeSubnetworkConfig
        An array of configurations for secondary IP ranges for VM instances contained in this subnetwork.

        The primary IP of such VM must belong to the primary ipCidrRange of the subnetwork. The alias IPs may belong to either primary or secondary ranges. **Note**: This field uses [attr-as-block mode](https://www.terraform.io/docs/configuration/attr-as-blocks.html) to avoid breaking users during the 0.12 upgrade. To explicitly send a list of zero objects, set 'send_secondary_ip_range_if_empty = true' Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#secondary_ip_range ComputeSubnetwork#secondary_ip_range}

        Specified by:
        getSecondaryIpRange in interface ComputeSubnetworkConfig
      • getSendSecondaryIpRangeIfEmpty

        public final Object getSendSecondaryIpRangeIfEmpty()
        Description copied from interface: ComputeSubnetworkConfig
        Controls the removal behavior of secondary_ip_range.

        When false, removing secondary_ip_range from config will not produce a diff as the provider will default to the API's value. When true, the provider will treat removing secondary_ip_range as sending an empty list of secondary IP ranges to the API. Defaults to false. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#send_secondary_ip_range_if_empty ComputeSubnetwork#send_secondary_ip_range_if_empty}

        Specified by:
        getSendSecondaryIpRangeIfEmpty in interface ComputeSubnetworkConfig
      • getStackType

        public final String getStackType()
        Description copied from interface: ComputeSubnetworkConfig
        The stack type for this subnet to identify whether the IPv6 feature is enabled or not.

        If not specified IPV4_ONLY will be used. Possible values: ["IPV4_ONLY", "IPV4_IPV6"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#stack_type ComputeSubnetwork#stack_type}

        Specified by:
        getStackType in interface ComputeSubnetworkConfig
      • getConnection

        public final Object getConnection()
        Specified by:
        getConnection in interface com.hashicorp.cdktf.TerraformMetaArguments
      • getCount

        public final Object getCount()
        Specified by:
        getCount in interface com.hashicorp.cdktf.TerraformMetaArguments
      • getDependsOn

        public final List<com.hashicorp.cdktf.ITerraformDependable> getDependsOn()
        Specified by:
        getDependsOn in interface com.hashicorp.cdktf.TerraformMetaArguments
      • getForEach

        public final com.hashicorp.cdktf.ITerraformIterator getForEach()
        Specified by:
        getForEach in interface com.hashicorp.cdktf.TerraformMetaArguments
      • getLifecycle

        public final com.hashicorp.cdktf.TerraformResourceLifecycle getLifecycle()
        Specified by:
        getLifecycle in interface com.hashicorp.cdktf.TerraformMetaArguments
      • getProvider

        public final com.hashicorp.cdktf.TerraformProvider getProvider()
        Specified by:
        getProvider in interface com.hashicorp.cdktf.TerraformMetaArguments
      • getProvisioners

        public final List<Object> getProvisioners()
        Specified by:
        getProvisioners in interface com.hashicorp.cdktf.TerraformMetaArguments
      • $jsii$toJson

        @Internal
        public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()
        Specified by:
        $jsii$toJson in interface software.amazon.jsii.JsiiSerializable
      • hashCode

        public final int hashCode()
        Overrides:
        hashCode in class Object