Skip to content

NatGateway

  • Implements: com.aliyun.ros.cdk.vpc.datasource.INatGateway

This class encapsulates and extends the ROS resource type DATASOURCE::VPC::NatGateway.

Initializers

import com.aliyun.ros.cdk.vpc.datasource.NatGateway;
NatGateway.Builder.create(Construct scope, java.lang.String id, java.lang.Boolean enableResourcePropertyConstraint)
    .natGatewayId(java.lang.String)
    .natGatewayId(IResolvable)
//  .refreshOptions(java.lang.String)
//  .refreshOptions(IResolvable)
    .build();
Name Type Description
scope com.aliyun.ros.cdk.core.Construct No description.
id java.lang.String No description.
enableResourcePropertyConstraint java.lang.Boolean No description.
natGatewayId java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Property natGatewayId: The ID of the NAT gateway.
refreshOptions java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Property refreshOptions: The refresh strategy for the datasource resource when the stack is updated.

scopeRequired

  • Type: com.aliyun.ros.cdk.core.Construct

idRequired

  • Type: java.lang.String

enableResourcePropertyConstraintOptional

  • Type: java.lang.Boolean

natGatewayIdRequired

  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Property natGatewayId: The ID of the NAT gateway.


refreshOptionsOptional

  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Property refreshOptions: The refresh strategy for the datasource resource when the stack is updated.

Valid values:

  • Never: Never refresh the datasource resource when the stack is updated.
  • Always: Always refresh the datasource resource when the stack is updated. Default is Never.

Methods

Name Description
toString Returns a string representation of this construct.
synthesize Allows this construct to emit artifacts into the cloud assembly during synthesis.
addCondition No description.
addCount No description.
addDependency No description.
addResourceDesc No description.
applyRemovalPolicy No description.
fetchCondition No description.
fetchDependency No description.
fetchResourceDesc No description.
getAtt No description.
setMetadata No description.

toString

public java.lang.String toString()

Returns a string representation of this construct.

synthesize

public void synthesize(ISynthesisSession session)

Allows this construct to emit artifacts into the cloud assembly during synthesis.

This method is usually implemented by framework-level constructs such as Stack and Asset as they participate in synthesizing the cloud assembly.

sessionRequired

  • Type: com.aliyun.ros.cdk.core.ISynthesisSession

The synthesis session.


addCondition

public void addCondition(RosCondition condition)

conditionRequired

  • Type: com.aliyun.ros.cdk.core.RosCondition

addCount

public void addCount(java.lang.Number OR IResolvable count)

countRequired

  • Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable

addDependency

public void addDependency(Resource resource)

resourceRequired

  • Type: com.aliyun.ros.cdk.core.Resource

addResourceDesc

public void addResourceDesc(java.lang.String desc)

descRequired

  • Type: java.lang.String

applyRemovalPolicy

public void applyRemovalPolicy(RemovalPolicy policy)

policyRequired

  • Type: com.aliyun.ros.cdk.core.RemovalPolicy

fetchCondition

public RosCondition fetchCondition()

fetchDependency

public java.util.List<java.lang.String> fetchDependency()

fetchResourceDesc

public java.lang.String fetchResourceDesc()

getAtt

public IResolvable getAtt(java.lang.String name)

nameRequired

  • Type: java.lang.String

setMetadata

public void setMetadata(java.lang.String key, java.lang.Object value)

keyRequired

  • Type: java.lang.String

valueRequired

  • Type: java.lang.Object

Static Functions

Name Description
isConstruct Return whether the given object is a Construct.

isConstruct

import com.aliyun.ros.cdk.vpc.datasource.NatGateway;
NatGateway.isConstruct(java.lang.Object x)

Return whether the given object is a Construct.

xRequired

  • Type: java.lang.Object

Properties

Name Type Description
node com.aliyun.ros.cdk.core.ConstructNode The construct tree node associated with this construct.
env com.aliyun.ros.cdk.core.IResourceEnvironment The environment this resource belongs to.
ref java.lang.String No description.
stack com.aliyun.ros.cdk.core.Stack The stack in which this resource is defined.
resource com.aliyun.ros.cdk.core.RosResource No description.
attrAutoPay java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute AutoPay: Indicates whether automatic payment is enabled.
attrBusinessStatus java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute BusinessStatus: The status of the NAT gateway.
attrCreateTime java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute CreateTime: The time when the NAT gateway was created.
attrDeletionProtection java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute DeletionProtection: Indicates whether the deletion protection feature is enabled.
attrDescription java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute Description: The description of the NAT gateway.
attrEipBindMode java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute EipBindMode: The mode in which the NAT gateway is associated with an elastic IP address (EIP).
attrExpiredTime java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute ExpiredTime: The time when the NAT gateway expires.
attrForwardTableIds java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute ForwardTableIds: The ID of the Destination Network Address Translation (DNAT) table.
attrIcmpReplyEnabled java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute IcmpReplyEnabled: Indicates whether the ICMP non-retrieval feature is enabled.
attrInternetChargeType java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute InternetChargeType: The metering method of the NAT gateway.
attrIpLists java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute IpLists: The list of elastic IP addresses (EIPs) that are associated with the Internet NAT gateway.
attrNatGatewayId java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute NatGatewayId: The ID of the NAT gateway.
attrNatGatewayName java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute NatGatewayName: The name of the NAT gateway.
attrNatGatewayPrivateInfo java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute NatGatewayPrivateInfo: The private network information about the enhanced Internet NAT gateway.
attrNatType java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute NatType: The type of the NAT gateway.
attrNetworkType java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute NetworkType: The type of NAT gateway.
attrPaymentType java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute PaymentType: The billing method of the NAT gateway.
attrSecurityProtectionEnabled java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute SecurityProtectionEnabled: Indicates whether the firewall feature is enabled.
attrSnatTableIds java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute SnatTableIds: The ID of the SNAT table of the NAT gateway.
attrSpec java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute Spec: The size of the NAT gateway.
attrVpcId java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Attribute VpcId: The ID of the VPC where the NAT gateway is deployed.
props NatGatewayProps No description.

