/* * Copyright 2010-2018 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; /** *
* Describes a route in a route table. *
*/ public class Route implements Serializable { /** * The CIDR block used for the destination match. */ private String destinationCidrBlock; /** * The prefix of the AWS service. */ private String destinationPrefixListId; /** * The ID of a gateway attached to your VPC. */ private String gatewayId; /** * The ID of a NAT instance in your VPC. */ private String instanceId; /** * The AWS account ID of the owner of the instance. */ private String instanceOwnerId; /** * The ID of the network interface. */ private String networkInterfaceId; /** * The ID of the VPC peering connection. */ private String vpcPeeringConnectionId; /** * The ID of a NAT gateway. */ private String natGatewayId; /** * The state of the route. Theblackhole
state indicates
* that the route's target isn't available (for example, the specified
* gateway isn't attached to the VPC, or the specified NAT instance has
* been terminated).
*
* Constraints:
* Allowed Values: active, blackhole
*/
private String state;
/**
* Describes how the route was created.
CreateRouteTable
- The route was automatically
* created when the route table was created.
CreateRoute
- The route was manually added to the
* route table.
EnableVgwRoutePropagation
- The
* route was propagated by route propagation.
* Constraints:
* Allowed Values: CreateRouteTable, CreateRoute, EnableVgwRoutePropagation
*/
private String origin;
/**
* The CIDR block used for the destination match.
*
* @return The CIDR block used for the destination match.
*/
public String getDestinationCidrBlock() {
return destinationCidrBlock;
}
/**
* The CIDR block used for the destination match.
*
* @param destinationCidrBlock The CIDR block used for the destination match.
*/
public void setDestinationCidrBlock(String destinationCidrBlock) {
this.destinationCidrBlock = destinationCidrBlock;
}
/**
* The CIDR block used for the destination match.
*
* Returns a reference to this object so that method calls can be chained together. * * @param destinationCidrBlock The CIDR block used for the destination match. * * @return A reference to this updated object so that method calls can be chained * together. */ public Route withDestinationCidrBlock(String destinationCidrBlock) { this.destinationCidrBlock = destinationCidrBlock; return this; } /** * The prefix of the AWS service. * * @return The prefix of the AWS service. */ public String getDestinationPrefixListId() { return destinationPrefixListId; } /** * The prefix of the AWS service. * * @param destinationPrefixListId The prefix of the AWS service. */ public void setDestinationPrefixListId(String destinationPrefixListId) { this.destinationPrefixListId = destinationPrefixListId; } /** * The prefix of the AWS service. *
* Returns a reference to this object so that method calls can be chained together. * * @param destinationPrefixListId The prefix of the AWS service. * * @return A reference to this updated object so that method calls can be chained * together. */ public Route withDestinationPrefixListId(String destinationPrefixListId) { this.destinationPrefixListId = destinationPrefixListId; return this; } /** * The ID of a gateway attached to your VPC. * * @return The ID of a gateway attached to your VPC. */ public String getGatewayId() { return gatewayId; } /** * The ID of a gateway attached to your VPC. * * @param gatewayId The ID of a gateway attached to your VPC. */ public void setGatewayId(String gatewayId) { this.gatewayId = gatewayId; } /** * The ID of a gateway attached to your VPC. *
* Returns a reference to this object so that method calls can be chained together. * * @param gatewayId The ID of a gateway attached to your VPC. * * @return A reference to this updated object so that method calls can be chained * together. */ public Route withGatewayId(String gatewayId) { this.gatewayId = gatewayId; return this; } /** * The ID of a NAT instance in your VPC. * * @return The ID of a NAT instance in your VPC. */ public String getInstanceId() { return instanceId; } /** * The ID of a NAT instance in your VPC. * * @param instanceId The ID of a NAT instance in your VPC. */ public void setInstanceId(String instanceId) { this.instanceId = instanceId; } /** * The ID of a NAT instance in your VPC. *
* Returns a reference to this object so that method calls can be chained together. * * @param instanceId The ID of a NAT instance in your VPC. * * @return A reference to this updated object so that method calls can be chained * together. */ public Route withInstanceId(String instanceId) { this.instanceId = instanceId; return this; } /** * The AWS account ID of the owner of the instance. * * @return The AWS account ID of the owner of the instance. */ public String getInstanceOwnerId() { return instanceOwnerId; } /** * The AWS account ID of the owner of the instance. * * @param instanceOwnerId The AWS account ID of the owner of the instance. */ public void setInstanceOwnerId(String instanceOwnerId) { this.instanceOwnerId = instanceOwnerId; } /** * The AWS account ID of the owner of the instance. *
* Returns a reference to this object so that method calls can be chained together. * * @param instanceOwnerId The AWS account ID of the owner of the instance. * * @return A reference to this updated object so that method calls can be chained * together. */ public Route withInstanceOwnerId(String instanceOwnerId) { this.instanceOwnerId = instanceOwnerId; return this; } /** * The ID of the network interface. * * @return The ID of the network interface. */ public String getNetworkInterfaceId() { return networkInterfaceId; } /** * The ID of the network interface. * * @param networkInterfaceId The ID of the network interface. */ public void setNetworkInterfaceId(String networkInterfaceId) { this.networkInterfaceId = networkInterfaceId; } /** * The ID of the network interface. *
* Returns a reference to this object so that method calls can be chained together. * * @param networkInterfaceId The ID of the network interface. * * @return A reference to this updated object so that method calls can be chained * together. */ public Route withNetworkInterfaceId(String networkInterfaceId) { this.networkInterfaceId = networkInterfaceId; return this; } /** * The ID of the VPC peering connection. * * @return The ID of the VPC peering connection. */ public String getVpcPeeringConnectionId() { return vpcPeeringConnectionId; } /** * The ID of the VPC peering connection. * * @param vpcPeeringConnectionId The ID of the VPC peering connection. */ public void setVpcPeeringConnectionId(String vpcPeeringConnectionId) { this.vpcPeeringConnectionId = vpcPeeringConnectionId; } /** * The ID of the VPC peering connection. *
* Returns a reference to this object so that method calls can be chained together. * * @param vpcPeeringConnectionId The ID of the VPC peering connection. * * @return A reference to this updated object so that method calls can be chained * together. */ public Route withVpcPeeringConnectionId(String vpcPeeringConnectionId) { this.vpcPeeringConnectionId = vpcPeeringConnectionId; return this; } /** * The ID of a NAT gateway. * * @return The ID of a NAT gateway. */ public String getNatGatewayId() { return natGatewayId; } /** * The ID of a NAT gateway. * * @param natGatewayId The ID of a NAT gateway. */ public void setNatGatewayId(String natGatewayId) { this.natGatewayId = natGatewayId; } /** * The ID of a NAT gateway. *
* Returns a reference to this object so that method calls can be chained together.
*
* @param natGatewayId The ID of a NAT gateway.
*
* @return A reference to this updated object so that method calls can be chained
* together.
*/
public Route withNatGatewayId(String natGatewayId) {
this.natGatewayId = natGatewayId;
return this;
}
/**
* The state of the route. The blackhole
state indicates
* that the route's target isn't available (for example, the specified
* gateway isn't attached to the VPC, or the specified NAT instance has
* been terminated).
*
* Constraints:
* Allowed Values: active, blackhole
*
* @return The state of the route. The blackhole
state indicates
* that the route's target isn't available (for example, the specified
* gateway isn't attached to the VPC, or the specified NAT instance has
* been terminated).
*
* @see RouteState
*/
public String getState() {
return state;
}
/**
* The state of the route. The blackhole
state indicates
* that the route's target isn't available (for example, the specified
* gateway isn't attached to the VPC, or the specified NAT instance has
* been terminated).
*
* Constraints:
* Allowed Values: active, blackhole
*
* @param state The state of the route. The blackhole
state indicates
* that the route's target isn't available (for example, the specified
* gateway isn't attached to the VPC, or the specified NAT instance has
* been terminated).
*
* @see RouteState
*/
public void setState(String state) {
this.state = state;
}
/**
* The state of the route. The blackhole
state indicates
* that the route's target isn't available (for example, the specified
* gateway isn't attached to the VPC, or the specified NAT instance has
* been terminated).
*
* Returns a reference to this object so that method calls can be chained together. *
* Constraints:
* Allowed Values: active, blackhole
*
* @param state The state of the route. The blackhole
state indicates
* that the route's target isn't available (for example, the specified
* gateway isn't attached to the VPC, or the specified NAT instance has
* been terminated).
*
* @return A reference to this updated object so that method calls can be chained
* together.
*
* @see RouteState
*/
public Route withState(String state) {
this.state = state;
return this;
}
/**
* The state of the route. The blackhole
state indicates
* that the route's target isn't available (for example, the specified
* gateway isn't attached to the VPC, or the specified NAT instance has
* been terminated).
*
* Constraints:
* Allowed Values: active, blackhole
*
* @param state The state of the route. The blackhole
state indicates
* that the route's target isn't available (for example, the specified
* gateway isn't attached to the VPC, or the specified NAT instance has
* been terminated).
*
* @see RouteState
*/
public void setState(RouteState state) {
this.state = state.toString();
}
/**
* The state of the route. The blackhole
state indicates
* that the route's target isn't available (for example, the specified
* gateway isn't attached to the VPC, or the specified NAT instance has
* been terminated).
*
* Returns a reference to this object so that method calls can be chained together. *
* Constraints:
* Allowed Values: active, blackhole
*
* @param state The state of the route. The blackhole
state indicates
* that the route's target isn't available (for example, the specified
* gateway isn't attached to the VPC, or the specified NAT instance has
* been terminated).
*
* @return A reference to this updated object so that method calls can be chained
* together.
*
* @see RouteState
*/
public Route withState(RouteState state) {
this.state = state.toString();
return this;
}
/**
* Describes how the route was created.
CreateRouteTable
- The route was automatically
* created when the route table was created.
CreateRoute
- The route was manually added to the
* route table.
EnableVgwRoutePropagation
- The
* route was propagated by route propagation.
* Constraints:
* Allowed Values: CreateRouteTable, CreateRoute, EnableVgwRoutePropagation
*
* @return Describes how the route was created.
CreateRouteTable
- The route was automatically
* created when the route table was created.
CreateRoute
- The route was manually added to the
* route table.
EnableVgwRoutePropagation
- The
* route was propagated by route propagation.
CreateRouteTable
- The route was automatically
* created when the route table was created.
CreateRoute
- The route was manually added to the
* route table.
EnableVgwRoutePropagation
- The
* route was propagated by route propagation.
* Constraints:
* Allowed Values: CreateRouteTable, CreateRoute, EnableVgwRoutePropagation
*
* @param origin Describes how the route was created.
CreateRouteTable
- The route was automatically
* created when the route table was created.
CreateRoute
- The route was manually added to the
* route table.
EnableVgwRoutePropagation
- The
* route was propagated by route propagation.
CreateRouteTable
- The route was automatically
* created when the route table was created.
CreateRoute
- The route was manually added to the
* route table.
EnableVgwRoutePropagation
- The
* route was propagated by route propagation.
* Returns a reference to this object so that method calls can be chained together. *
* Constraints:
* Allowed Values: CreateRouteTable, CreateRoute, EnableVgwRoutePropagation
*
* @param origin Describes how the route was created.
CreateRouteTable
- The route was automatically
* created when the route table was created.
CreateRoute
- The route was manually added to the
* route table.
EnableVgwRoutePropagation
- The
* route was propagated by route propagation.
CreateRouteTable
- The route was automatically
* created when the route table was created.
CreateRoute
- The route was manually added to the
* route table.
EnableVgwRoutePropagation
- The
* route was propagated by route propagation.
* Constraints:
* Allowed Values: CreateRouteTable, CreateRoute, EnableVgwRoutePropagation
*
* @param origin Describes how the route was created.
CreateRouteTable
- The route was automatically
* created when the route table was created.
CreateRoute
- The route was manually added to the
* route table.
EnableVgwRoutePropagation
- The
* route was propagated by route propagation.
CreateRouteTable
- The route was automatically
* created when the route table was created.
CreateRoute
- The route was manually added to the
* route table.
EnableVgwRoutePropagation
- The
* route was propagated by route propagation.
* Returns a reference to this object so that method calls can be chained together. *
* Constraints:
* Allowed Values: CreateRouteTable, CreateRoute, EnableVgwRoutePropagation
*
* @param origin Describes how the route was created.
CreateRouteTable
- The route was automatically
* created when the route table was created.
CreateRoute
- The route was manually added to the
* route table.
EnableVgwRoutePropagation
- The
* route was propagated by route propagation.