amazonka-ec2-1.4.5: Amazon Elastic Compute Cloud SDK.

Copyright(c) 2013-2016 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.EC2.CreateRoute

Contents

Description

Creates a route in a route table within a VPC.

You must specify one of the following targets: Internet gateway or virtual private gateway, NAT instance, NAT gateway, VPC peering connection, network interface, or egress-only Internet gateway.

When determining how to route traffic, we use the route with the most specific match. For example, traffic is destined for the IPv4 address 192.0.2.3 , and the route table includes the following two IPv4 routes:

  • 192.0.2.0/24 (goes to some target A)
  • 192.0.2.0/28 (goes to some target B)

Both routes apply to the traffic destined for 192.0.2.3 . However, the second route in the list covers a smaller number of IP addresses and is therefore more specific, so we use that route to determine where to target the traffic.

For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide .

Synopsis

Creating a Request

createRoute #

Creates a value of CreateRoute with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • crVPCPeeringConnectionId - The ID of a VPC peering connection.
  • crInstanceId - The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.
  • crEgressOnlyInternetGatewayId - [IPv6 traffic only] The ID of an egress-only Internet gateway.
  • crDestinationIPv6CidrBlock - The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.
  • crNatGatewayId - [IPv4 traffic only] The ID of a NAT gateway.
  • crNetworkInterfaceId - The ID of a network interface.
  • crGatewayId - The ID of an Internet gateway or virtual private gateway attached to your VPC.
  • crDryRun - Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation . Otherwise, it is UnauthorizedOperation .
  • crDestinationCidrBlock - The IPv4 CIDR address block used for the destination match. Routing decisions are based on the most specific match.
  • crRouteTableId - The ID of the route table for the route.

data CreateRoute #

Contains the parameters for CreateRoute.

See: createRoute smart constructor.

Instances

Eq CreateRoute # 
Data CreateRoute # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CreateRoute -> c CreateRoute #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CreateRoute #

toConstr :: CreateRoute -> Constr #

dataTypeOf :: CreateRoute -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c CreateRoute) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CreateRoute) #

gmapT :: (forall b. Data b => b -> b) -> CreateRoute -> CreateRoute #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CreateRoute -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CreateRoute -> r #

gmapQ :: (forall d. Data d => d -> u) -> CreateRoute -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> CreateRoute -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> CreateRoute -> m CreateRoute #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateRoute -> m CreateRoute #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateRoute -> m CreateRoute #

Read CreateRoute # 
Show CreateRoute # 
Generic CreateRoute # 

Associated Types

type Rep CreateRoute :: * -> * #

Hashable CreateRoute # 
NFData CreateRoute # 

Methods

rnf :: CreateRoute -> () #

AWSRequest CreateRoute # 
ToQuery CreateRoute # 
ToPath CreateRoute # 
ToHeaders CreateRoute # 

Methods

toHeaders :: CreateRoute -> [Header] #

type Rep CreateRoute # 
type Rs CreateRoute # 

Request Lenses

crVPCPeeringConnectionId :: Lens' CreateRoute (Maybe Text) #

The ID of a VPC peering connection.

crInstanceId :: Lens' CreateRoute (Maybe Text) #

The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.

crEgressOnlyInternetGatewayId :: Lens' CreateRoute (Maybe Text) #

IPv6 traffic only
The ID of an egress-only Internet gateway.

crDestinationIPv6CidrBlock :: Lens' CreateRoute (Maybe Text) #

The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.

crNatGatewayId :: Lens' CreateRoute (Maybe Text) #

IPv4 traffic only
The ID of a NAT gateway.

crNetworkInterfaceId :: Lens' CreateRoute (Maybe Text) #

The ID of a network interface.

crGatewayId :: Lens' CreateRoute (Maybe Text) #

The ID of an Internet gateway or virtual private gateway attached to your VPC.

crDryRun :: Lens' CreateRoute (Maybe Bool) #

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation . Otherwise, it is UnauthorizedOperation .

crDestinationCidrBlock :: Lens' CreateRoute (Maybe Text) #

The IPv4 CIDR address block used for the destination match. Routing decisions are based on the most specific match.

crRouteTableId :: Lens' CreateRoute Text #

The ID of the route table for the route.

Destructuring the Response

createRouteResponse #

Creates a value of CreateRouteResponse with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

data CreateRouteResponse #

Contains the output of CreateRoute.

See: createRouteResponse smart constructor.

Instances

Eq CreateRouteResponse # 
Data CreateRouteResponse # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CreateRouteResponse -> c CreateRouteResponse #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CreateRouteResponse #

toConstr :: CreateRouteResponse -> Constr #

dataTypeOf :: CreateRouteResponse -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c CreateRouteResponse) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CreateRouteResponse) #

gmapT :: (forall b. Data b => b -> b) -> CreateRouteResponse -> CreateRouteResponse #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CreateRouteResponse -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CreateRouteResponse -> r #

gmapQ :: (forall d. Data d => d -> u) -> CreateRouteResponse -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> CreateRouteResponse -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> CreateRouteResponse -> m CreateRouteResponse #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateRouteResponse -> m CreateRouteResponse #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateRouteResponse -> m CreateRouteResponse #

Read CreateRouteResponse # 
Show CreateRouteResponse # 
Generic CreateRouteResponse # 
NFData CreateRouteResponse # 

Methods

rnf :: CreateRouteResponse -> () #

type Rep CreateRouteResponse # 
type Rep CreateRouteResponse = D1 (MetaData "CreateRouteResponse" "Network.AWS.EC2.CreateRoute" "amazonka-ec2-1.4.5-C4CR35JggG2GhWFrIiKGhu" False) (C1 (MetaCons "CreateRouteResponse'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_crrsReturn") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Bool))) (S1 (MetaSel (Just Symbol "_crrsResponseStatus") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Int))))

Response Lenses

crrsReturn :: Lens' CreateRouteResponse (Maybe Bool) #

Returns true if the request succeeds; otherwise, it returns an error.

crrsResponseStatus :: Lens' CreateRouteResponse Int #

  • - | The response status code.