Class DnsPolicy.Builder

  • All Implemented Interfaces:
    software.amazon.jsii.Builder<DnsPolicy>
    Enclosing class:
    DnsPolicy

    @Stability(Stable)
    public static final class DnsPolicy.Builder
    extends Object
    implements software.amazon.jsii.Builder<DnsPolicy>
    A fluent builder for DnsPolicy.
    • Method Detail

      • create

        @Stability(Stable)
        public static DnsPolicy.Builder create​(software.constructs.Construct scope,
                                               String id)
        Parameters:
        scope - The scope in which to define this construct. This parameter is required.
        id - The scoped construct ID. This parameter is required.
        Returns:
        a new instance of DnsPolicy.Builder.
      • connection

        @Stability(Experimental)
        public DnsPolicy.Builder connection​(com.hashicorp.cdktf.SSHProvisionerConnection connection)
        Parameters:
        connection - This parameter is required.
        Returns:
        this
      • connection

        @Stability(Experimental)
        public DnsPolicy.Builder connection​(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
        Parameters:
        connection - This parameter is required.
        Returns:
        this
      • count

        @Stability(Experimental)
        public DnsPolicy.Builder count​(Number count)
        Parameters:
        count - This parameter is required.
        Returns:
        this
      • count

        @Stability(Experimental)
        public DnsPolicy.Builder count​(com.hashicorp.cdktf.TerraformCount count)
        Parameters:
        count - This parameter is required.
        Returns:
        this
      • dependsOn

        @Stability(Experimental)
        public DnsPolicy.Builder dependsOn​(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
        Parameters:
        dependsOn - This parameter is required.
        Returns:
        this
      • forEach

        @Stability(Experimental)
        public DnsPolicy.Builder forEach​(com.hashicorp.cdktf.ITerraformIterator forEach)
        Parameters:
        forEach - This parameter is required.
        Returns:
        this
      • lifecycle

        @Stability(Experimental)
        public DnsPolicy.Builder lifecycle​(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
        Parameters:
        lifecycle - This parameter is required.
        Returns:
        this
      • provider

        @Stability(Experimental)
        public DnsPolicy.Builder provider​(com.hashicorp.cdktf.TerraformProvider provider)
        Parameters:
        provider - This parameter is required.
        Returns:
        this
      • provisioners

        @Stability(Experimental)
        public DnsPolicy.Builder provisioners​(List<? extends Object> provisioners)
        Parameters:
        provisioners - This parameter is required.
        Returns:
        this
      • name

        @Stability(Stable)
        public DnsPolicy.Builder name​(String name)
        User assigned name for this policy.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/dns_policy#name DnsPolicy#name}

        Parameters:
        name - User assigned name for this policy. This parameter is required.
        Returns:
        this
      • alternativeNameServerConfig

        @Stability(Stable)
        public DnsPolicy.Builder alternativeNameServerConfig​(DnsPolicyAlternativeNameServerConfig alternativeNameServerConfig)
        alternative_name_server_config block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/dns_policy#alternative_name_server_config DnsPolicy#alternative_name_server_config}

        Parameters:
        alternativeNameServerConfig - alternative_name_server_config block. This parameter is required.
        Returns:
        this
      • description

        @Stability(Stable)
        public DnsPolicy.Builder description​(String description)
        A textual description field. Defaults to 'Managed by Terraform'.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/dns_policy#description DnsPolicy#description}

        Parameters:
        description - A textual description field. Defaults to 'Managed by Terraform'. This parameter is required.
        Returns:
        this
      • enableInboundForwarding

        @Stability(Stable)
        public DnsPolicy.Builder enableInboundForwarding​(Boolean enableInboundForwarding)
        Allows networks bound to this policy to receive DNS queries sent by VMs or applications over VPN connections.

        When enabled, a virtual IP address will be allocated from each of the sub-networks that are bound to this policy. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/dns_policy#enable_inbound_forwarding DnsPolicy#enable_inbound_forwarding}

        Parameters:
        enableInboundForwarding - Allows networks bound to this policy to receive DNS queries sent by VMs or applications over VPN connections. This parameter is required.
        Returns:
        this
      • enableInboundForwarding

        @Stability(Stable)
        public DnsPolicy.Builder enableInboundForwarding​(com.hashicorp.cdktf.IResolvable enableInboundForwarding)
        Allows networks bound to this policy to receive DNS queries sent by VMs or applications over VPN connections.

        When enabled, a virtual IP address will be allocated from each of the sub-networks that are bound to this policy. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/dns_policy#enable_inbound_forwarding DnsPolicy#enable_inbound_forwarding}

        Parameters:
        enableInboundForwarding - Allows networks bound to this policy to receive DNS queries sent by VMs or applications over VPN connections. This parameter is required.
        Returns:
        this
      • enableLogging

        @Stability(Stable)
        public DnsPolicy.Builder enableLogging​(Boolean enableLogging)
        Controls whether logging is enabled for the networks bound to this policy. Defaults to no logging if not set.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/dns_policy#enable_logging DnsPolicy#enable_logging}

        Parameters:
        enableLogging - Controls whether logging is enabled for the networks bound to this policy. Defaults to no logging if not set. This parameter is required.
        Returns:
        this
      • enableLogging

        @Stability(Stable)
        public DnsPolicy.Builder enableLogging​(com.hashicorp.cdktf.IResolvable enableLogging)
        Controls whether logging is enabled for the networks bound to this policy. Defaults to no logging if not set.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/dns_policy#enable_logging DnsPolicy#enable_logging}

        Parameters:
        enableLogging - Controls whether logging is enabled for the networks bound to this policy. Defaults to no logging if not set. This parameter is required.
        Returns:
        this
      • id

        @Stability(Stable)
        public DnsPolicy.Builder id​(String id)
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/dns_policy#id DnsPolicy#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.

        Parameters:
        id - Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/dns_policy#id DnsPolicy#id}. This parameter is required.
        Returns:
        this
      • networks

        @Stability(Stable)
        public DnsPolicy.Builder networks​(com.hashicorp.cdktf.IResolvable networks)
        networks block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/dns_policy#networks DnsPolicy#networks}

        Parameters:
        networks - networks block. This parameter is required.
        Returns:
        this
      • networks

        @Stability(Stable)
        public DnsPolicy.Builder networks​(List<? extends DnsPolicyNetworks> networks)
        networks block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/dns_policy#networks DnsPolicy#networks}

        Parameters:
        networks - networks block. This parameter is required.
        Returns:
        this
      • project

        @Stability(Stable)
        public DnsPolicy.Builder project​(String project)
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/dns_policy#project DnsPolicy#project}.

        Parameters:
        project - Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/dns_policy#project DnsPolicy#project}. This parameter is required.
        Returns:
        this
      • timeouts

        @Stability(Stable)
        public DnsPolicy.Builder timeouts​(DnsPolicyTimeouts timeouts)
        timeouts block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/dns_policy#timeouts DnsPolicy#timeouts}

        Parameters:
        timeouts - timeouts block. This parameter is required.
        Returns:
        this
      • build

        @Stability(Stable)
        public DnsPolicy build()
        Specified by:
        build in interface software.amazon.jsii.Builder<DnsPolicy>
        Returns:
        a newly built instance of DnsPolicy.