Class ComputeRouterInterfaceConfig.Builder

    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • name

        @Stability(Stable)
        public ComputeRouterInterfaceConfig.Builder name​(String name)
        Parameters:
        name - A unique name for the interface, required by GCE. Changing this forces a new interface to be created. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_interface#name ComputeRouterInterface#name}
        Returns:
        this
      • router

        @Stability(Stable)
        public ComputeRouterInterfaceConfig.Builder router​(String router)
        Parameters:
        router - The name of the router this interface will be attached to. This parameter is required. Changing this forces a new interface to be created. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_interface#router ComputeRouterInterface#router}
        Returns:
        this
      • id

        @Stability(Stable)
        public ComputeRouterInterfaceConfig.Builder id​(String id)
        Parameters:
        id - Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_interface#id ComputeRouterInterface#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.
        Returns:
        this
      • interconnectAttachment

        @Stability(Stable)
        public ComputeRouterInterfaceConfig.Builder interconnectAttachment​(String interconnectAttachment)
        Parameters:
        interconnectAttachment - The name or resource link to the VLAN interconnect for this interface. Changing this forces a new interface to be created. Only one of interconnect_attachment, subnetwork or vpn_tunnel can be specified. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_interface#interconnect_attachment ComputeRouterInterface#interconnect_attachment}
        Returns:
        this
      • ipRange

        @Stability(Stable)
        public ComputeRouterInterfaceConfig.Builder ipRange​(String ipRange)
        Parameters:
        ipRange - The IP address and range of the interface. The IP range must be in the RFC3927 link-local IP space. Changing this forces a new interface to be created. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_interface#ip_range ComputeRouterInterface#ip_range}
        Returns:
        this
      • privateIpAddress

        @Stability(Stable)
        public ComputeRouterInterfaceConfig.Builder privateIpAddress​(String privateIpAddress)
        Parameters:
        privateIpAddress - The regional private internal IP address that is used to establish BGP sessions to a VM instance acting as a third-party Router Appliance. Changing this forces a new interface to be created. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_interface#private_ip_address ComputeRouterInterface#private_ip_address}
        Returns:
        this
      • project

        @Stability(Stable)
        public ComputeRouterInterfaceConfig.Builder project​(String project)
        Parameters:
        project - The ID of the project in which this interface's router belongs. If it is not provided, the provider project is used. Changing this forces a new interface to be created. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_interface#project ComputeRouterInterface#project}
        Returns:
        this
      • redundantInterface

        @Stability(Stable)
        public ComputeRouterInterfaceConfig.Builder redundantInterface​(String redundantInterface)
        Parameters:
        redundantInterface - The name of the interface that is redundant to this interface. Changing this forces a new interface to be created. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_interface#redundant_interface ComputeRouterInterface#redundant_interface}
        Returns:
        this
      • region

        @Stability(Stable)
        public ComputeRouterInterfaceConfig.Builder region​(String region)
        Parameters:
        region - The region this interface's router sits in. If not specified, the project region will be used. Changing this forces a new interface to be created. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_interface#region ComputeRouterInterface#region}
        Returns:
        this
      • subnetwork

        @Stability(Stable)
        public ComputeRouterInterfaceConfig.Builder subnetwork​(String subnetwork)
        Parameters:
        subnetwork - The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router. Changing this forces a new interface to be created. Only one of subnetwork, interconnect_attachment or vpn_tunnel can be specified. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_interface#subnetwork ComputeRouterInterface#subnetwork}
        Returns:
        this
      • vpnTunnel

        @Stability(Stable)
        public ComputeRouterInterfaceConfig.Builder vpnTunnel​(String vpnTunnel)
        Parameters:
        vpnTunnel - The name or resource link to the VPN tunnel this interface will be linked to. Changing this forces a new interface to be created. Only one of vpn_tunnel, interconnect_attachment or subnetwork can be specified. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_interface#vpn_tunnel ComputeRouterInterface#vpn_tunnel}
        Returns:
        this
      • connection

        @Stability(Experimental)
        public ComputeRouterInterfaceConfig.Builder connection​(com.hashicorp.cdktf.SSHProvisionerConnection connection)
        Sets the value of TerraformMetaArguments.getConnection()
        Parameters:
        connection - the value to be set.
        Returns:
        this
      • connection

        @Stability(Experimental)
        public ComputeRouterInterfaceConfig.Builder connection​(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
        Sets the value of TerraformMetaArguments.getConnection()
        Parameters:
        connection - the value to be set.
        Returns:
        this
      • count

        @Stability(Experimental)
        public ComputeRouterInterfaceConfig.Builder count​(com.hashicorp.cdktf.TerraformCount count)
        Sets the value of TerraformMetaArguments.getCount()
        Parameters:
        count - the value to be set.
        Returns:
        this
      • dependsOn

        @Stability(Experimental)
        public ComputeRouterInterfaceConfig.Builder dependsOn​(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
        Sets the value of TerraformMetaArguments.getDependsOn()
        Parameters:
        dependsOn - the value to be set.
        Returns:
        this
      • forEach

        @Stability(Experimental)
        public ComputeRouterInterfaceConfig.Builder forEach​(com.hashicorp.cdktf.ITerraformIterator forEach)
        Sets the value of TerraformMetaArguments.getForEach()
        Parameters:
        forEach - the value to be set.
        Returns:
        this
      • lifecycle

        @Stability(Experimental)
        public ComputeRouterInterfaceConfig.Builder lifecycle​(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
        Sets the value of TerraformMetaArguments.getLifecycle()
        Parameters:
        lifecycle - the value to be set.
        Returns:
        this
      • provider

        @Stability(Experimental)
        public ComputeRouterInterfaceConfig.Builder provider​(com.hashicorp.cdktf.TerraformProvider provider)
        Sets the value of TerraformMetaArguments.getProvider()
        Parameters:
        provider - the value to be set.
        Returns:
        this
      • provisioners

        @Stability(Experimental)
        public ComputeRouterInterfaceConfig.Builder provisioners​(List<? extends Object> provisioners)
        Sets the value of TerraformMetaArguments.getProvisioners()
        Parameters:
        provisioners - the value to be set.
        Returns:
        this