Class ComputeRouterInterface.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.compute_router_interface.ComputeRouterInterface.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<ComputeRouterInterface>
- Enclosing class:
- ComputeRouterInterface
@Stability(Stable) public static final class ComputeRouterInterface.Builder extends Object implements software.amazon.jsii.Builder<ComputeRouterInterface>
A fluent builder forComputeRouterInterface.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ComputeRouterInterfacebuild()ComputeRouterInterface.Builderconnection(com.hashicorp.cdktf.SSHProvisionerConnection connection)ComputeRouterInterface.Builderconnection(com.hashicorp.cdktf.WinrmProvisionerConnection connection)ComputeRouterInterface.Buildercount(com.hashicorp.cdktf.TerraformCount count)ComputeRouterInterface.Buildercount(Number count)static ComputeRouterInterface.Buildercreate(software.constructs.Construct scope, String id)ComputeRouterInterface.BuilderdependsOn(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)ComputeRouterInterface.BuilderforEach(com.hashicorp.cdktf.ITerraformIterator forEach)ComputeRouterInterface.Builderid(String id)Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_interface#id ComputeRouterInterface#id}.ComputeRouterInterface.BuilderinterconnectAttachment(String interconnectAttachment)The name or resource link to the VLAN interconnect for this interface.ComputeRouterInterface.BuilderipRange(String ipRange)The IP address and range of the interface.ComputeRouterInterface.BuilderipVersion(String ipVersion)IP version of this interface.ComputeRouterInterface.Builderlifecycle(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)ComputeRouterInterface.Buildername(String name)A unique name for the interface, required by GCE.ComputeRouterInterface.BuilderprivateIpAddress(String 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.ComputeRouterInterface.Builderproject(String project)The ID of the project in which this interface's router belongs.ComputeRouterInterface.Builderprovider(com.hashicorp.cdktf.TerraformProvider provider)ComputeRouterInterface.Builderprovisioners(List<? extends Object> provisioners)ComputeRouterInterface.BuilderredundantInterface(String redundantInterface)The name of the interface that is redundant to this interface.ComputeRouterInterface.Builderregion(String region)The region this interface's router sits in.ComputeRouterInterface.Builderrouter(String router)The name of the router this interface will be attached to.ComputeRouterInterface.Buildersubnetwork(String subnetwork)The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router.ComputeRouterInterface.Buildertimeouts(ComputeRouterInterfaceTimeouts timeouts)timeouts block.ComputeRouterInterface.BuildervpnTunnel(String vpnTunnel)The name or resource link to the VPN tunnel this interface will be linked to.
-
-
-
Method Detail
-
create
@Stability(Stable) public static ComputeRouterInterface.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
ComputeRouterInterface.Builder.
-
connection
@Stability(Experimental) public ComputeRouterInterface.Builder connection(com.hashicorp.cdktf.SSHProvisionerConnection connection)
- Parameters:
connection- This parameter is required.- Returns:
this
-
connection
@Stability(Experimental) public ComputeRouterInterface.Builder connection(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
- Parameters:
connection- This parameter is required.- Returns:
this
-
count
@Stability(Experimental) public ComputeRouterInterface.Builder count(Number count)
- Parameters:
count- This parameter is required.- Returns:
this
-
count
@Stability(Experimental) public ComputeRouterInterface.Builder count(com.hashicorp.cdktf.TerraformCount count)
- Parameters:
count- This parameter is required.- Returns:
this
-
dependsOn
@Stability(Experimental) public ComputeRouterInterface.Builder dependsOn(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
- Parameters:
dependsOn- This parameter is required.- Returns:
this
-
forEach
@Stability(Experimental) public ComputeRouterInterface.Builder forEach(com.hashicorp.cdktf.ITerraformIterator forEach)
- Parameters:
forEach- This parameter is required.- Returns:
this
-
lifecycle
@Stability(Experimental) public ComputeRouterInterface.Builder lifecycle(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
- Parameters:
lifecycle- This parameter is required.- Returns:
this
-
provider
@Stability(Experimental) public ComputeRouterInterface.Builder provider(com.hashicorp.cdktf.TerraformProvider provider)
- Parameters:
provider- This parameter is required.- Returns:
this
-
provisioners
@Stability(Experimental) public ComputeRouterInterface.Builder provisioners(List<? extends Object> provisioners)
- Parameters:
provisioners- This parameter is required.- Returns:
this
-
name
@Stability(Stable) public ComputeRouterInterface.Builder name(String name)
A unique name for the interface, required by GCE. 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#name ComputeRouterInterface#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.- Returns:
this
-
router
@Stability(Stable) public ComputeRouterInterface.Builder router(String router)
The name of the router this interface will be attached to.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}
- Parameters:
router- The name of the router this interface will be attached to. This parameter is required.- Returns:
this
-
id
@Stability(Stable) public ComputeRouterInterface.Builder id(String 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.
- 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}. This parameter is required.- Returns:
this
-
interconnectAttachment
@Stability(Stable) public ComputeRouterInterface.Builder interconnectAttachment(String 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}
- Parameters:
interconnectAttachment- The name or resource link to the VLAN interconnect for this interface. This parameter is required.- Returns:
this
-
ipRange
@Stability(Stable) public ComputeRouterInterface.Builder ipRange(String 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}
- Parameters:
ipRange- The IP address and range of the interface. This parameter is required.- Returns:
this
-
ipVersion
@Stability(Stable) public ComputeRouterInterface.Builder ipVersion(String ipVersion)
IP version of this interface.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_interface#ip_version ComputeRouterInterface#ip_version}
- Parameters:
ipVersion- IP version of this interface. This parameter is required.- Returns:
this
-
privateIpAddress
@Stability(Stable) public ComputeRouterInterface.Builder privateIpAddress(String 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}
- 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. This parameter is required.- Returns:
this
-
project
@Stability(Stable) public ComputeRouterInterface.Builder project(String 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}
- Parameters:
project- The ID of the project in which this interface's router belongs. This parameter is required.- Returns:
this
-
redundantInterface
@Stability(Stable) public ComputeRouterInterface.Builder redundantInterface(String 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}
- Parameters:
redundantInterface- The name of the interface that is redundant to this interface. This parameter is required.- Returns:
this
-
region
@Stability(Stable) public ComputeRouterInterface.Builder region(String 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}
- Parameters:
region- The region this interface's router sits in. This parameter is required.- Returns:
this
-
subnetwork
@Stability(Stable) public ComputeRouterInterface.Builder subnetwork(String 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}
- Parameters:
subnetwork- The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router. This parameter is required.- Returns:
this
-
timeouts
@Stability(Stable) public ComputeRouterInterface.Builder timeouts(ComputeRouterInterfaceTimeouts timeouts)
timeouts block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_interface#timeouts ComputeRouterInterface#timeouts}
- Parameters:
timeouts- timeouts block. This parameter is required.- Returns:
this
-
vpnTunnel
@Stability(Stable) public ComputeRouterInterface.Builder vpnTunnel(String 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}
- Parameters:
vpnTunnel- The name or resource link to the VPN tunnel this interface will be linked to. This parameter is required.- Returns:
this
-
build
@Stability(Stable) public ComputeRouterInterface build()
- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<ComputeRouterInterface>- Returns:
- a newly built instance of
ComputeRouterInterface.
-
-