/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.ec2.model; import java.io.Serializable; import javax.annotation.Generated; /** *
* Describes the options for a transit gateway. *
* * @see AWS * API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class TransitGatewayRequestOptions implements Serializable, Cloneable { /** *
* A private Autonomous System Number (ASN) for the Amazon side of a BGP session. The range is 64512 to 65534 for
* 16-bit ASNs and 4200000000 to 4294967294 for 32-bit ASNs. The default is 64512
.
*
* Enable or disable automatic acceptance of attachment requests. Disabled by default. *
*/ private String autoAcceptSharedAttachments; /** ** Enable or disable automatic association with the default association route table. Enabled by default. *
*/ private String defaultRouteTableAssociation; /** ** Enable or disable automatic propagation of routes to the default propagation route table. Enabled by default. *
*/ private String defaultRouteTablePropagation; /** ** Enable or disable Equal Cost Multipath Protocol support. Enabled by default. *
*/ private String vpnEcmpSupport; /** ** Enable or disable DNS support. Enabled by default. *
*/ private String dnsSupport; /** ** Indicates whether multicast is enabled on the transit gateway *
*/ private String multicastSupport; /** ** One or more IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR block or larger for IPv4, * or a size /64 CIDR block or larger for IPv6. *
*/ private com.amazonaws.internal.SdkInternalList
* A private Autonomous System Number (ASN) for the Amazon side of a BGP session. The range is 64512 to 65534 for
* 16-bit ASNs and 4200000000 to 4294967294 for 32-bit ASNs. The default is 64512
.
*
64512
.
*/
public void setAmazonSideAsn(Long amazonSideAsn) {
this.amazonSideAsn = amazonSideAsn;
}
/**
*
* A private Autonomous System Number (ASN) for the Amazon side of a BGP session. The range is 64512 to 65534 for
* 16-bit ASNs and 4200000000 to 4294967294 for 32-bit ASNs. The default is 64512
.
*
64512
.
*/
public Long getAmazonSideAsn() {
return this.amazonSideAsn;
}
/**
*
* A private Autonomous System Number (ASN) for the Amazon side of a BGP session. The range is 64512 to 65534 for
* 16-bit ASNs and 4200000000 to 4294967294 for 32-bit ASNs. The default is 64512
.
*
64512
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public TransitGatewayRequestOptions withAmazonSideAsn(Long amazonSideAsn) {
setAmazonSideAsn(amazonSideAsn);
return this;
}
/**
* * Enable or disable automatic acceptance of attachment requests. Disabled by default. *
* * @param autoAcceptSharedAttachments * Enable or disable automatic acceptance of attachment requests. Disabled by default. * @see AutoAcceptSharedAttachmentsValue */ public void setAutoAcceptSharedAttachments(String autoAcceptSharedAttachments) { this.autoAcceptSharedAttachments = autoAcceptSharedAttachments; } /** ** Enable or disable automatic acceptance of attachment requests. Disabled by default. *
* * @return Enable or disable automatic acceptance of attachment requests. Disabled by default. * @see AutoAcceptSharedAttachmentsValue */ public String getAutoAcceptSharedAttachments() { return this.autoAcceptSharedAttachments; } /** ** Enable or disable automatic acceptance of attachment requests. Disabled by default. *
* * @param autoAcceptSharedAttachments * Enable or disable automatic acceptance of attachment requests. Disabled by default. * @return Returns a reference to this object so that method calls can be chained together. * @see AutoAcceptSharedAttachmentsValue */ public TransitGatewayRequestOptions withAutoAcceptSharedAttachments(String autoAcceptSharedAttachments) { setAutoAcceptSharedAttachments(autoAcceptSharedAttachments); return this; } /** ** Enable or disable automatic acceptance of attachment requests. Disabled by default. *
* * @param autoAcceptSharedAttachments * Enable or disable automatic acceptance of attachment requests. Disabled by default. * @return Returns a reference to this object so that method calls can be chained together. * @see AutoAcceptSharedAttachmentsValue */ public TransitGatewayRequestOptions withAutoAcceptSharedAttachments(AutoAcceptSharedAttachmentsValue autoAcceptSharedAttachments) { this.autoAcceptSharedAttachments = autoAcceptSharedAttachments.toString(); return this; } /** ** Enable or disable automatic association with the default association route table. Enabled by default. *
* * @param defaultRouteTableAssociation * Enable or disable automatic association with the default association route table. Enabled by default. * @see DefaultRouteTableAssociationValue */ public void setDefaultRouteTableAssociation(String defaultRouteTableAssociation) { this.defaultRouteTableAssociation = defaultRouteTableAssociation; } /** ** Enable or disable automatic association with the default association route table. Enabled by default. *
* * @return Enable or disable automatic association with the default association route table. Enabled by default. * @see DefaultRouteTableAssociationValue */ public String getDefaultRouteTableAssociation() { return this.defaultRouteTableAssociation; } /** ** Enable or disable automatic association with the default association route table. Enabled by default. *
* * @param defaultRouteTableAssociation * Enable or disable automatic association with the default association route table. Enabled by default. * @return Returns a reference to this object so that method calls can be chained together. * @see DefaultRouteTableAssociationValue */ public TransitGatewayRequestOptions withDefaultRouteTableAssociation(String defaultRouteTableAssociation) { setDefaultRouteTableAssociation(defaultRouteTableAssociation); return this; } /** ** Enable or disable automatic association with the default association route table. Enabled by default. *
* * @param defaultRouteTableAssociation * Enable or disable automatic association with the default association route table. Enabled by default. * @return Returns a reference to this object so that method calls can be chained together. * @see DefaultRouteTableAssociationValue */ public TransitGatewayRequestOptions withDefaultRouteTableAssociation(DefaultRouteTableAssociationValue defaultRouteTableAssociation) { this.defaultRouteTableAssociation = defaultRouteTableAssociation.toString(); return this; } /** ** Enable or disable automatic propagation of routes to the default propagation route table. Enabled by default. *
* * @param defaultRouteTablePropagation * Enable or disable automatic propagation of routes to the default propagation route table. Enabled by * default. * @see DefaultRouteTablePropagationValue */ public void setDefaultRouteTablePropagation(String defaultRouteTablePropagation) { this.defaultRouteTablePropagation = defaultRouteTablePropagation; } /** ** Enable or disable automatic propagation of routes to the default propagation route table. Enabled by default. *
* * @return Enable or disable automatic propagation of routes to the default propagation route table. Enabled by * default. * @see DefaultRouteTablePropagationValue */ public String getDefaultRouteTablePropagation() { return this.defaultRouteTablePropagation; } /** ** Enable or disable automatic propagation of routes to the default propagation route table. Enabled by default. *
* * @param defaultRouteTablePropagation * Enable or disable automatic propagation of routes to the default propagation route table. Enabled by * default. * @return Returns a reference to this object so that method calls can be chained together. * @see DefaultRouteTablePropagationValue */ public TransitGatewayRequestOptions withDefaultRouteTablePropagation(String defaultRouteTablePropagation) { setDefaultRouteTablePropagation(defaultRouteTablePropagation); return this; } /** ** Enable or disable automatic propagation of routes to the default propagation route table. Enabled by default. *
* * @param defaultRouteTablePropagation * Enable or disable automatic propagation of routes to the default propagation route table. Enabled by * default. * @return Returns a reference to this object so that method calls can be chained together. * @see DefaultRouteTablePropagationValue */ public TransitGatewayRequestOptions withDefaultRouteTablePropagation(DefaultRouteTablePropagationValue defaultRouteTablePropagation) { this.defaultRouteTablePropagation = defaultRouteTablePropagation.toString(); return this; } /** ** Enable or disable Equal Cost Multipath Protocol support. Enabled by default. *
* * @param vpnEcmpSupport * Enable or disable Equal Cost Multipath Protocol support. Enabled by default. * @see VpnEcmpSupportValue */ public void setVpnEcmpSupport(String vpnEcmpSupport) { this.vpnEcmpSupport = vpnEcmpSupport; } /** ** Enable or disable Equal Cost Multipath Protocol support. Enabled by default. *
* * @return Enable or disable Equal Cost Multipath Protocol support. Enabled by default. * @see VpnEcmpSupportValue */ public String getVpnEcmpSupport() { return this.vpnEcmpSupport; } /** ** Enable or disable Equal Cost Multipath Protocol support. Enabled by default. *
* * @param vpnEcmpSupport * Enable or disable Equal Cost Multipath Protocol support. Enabled by default. * @return Returns a reference to this object so that method calls can be chained together. * @see VpnEcmpSupportValue */ public TransitGatewayRequestOptions withVpnEcmpSupport(String vpnEcmpSupport) { setVpnEcmpSupport(vpnEcmpSupport); return this; } /** ** Enable or disable Equal Cost Multipath Protocol support. Enabled by default. *
* * @param vpnEcmpSupport * Enable or disable Equal Cost Multipath Protocol support. Enabled by default. * @return Returns a reference to this object so that method calls can be chained together. * @see VpnEcmpSupportValue */ public TransitGatewayRequestOptions withVpnEcmpSupport(VpnEcmpSupportValue vpnEcmpSupport) { this.vpnEcmpSupport = vpnEcmpSupport.toString(); return this; } /** ** Enable or disable DNS support. Enabled by default. *
* * @param dnsSupport * Enable or disable DNS support. Enabled by default. * @see DnsSupportValue */ public void setDnsSupport(String dnsSupport) { this.dnsSupport = dnsSupport; } /** ** Enable or disable DNS support. Enabled by default. *
* * @return Enable or disable DNS support. Enabled by default. * @see DnsSupportValue */ public String getDnsSupport() { return this.dnsSupport; } /** ** Enable or disable DNS support. Enabled by default. *
* * @param dnsSupport * Enable or disable DNS support. Enabled by default. * @return Returns a reference to this object so that method calls can be chained together. * @see DnsSupportValue */ public TransitGatewayRequestOptions withDnsSupport(String dnsSupport) { setDnsSupport(dnsSupport); return this; } /** ** Enable or disable DNS support. Enabled by default. *
* * @param dnsSupport * Enable or disable DNS support. Enabled by default. * @return Returns a reference to this object so that method calls can be chained together. * @see DnsSupportValue */ public TransitGatewayRequestOptions withDnsSupport(DnsSupportValue dnsSupport) { this.dnsSupport = dnsSupport.toString(); return this; } /** ** Indicates whether multicast is enabled on the transit gateway *
* * @param multicastSupport * Indicates whether multicast is enabled on the transit gateway * @see MulticastSupportValue */ public void setMulticastSupport(String multicastSupport) { this.multicastSupport = multicastSupport; } /** ** Indicates whether multicast is enabled on the transit gateway *
* * @return Indicates whether multicast is enabled on the transit gateway * @see MulticastSupportValue */ public String getMulticastSupport() { return this.multicastSupport; } /** ** Indicates whether multicast is enabled on the transit gateway *
* * @param multicastSupport * Indicates whether multicast is enabled on the transit gateway * @return Returns a reference to this object so that method calls can be chained together. * @see MulticastSupportValue */ public TransitGatewayRequestOptions withMulticastSupport(String multicastSupport) { setMulticastSupport(multicastSupport); return this; } /** ** Indicates whether multicast is enabled on the transit gateway *
* * @param multicastSupport * Indicates whether multicast is enabled on the transit gateway * @return Returns a reference to this object so that method calls can be chained together. * @see MulticastSupportValue */ public TransitGatewayRequestOptions withMulticastSupport(MulticastSupportValue multicastSupport) { this.multicastSupport = multicastSupport.toString(); return this; } /** ** One or more IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR block or larger for IPv4, * or a size /64 CIDR block or larger for IPv6. *
* * @return One or more IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR block or larger for * IPv4, or a size /64 CIDR block or larger for IPv6. */ public java.util.List* One or more IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR block or larger for IPv4, * or a size /64 CIDR block or larger for IPv6. *
* * @param transitGatewayCidrBlocks * One or more IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR block or larger for * IPv4, or a size /64 CIDR block or larger for IPv6. */ public void setTransitGatewayCidrBlocks(java.util.Collection* One or more IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR block or larger for IPv4, * or a size /64 CIDR block or larger for IPv6. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setTransitGatewayCidrBlocks(java.util.Collection)} or * {@link #withTransitGatewayCidrBlocks(java.util.Collection)} if you want to override the existing values. *
* * @param transitGatewayCidrBlocks * One or more IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR block or larger for * IPv4, or a size /64 CIDR block or larger for IPv6. * @return Returns a reference to this object so that method calls can be chained together. */ public TransitGatewayRequestOptions withTransitGatewayCidrBlocks(String... transitGatewayCidrBlocks) { if (this.transitGatewayCidrBlocks == null) { setTransitGatewayCidrBlocks(new com.amazonaws.internal.SdkInternalList* One or more IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR block or larger for IPv4, * or a size /64 CIDR block or larger for IPv6. *
* * @param transitGatewayCidrBlocks * One or more IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR block or larger for * IPv4, or a size /64 CIDR block or larger for IPv6. * @return Returns a reference to this object so that method calls can be chained together. */ public TransitGatewayRequestOptions withTransitGatewayCidrBlocks(java.util.Collection