nodeRequired

public ConstructNode getNode();
  • Type: com.aliyun.ros.cdk.core.ConstructNode

The construct tree node associated with this construct.


envRequired

public IResourceEnvironment getEnv();
  • Type: com.aliyun.ros.cdk.core.IResourceEnvironment

The environment this resource belongs to.

For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.


refRequired

public java.lang.String getRef();
  • Type: java.lang.String

stackRequired

public Stack getStack();
  • Type: com.aliyun.ros.cdk.core.Stack

The stack in which this resource is defined.


resourceOptional

public RosResource getResource();
  • Type: com.aliyun.ros.cdk.core.RosResource

attrAutoPayRequired

public java.lang.Object getAttrAutoPay();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute AutoPay: Indicates whether automatic payment is enabled.

Valid values: false: no true: yes


attrBusinessStatusRequired

public java.lang.Object getAttrBusinessStatus();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute BusinessStatus: The status of the NAT gateway.

Valid values: Normal: normal FinancialLocked: locked due to overdue payments


attrCreateTimeRequired

public java.lang.Object getAttrCreateTime();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute CreateTime: The time when the NAT gateway was created.

The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.


attrDeletionProtectionRequired

public java.lang.Object getAttrDeletionProtection();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute DeletionProtection: Indicates whether the deletion protection feature is enabled.

Valid values: true: yes false: no


attrDescriptionRequired

public java.lang.Object getAttrDescription();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute Description: The description of the NAT gateway.


attrEipBindModeRequired

public java.lang.Object getAttrEipBindMode();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute EipBindMode: The mode in which the NAT gateway is associated with an elastic IP address (EIP).

Valid values: MULTI_BINDED: multi-EIP-to-ENI mode* NAT: NAT mode, which is compatible with IPv4 addresses.


attrExpiredTimeRequired

public java.lang.Object getAttrExpiredTime();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute ExpiredTime: The time when the NAT gateway expires.


attrForwardTableIdsRequired

public java.lang.Object getAttrForwardTableIds();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute ForwardTableIds: The ID of the Destination Network Address Translation (DNAT) table.


attrIcmpReplyEnabledRequired

public java.lang.Object getAttrIcmpReplyEnabled();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute IcmpReplyEnabled: Indicates whether the ICMP non-retrieval feature is enabled.

Valid values: true: yes false: no


attrInternetChargeTypeRequired

public java.lang.Object getAttrInternetChargeType();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute InternetChargeType: The metering method of the NAT gateway.

Valid values: PayBySpec: pay-by-specification PayByLcu: pay-by-CU


attrIpListsRequired

public java.lang.Object getAttrIpLists();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute IpLists: The list of elastic IP addresses (EIPs) that are associated with the Internet NAT gateway.


attrNatGatewayIdRequired

public java.lang.Object getAttrNatGatewayId();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute NatGatewayId: The ID of the NAT gateway.


attrNatGatewayNameRequired

public java.lang.Object getAttrNatGatewayName();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute NatGatewayName: The name of the NAT gateway.

The name must be 1 to 128 characters in length, and cannot start with http:// or https://. If this parameter is not set, the system automatically assigns a name to the NAT gateway.


attrNatGatewayPrivateInfoRequired

public java.lang.Object getAttrNatGatewayPrivateInfo();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute NatGatewayPrivateInfo: The private network information about the enhanced Internet NAT gateway.


attrNatTypeRequired

public java.lang.Object getAttrNatType();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute NatType: The type of the NAT gateway.

The value is set to Enhanced (enhanced NAT gateway).


attrNetworkTypeRequired

public java.lang.Object getAttrNetworkType();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute NetworkType: The type of NAT gateway.

Valid values: internet: an Internet NAT gateway intranet: a VPC NAT gateway


attrPaymentTypeRequired

public java.lang.Object getAttrPaymentType();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute PaymentType: The billing method of the NAT gateway.

Valid values: PrePaid: subscription PostPaid: pay-as-you-go.


attrSecurityProtectionEnabledRequired

public java.lang.Object getAttrSecurityProtectionEnabled();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute SecurityProtectionEnabled: Indicates whether the firewall feature is enabled.

Valid values: false: no true: yes


attrSnatTableIdsRequired

public java.lang.Object getAttrSnatTableIds();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute SnatTableIds: The ID of the SNAT table of the NAT gateway.


attrSpecRequired

public java.lang.Object getAttrSpec();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute Spec: The size of the NAT gateway.

An empty value is returned for the parameter. If InternetChargeType is set to PayByLcu, an empty value is returned.


attrVpcIdRequired

public java.lang.Object getAttrVpcId();
  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Attribute VpcId: The ID of the VPC where the NAT gateway is deployed.


propsRequired

public NatGatewayProps getProps();