All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.ec2.AmazonEC2Client Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon EC2 module holds the client classes that are used for communicating with Amazon EC2 Service

There is a newer version: 1.12.772
Show newest version
/*
 * Copyright 2014-2019 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;

import org.w3c.dom.*;

import java.net.*;
import java.util.*;

import javax.annotation.Generated;

import org.apache.commons.logging.*;

import com.amazonaws.*;
import com.amazonaws.annotation.SdkInternalApi;
import com.amazonaws.auth.*;

import com.amazonaws.handlers.*;
import com.amazonaws.http.*;
import com.amazonaws.internal.*;
import com.amazonaws.internal.auth.*;
import com.amazonaws.metrics.*;
import com.amazonaws.regions.*;
import com.amazonaws.transform.*;
import com.amazonaws.util.*;
import com.amazonaws.protocol.json.*;
import com.amazonaws.util.AWSRequestMetrics.Field;
import com.amazonaws.annotation.ThreadSafe;
import com.amazonaws.client.AwsSyncClientParams;
import com.amazonaws.client.builder.AdvancedConfig;

import com.amazonaws.services.ec2.AmazonEC2ClientBuilder;
import com.amazonaws.services.ec2.waiters.AmazonEC2Waiters;

import com.amazonaws.AmazonServiceException;

import com.amazonaws.services.ec2.model.*;
import com.amazonaws.services.ec2.model.transform.*;

/**
 * Client for accessing Amazon EC2. All service calls made using this client are blocking, and will not return until the
 * service call completes.
 * 

* Amazon Elastic Compute Cloud *

* Amazon Elastic Compute Cloud (Amazon EC2) provides secure and resizable computing capacity in the AWS cloud. Using * Amazon EC2 eliminates the need to invest in hardware up front, so you can develop and deploy applications faster. *

*

* To learn more, see the following resources: *

* */ @ThreadSafe @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AmazonEC2Client extends AmazonWebServiceClient implements AmazonEC2 { /** Provider for AWS credentials. */ private final AWSCredentialsProvider awsCredentialsProvider; private static final Log log = LogFactory.getLog(AmazonEC2.class); /** Default signing name for the service. */ private static final String DEFAULT_SIGNING_NAME = "ec2"; private volatile AmazonEC2Waiters waiters; /** Client configuration factory providing ClientConfigurations tailored to this client */ protected static final ClientConfigurationFactory configFactory = new ClientConfigurationFactory(); private final AdvancedConfig advancedConfig; /** * List of exception unmarshallers for all modeled exceptions */ protected final List> exceptionUnmarshallers = new ArrayList>(); /** * Constructs a new client to invoke service methods on Amazon EC2. A credentials provider chain will be used that * searches for credentials in this order: *
    *
  • Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
  • *
  • Java System Properties - aws.accessKeyId and aws.secretKey
  • *
  • Instance profile credentials delivered through the Amazon EC2 metadata service
  • *
* *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @see DefaultAWSCredentialsProviderChain * @deprecated use {@link AmazonEC2ClientBuilder#defaultClient()} */ @Deprecated public AmazonEC2Client() { this(DefaultAWSCredentialsProviderChain.getInstance(), configFactory.getConfig()); } /** * Constructs a new client to invoke service methods on Amazon EC2. A credentials provider chain will be used that * searches for credentials in this order: *

    *
  • Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
  • *
  • Java System Properties - aws.accessKeyId and aws.secretKey
  • *
  • Instance profile credentials delivered through the Amazon EC2 metadata service
  • *
* *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param clientConfiguration * The client configuration options controlling how this client connects to Amazon EC2 (ex: proxy settings, * retry counts, etc.). * * @see DefaultAWSCredentialsProviderChain * @deprecated use {@link AmazonEC2ClientBuilder#withClientConfiguration(ClientConfiguration)} */ @Deprecated public AmazonEC2Client(ClientConfiguration clientConfiguration) { this(DefaultAWSCredentialsProviderChain.getInstance(), clientConfiguration); } /** * Constructs a new client to invoke service methods on Amazon EC2 using the specified AWS account credentials. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param awsCredentials * The AWS credentials (access key ID and secret key) to use when authenticating with AWS services. * @deprecated use {@link AmazonEC2ClientBuilder#withCredentials(AWSCredentialsProvider)} for example: * {@code AmazonEC2ClientBuilder.standard().withCredentials(new AWSStaticCredentialsProvider(awsCredentials)).build();} */ @Deprecated public AmazonEC2Client(AWSCredentials awsCredentials) { this(awsCredentials, configFactory.getConfig()); } /** * Constructs a new client to invoke service methods on Amazon EC2 using the specified AWS account credentials and * client configuration options. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param awsCredentials * The AWS credentials (access key ID and secret key) to use when authenticating with AWS services. * @param clientConfiguration * The client configuration options controlling how this client connects to Amazon EC2 (ex: proxy settings, * retry counts, etc.). * @deprecated use {@link AmazonEC2ClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AmazonEC2ClientBuilder#withClientConfiguration(ClientConfiguration)} */ @Deprecated public AmazonEC2Client(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration) { super(clientConfiguration); this.awsCredentialsProvider = new StaticCredentialsProvider(awsCredentials); this.advancedConfig = AdvancedConfig.EMPTY; init(); } /** * Constructs a new client to invoke service methods on Amazon EC2 using the specified AWS account credentials * provider. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials to authenticate requests with AWS services. * @deprecated use {@link AmazonEC2ClientBuilder#withCredentials(AWSCredentialsProvider)} */ @Deprecated public AmazonEC2Client(AWSCredentialsProvider awsCredentialsProvider) { this(awsCredentialsProvider, configFactory.getConfig()); } /** * Constructs a new client to invoke service methods on Amazon EC2 using the specified AWS account credentials * provider and client configuration options. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials to authenticate requests with AWS services. * @param clientConfiguration * The client configuration options controlling how this client connects to Amazon EC2 (ex: proxy settings, * retry counts, etc.). * @deprecated use {@link AmazonEC2ClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AmazonEC2ClientBuilder#withClientConfiguration(ClientConfiguration)} */ @Deprecated public AmazonEC2Client(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration) { this(awsCredentialsProvider, clientConfiguration, null); } /** * Constructs a new client to invoke service methods on Amazon EC2 using the specified AWS account credentials * provider, client configuration options, and request metric collector. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials to authenticate requests with AWS services. * @param clientConfiguration * The client configuration options controlling how this client connects to Amazon EC2 (ex: proxy settings, * retry counts, etc.). * @param requestMetricCollector * optional request metric collector * @deprecated use {@link AmazonEC2ClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AmazonEC2ClientBuilder#withClientConfiguration(ClientConfiguration)} and * {@link AmazonEC2ClientBuilder#withMetricsCollector(RequestMetricCollector)} */ @Deprecated public AmazonEC2Client(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, RequestMetricCollector requestMetricCollector) { super(clientConfiguration, requestMetricCollector); this.awsCredentialsProvider = awsCredentialsProvider; this.advancedConfig = AdvancedConfig.EMPTY; init(); } public static AmazonEC2ClientBuilder builder() { return AmazonEC2ClientBuilder.standard(); } /** * Constructs a new client to invoke service methods on Amazon EC2 using the specified parameters. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param clientParams * Object providing client parameters. */ AmazonEC2Client(AwsSyncClientParams clientParams) { this(clientParams, false); } /** * Constructs a new client to invoke service methods on Amazon EC2 using the specified parameters. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param clientParams * Object providing client parameters. */ AmazonEC2Client(AwsSyncClientParams clientParams, boolean endpointDiscoveryEnabled) { super(clientParams); this.awsCredentialsProvider = clientParams.getCredentialsProvider(); this.advancedConfig = clientParams.getAdvancedConfig(); init(); } private void init() { exceptionUnmarshallers.add(new LegacyErrorUnmarshaller(com.amazonaws.services.ec2.model.AmazonEC2Exception.class)); setServiceNameIntern(DEFAULT_SIGNING_NAME); setEndpointPrefix(ENDPOINT_PREFIX); // calling this.setEndPoint(...) will also modify the signer accordingly this.setEndpoint("https://ec2.us-east-1.amazonaws.com"); HandlerChainFactory chainFactory = new HandlerChainFactory(); requestHandler2s.addAll(chainFactory.newRequestHandlerChain("/com/amazonaws/services/ec2/request.handlers")); requestHandler2s.addAll(chainFactory.newRequestHandler2Chain("/com/amazonaws/services/ec2/request.handler2s")); requestHandler2s.addAll(chainFactory.getGlobalHandlers()); } /** *

* Accepts the Convertible Reserved Instance exchange quote described in the * GetReservedInstancesExchangeQuote call. *

* * @param acceptReservedInstancesExchangeQuoteRequest * Contains the parameters for accepting the quote. * @return Result of the AcceptReservedInstancesExchangeQuote operation returned by the service. * @sample AmazonEC2.AcceptReservedInstancesExchangeQuote * @see AWS API Documentation */ @Override public AcceptReservedInstancesExchangeQuoteResult acceptReservedInstancesExchangeQuote(AcceptReservedInstancesExchangeQuoteRequest request) { request = beforeClientExecution(request); return executeAcceptReservedInstancesExchangeQuote(request); } @SdkInternalApi final AcceptReservedInstancesExchangeQuoteResult executeAcceptReservedInstancesExchangeQuote( AcceptReservedInstancesExchangeQuoteRequest acceptReservedInstancesExchangeQuoteRequest) { ExecutionContext executionContext = createExecutionContext(acceptReservedInstancesExchangeQuoteRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AcceptReservedInstancesExchangeQuoteRequestMarshaller().marshall(super .beforeMarshalling(acceptReservedInstancesExchangeQuoteRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AcceptReservedInstancesExchangeQuote"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AcceptReservedInstancesExchangeQuoteResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Accepts a request to attach a VPC to a transit gateway. *

*

* The VPC attachment must be in the pendingAcceptance state. Use * DescribeTransitGatewayVpcAttachments to view your pending VPC attachment requests. Use * RejectTransitGatewayVpcAttachment to reject a VPC attachment request. *

* * @param acceptTransitGatewayVpcAttachmentRequest * @return Result of the AcceptTransitGatewayVpcAttachment operation returned by the service. * @sample AmazonEC2.AcceptTransitGatewayVpcAttachment * @see AWS API Documentation */ @Override public AcceptTransitGatewayVpcAttachmentResult acceptTransitGatewayVpcAttachment(AcceptTransitGatewayVpcAttachmentRequest request) { request = beforeClientExecution(request); return executeAcceptTransitGatewayVpcAttachment(request); } @SdkInternalApi final AcceptTransitGatewayVpcAttachmentResult executeAcceptTransitGatewayVpcAttachment( AcceptTransitGatewayVpcAttachmentRequest acceptTransitGatewayVpcAttachmentRequest) { ExecutionContext executionContext = createExecutionContext(acceptTransitGatewayVpcAttachmentRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AcceptTransitGatewayVpcAttachmentRequestMarshaller().marshall(super.beforeMarshalling(acceptTransitGatewayVpcAttachmentRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AcceptTransitGatewayVpcAttachment"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AcceptTransitGatewayVpcAttachmentResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Accepts one or more interface VPC endpoint connection requests to your VPC endpoint service. *

* * @param acceptVpcEndpointConnectionsRequest * @return Result of the AcceptVpcEndpointConnections operation returned by the service. * @sample AmazonEC2.AcceptVpcEndpointConnections * @see AWS API Documentation */ @Override public AcceptVpcEndpointConnectionsResult acceptVpcEndpointConnections(AcceptVpcEndpointConnectionsRequest request) { request = beforeClientExecution(request); return executeAcceptVpcEndpointConnections(request); } @SdkInternalApi final AcceptVpcEndpointConnectionsResult executeAcceptVpcEndpointConnections(AcceptVpcEndpointConnectionsRequest acceptVpcEndpointConnectionsRequest) { ExecutionContext executionContext = createExecutionContext(acceptVpcEndpointConnectionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AcceptVpcEndpointConnectionsRequestMarshaller().marshall(super.beforeMarshalling(acceptVpcEndpointConnectionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AcceptVpcEndpointConnections"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AcceptVpcEndpointConnectionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Accept a VPC peering connection request. To accept a request, the VPC peering connection must be in the * pending-acceptance state, and you must be the owner of the peer VPC. Use * DescribeVpcPeeringConnections to view your outstanding VPC peering connection requests. *

*

* For an inter-Region VPC peering connection request, you must accept the VPC peering connection in the Region of * the accepter VPC. *

* * @param acceptVpcPeeringConnectionRequest * @return Result of the AcceptVpcPeeringConnection operation returned by the service. * @sample AmazonEC2.AcceptVpcPeeringConnection * @see AWS * API Documentation */ @Override public AcceptVpcPeeringConnectionResult acceptVpcPeeringConnection(AcceptVpcPeeringConnectionRequest request) { request = beforeClientExecution(request); return executeAcceptVpcPeeringConnection(request); } @SdkInternalApi final AcceptVpcPeeringConnectionResult executeAcceptVpcPeeringConnection(AcceptVpcPeeringConnectionRequest acceptVpcPeeringConnectionRequest) { ExecutionContext executionContext = createExecutionContext(acceptVpcPeeringConnectionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AcceptVpcPeeringConnectionRequestMarshaller().marshall(super.beforeMarshalling(acceptVpcPeeringConnectionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AcceptVpcPeeringConnection"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AcceptVpcPeeringConnectionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public AcceptVpcPeeringConnectionResult acceptVpcPeeringConnection() { return acceptVpcPeeringConnection(new AcceptVpcPeeringConnectionRequest()); } /** *

* Advertises an IPv4 address range that is provisioned for use with your AWS resources through bring your own IP * addresses (BYOIP). *

*

* You can perform this operation at most once every 10 seconds, even if you specify different address ranges each * time. *

*

* We recommend that you stop advertising the BYOIP CIDR from other locations when you advertise it from AWS. To * minimize down time, you can configure your AWS resources to use an address from a BYOIP CIDR before it is * advertised, and then simultaneously stop advertising it from the current location and start advertising it * through AWS. *

*

* It can take a few minutes before traffic to the specified addresses starts routing to AWS because of BGP * propagation delays. *

*

* To stop advertising the BYOIP CIDR, use WithdrawByoipCidr. *

* * @param advertiseByoipCidrRequest * @return Result of the AdvertiseByoipCidr operation returned by the service. * @sample AmazonEC2.AdvertiseByoipCidr * @see AWS API * Documentation */ @Override public AdvertiseByoipCidrResult advertiseByoipCidr(AdvertiseByoipCidrRequest request) { request = beforeClientExecution(request); return executeAdvertiseByoipCidr(request); } @SdkInternalApi final AdvertiseByoipCidrResult executeAdvertiseByoipCidr(AdvertiseByoipCidrRequest advertiseByoipCidrRequest) { ExecutionContext executionContext = createExecutionContext(advertiseByoipCidrRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AdvertiseByoipCidrRequestMarshaller().marshall(super.beforeMarshalling(advertiseByoipCidrRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AdvertiseByoipCidr"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AdvertiseByoipCidrResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Allocates an Elastic IP address to your AWS account. After you allocate the Elastic IP address you can associate * it with an instance or network interface. After you release an Elastic IP address, it is released to the IP * address pool and can be allocated to a different AWS account. *

*

* You can allocate an Elastic IP address from an address pool owned by AWS or from an address pool created from a * public IPv4 address range that you have brought to AWS for use with your AWS resources using bring your own IP * addresses (BYOIP). For more information, see Bring Your Own IP Addresses (BYOIP) * in the Amazon Elastic Compute Cloud User Guide. *

*

* [EC2-VPC] If you release an Elastic IP address, you might be able to recover it. You cannot recover an Elastic IP * address that you released after it is allocated to another AWS account. You cannot recover an Elastic IP address * for EC2-Classic. To attempt to recover an Elastic IP address that you released, specify it in this operation. *

*

* An Elastic IP address is for use either in the EC2-Classic platform or in a VPC. By default, you can allocate 5 * Elastic IP addresses for EC2-Classic per Region and 5 Elastic IP addresses for EC2-VPC per Region. *

*

* For more information, see Elastic IP Addresses * in the Amazon Elastic Compute Cloud User Guide. *

* * @param allocateAddressRequest * @return Result of the AllocateAddress operation returned by the service. * @sample AmazonEC2.AllocateAddress * @see AWS API * Documentation */ @Override public AllocateAddressResult allocateAddress(AllocateAddressRequest request) { request = beforeClientExecution(request); return executeAllocateAddress(request); } @SdkInternalApi final AllocateAddressResult executeAllocateAddress(AllocateAddressRequest allocateAddressRequest) { ExecutionContext executionContext = createExecutionContext(allocateAddressRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AllocateAddressRequestMarshaller().marshall(super.beforeMarshalling(allocateAddressRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AllocateAddress"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AllocateAddressResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public AllocateAddressResult allocateAddress() { return allocateAddress(new AllocateAddressRequest()); } /** *

* Allocates a Dedicated Host to your account. At a minimum, specify the instance size type, Availability Zone, and * quantity of hosts to allocate. *

* * @param allocateHostsRequest * @return Result of the AllocateHosts operation returned by the service. * @sample AmazonEC2.AllocateHosts * @see AWS API * Documentation */ @Override public AllocateHostsResult allocateHosts(AllocateHostsRequest request) { request = beforeClientExecution(request); return executeAllocateHosts(request); } @SdkInternalApi final AllocateHostsResult executeAllocateHosts(AllocateHostsRequest allocateHostsRequest) { ExecutionContext executionContext = createExecutionContext(allocateHostsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AllocateHostsRequestMarshaller().marshall(super.beforeMarshalling(allocateHostsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AllocateHosts"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new AllocateHostsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Applies a security group to the association between the target network and the Client VPN endpoint. This action * replaces the existing security groups with the specified security groups. *

* * @param applySecurityGroupsToClientVpnTargetNetworkRequest * @return Result of the ApplySecurityGroupsToClientVpnTargetNetwork operation returned by the service. * @sample AmazonEC2.ApplySecurityGroupsToClientVpnTargetNetwork * @see AWS API Documentation */ @Override public ApplySecurityGroupsToClientVpnTargetNetworkResult applySecurityGroupsToClientVpnTargetNetwork( ApplySecurityGroupsToClientVpnTargetNetworkRequest request) { request = beforeClientExecution(request); return executeApplySecurityGroupsToClientVpnTargetNetwork(request); } @SdkInternalApi final ApplySecurityGroupsToClientVpnTargetNetworkResult executeApplySecurityGroupsToClientVpnTargetNetwork( ApplySecurityGroupsToClientVpnTargetNetworkRequest applySecurityGroupsToClientVpnTargetNetworkRequest) { ExecutionContext executionContext = createExecutionContext(applySecurityGroupsToClientVpnTargetNetworkRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ApplySecurityGroupsToClientVpnTargetNetworkRequestMarshaller().marshall(super .beforeMarshalling(applySecurityGroupsToClientVpnTargetNetworkRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ApplySecurityGroupsToClientVpnTargetNetwork"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ApplySecurityGroupsToClientVpnTargetNetworkResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Assigns one or more IPv6 addresses to the specified network interface. You can specify one or more specific IPv6 * addresses, or you can specify the number of IPv6 addresses to be automatically assigned from within the subnet's * IPv6 CIDR block range. You can assign as many IPv6 addresses to a network interface as you can assign private * IPv4 addresses, and the limit varies per instance type. For information, see IP Addresses Per * Network Interface Per Instance Type in the Amazon Elastic Compute Cloud User Guide. *

* * @param assignIpv6AddressesRequest * @return Result of the AssignIpv6Addresses operation returned by the service. * @sample AmazonEC2.AssignIpv6Addresses * @see AWS API * Documentation */ @Override public AssignIpv6AddressesResult assignIpv6Addresses(AssignIpv6AddressesRequest request) { request = beforeClientExecution(request); return executeAssignIpv6Addresses(request); } @SdkInternalApi final AssignIpv6AddressesResult executeAssignIpv6Addresses(AssignIpv6AddressesRequest assignIpv6AddressesRequest) { ExecutionContext executionContext = createExecutionContext(assignIpv6AddressesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AssignIpv6AddressesRequestMarshaller().marshall(super.beforeMarshalling(assignIpv6AddressesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AssignIpv6Addresses"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AssignIpv6AddressesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Assigns one or more secondary private IP addresses to the specified network interface. *

*

* You can specify one or more specific secondary IP addresses, or you can specify the number of secondary IP * addresses to be automatically assigned within the subnet's CIDR block range. The number of secondary IP addresses * that you can assign to an instance varies by instance type. For information about instance types, see Instance Types in the * Amazon Elastic Compute Cloud User Guide. For more information about Elastic IP addresses, see Elastic IP Addresses * in the Amazon Elastic Compute Cloud User Guide. *

*

* When you move a secondary private IP address to another network interface, any Elastic IP address that is * associated with the IP address is also moved. *

*

* Remapping an IP address is an asynchronous operation. When you move an IP address from one network interface to * another, check network/interfaces/macs/mac/local-ipv4s in the instance metadata to confirm that the * remapping is complete. *

* * @param assignPrivateIpAddressesRequest * Contains the parameters for AssignPrivateIpAddresses. * @return Result of the AssignPrivateIpAddresses operation returned by the service. * @sample AmazonEC2.AssignPrivateIpAddresses * @see AWS * API Documentation */ @Override public AssignPrivateIpAddressesResult assignPrivateIpAddresses(AssignPrivateIpAddressesRequest request) { request = beforeClientExecution(request); return executeAssignPrivateIpAddresses(request); } @SdkInternalApi final AssignPrivateIpAddressesResult executeAssignPrivateIpAddresses(AssignPrivateIpAddressesRequest assignPrivateIpAddressesRequest) { ExecutionContext executionContext = createExecutionContext(assignPrivateIpAddressesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AssignPrivateIpAddressesRequestMarshaller().marshall(super.beforeMarshalling(assignPrivateIpAddressesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AssignPrivateIpAddresses"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AssignPrivateIpAddressesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Associates an Elastic IP address with an instance or a network interface. Before you can use an Elastic IP * address, you must allocate it to your account. *

*

* An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses * in the Amazon Elastic Compute Cloud User Guide. *

*

* [EC2-Classic, VPC in an EC2-VPC-only account] If the Elastic IP address is already associated with a different * instance, it is disassociated from that instance and associated with the specified instance. If you associate an * Elastic IP address with an instance that has an existing Elastic IP address, the existing address is * disassociated from the instance, but remains allocated to your account. *

*

* [VPC in an EC2-Classic account] If you don't specify a private IP address, the Elastic IP address is associated * with the primary IP address. If the Elastic IP address is already associated with a different instance or a * network interface, you get an error unless you allow reassociation. You cannot associate an Elastic IP address * with an instance or network interface that has an existing Elastic IP address. *

* *

* This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error, * and you may be charged for each time the Elastic IP address is remapped to the same instance. For more * information, see the Elastic IP Addresses section of Amazon * EC2 Pricing. *

*
* * @param associateAddressRequest * @return Result of the AssociateAddress operation returned by the service. * @sample AmazonEC2.AssociateAddress * @see AWS API * Documentation */ @Override public AssociateAddressResult associateAddress(AssociateAddressRequest request) { request = beforeClientExecution(request); return executeAssociateAddress(request); } @SdkInternalApi final AssociateAddressResult executeAssociateAddress(AssociateAddressRequest associateAddressRequest) { ExecutionContext executionContext = createExecutionContext(associateAddressRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AssociateAddressRequestMarshaller().marshall(super.beforeMarshalling(associateAddressRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AssociateAddress"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AssociateAddressResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Associates a target network with a Client VPN endpoint. A target network is a subnet in a VPC. You can associate * multiple subnets from the same VPC with a Client VPN endpoint. You can associate only one subnet in each * Availability Zone. We recommend that you associate at least two subnets to provide Availability Zone redundancy. *

* * @param associateClientVpnTargetNetworkRequest * @return Result of the AssociateClientVpnTargetNetwork operation returned by the service. * @sample AmazonEC2.AssociateClientVpnTargetNetwork * @see AWS API Documentation */ @Override public AssociateClientVpnTargetNetworkResult associateClientVpnTargetNetwork(AssociateClientVpnTargetNetworkRequest request) { request = beforeClientExecution(request); return executeAssociateClientVpnTargetNetwork(request); } @SdkInternalApi final AssociateClientVpnTargetNetworkResult executeAssociateClientVpnTargetNetwork( AssociateClientVpnTargetNetworkRequest associateClientVpnTargetNetworkRequest) { ExecutionContext executionContext = createExecutionContext(associateClientVpnTargetNetworkRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AssociateClientVpnTargetNetworkRequestMarshaller().marshall(super.beforeMarshalling(associateClientVpnTargetNetworkRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AssociateClientVpnTargetNetwork"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AssociateClientVpnTargetNetworkResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Associates a set of DHCP options (that you've previously created) with the specified VPC, or associates no DHCP * options with the VPC. *

*

* After you associate the options with the VPC, any existing instances and all new instances that you launch in * that VPC use the options. You don't need to restart or relaunch the instances. They automatically pick up the * changes within a few hours, depending on how frequently the instance renews its DHCP lease. You can explicitly * renew the lease using the operating system on the instance. *

*

* For more information, see DHCP * Options Sets in the Amazon Virtual Private Cloud User Guide. *

* * @param associateDhcpOptionsRequest * @return Result of the AssociateDhcpOptions operation returned by the service. * @sample AmazonEC2.AssociateDhcpOptions * @see AWS API * Documentation */ @Override public AssociateDhcpOptionsResult associateDhcpOptions(AssociateDhcpOptionsRequest request) { request = beforeClientExecution(request); return executeAssociateDhcpOptions(request); } @SdkInternalApi final AssociateDhcpOptionsResult executeAssociateDhcpOptions(AssociateDhcpOptionsRequest associateDhcpOptionsRequest) { ExecutionContext executionContext = createExecutionContext(associateDhcpOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AssociateDhcpOptionsRequestMarshaller().marshall(super.beforeMarshalling(associateDhcpOptionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AssociateDhcpOptions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AssociateDhcpOptionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Associates an IAM instance profile with a running or stopped instance. You cannot associate more than one IAM * instance profile with an instance. *

* * @param associateIamInstanceProfileRequest * @return Result of the AssociateIamInstanceProfile operation returned by the service. * @sample AmazonEC2.AssociateIamInstanceProfile * @see AWS API Documentation */ @Override public AssociateIamInstanceProfileResult associateIamInstanceProfile(AssociateIamInstanceProfileRequest request) { request = beforeClientExecution(request); return executeAssociateIamInstanceProfile(request); } @SdkInternalApi final AssociateIamInstanceProfileResult executeAssociateIamInstanceProfile(AssociateIamInstanceProfileRequest associateIamInstanceProfileRequest) { ExecutionContext executionContext = createExecutionContext(associateIamInstanceProfileRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AssociateIamInstanceProfileRequestMarshaller().marshall(super.beforeMarshalling(associateIamInstanceProfileRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AssociateIamInstanceProfile"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AssociateIamInstanceProfileResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Associates a subnet with a route table. The subnet and route table must be in the same VPC. This association * causes traffic originating from the subnet to be routed according to the routes in the route table. The action * returns an association ID, which you need in order to disassociate the route table from the subnet later. A route * table can be associated with multiple subnets. *

*

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

* * @param associateRouteTableRequest * @return Result of the AssociateRouteTable operation returned by the service. * @sample AmazonEC2.AssociateRouteTable * @see AWS API * Documentation */ @Override public AssociateRouteTableResult associateRouteTable(AssociateRouteTableRequest request) { request = beforeClientExecution(request); return executeAssociateRouteTable(request); } @SdkInternalApi final AssociateRouteTableResult executeAssociateRouteTable(AssociateRouteTableRequest associateRouteTableRequest) { ExecutionContext executionContext = createExecutionContext(associateRouteTableRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AssociateRouteTableRequestMarshaller().marshall(super.beforeMarshalling(associateRouteTableRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AssociateRouteTable"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AssociateRouteTableResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Associates a CIDR block with your subnet. You can only associate a single IPv6 CIDR block with your subnet. An * IPv6 CIDR block must have a prefix length of /64. *

* * @param associateSubnetCidrBlockRequest * @return Result of the AssociateSubnetCidrBlock operation returned by the service. * @sample AmazonEC2.AssociateSubnetCidrBlock * @see AWS * API Documentation */ @Override public AssociateSubnetCidrBlockResult associateSubnetCidrBlock(AssociateSubnetCidrBlockRequest request) { request = beforeClientExecution(request); return executeAssociateSubnetCidrBlock(request); } @SdkInternalApi final AssociateSubnetCidrBlockResult executeAssociateSubnetCidrBlock(AssociateSubnetCidrBlockRequest associateSubnetCidrBlockRequest) { ExecutionContext executionContext = createExecutionContext(associateSubnetCidrBlockRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AssociateSubnetCidrBlockRequestMarshaller().marshall(super.beforeMarshalling(associateSubnetCidrBlockRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AssociateSubnetCidrBlock"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AssociateSubnetCidrBlockResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Associates the specified attachment with the specified transit gateway route table. You can associate only one * route table with an attachment. *

* * @param associateTransitGatewayRouteTableRequest * @return Result of the AssociateTransitGatewayRouteTable operation returned by the service. * @sample AmazonEC2.AssociateTransitGatewayRouteTable * @see AWS API Documentation */ @Override public AssociateTransitGatewayRouteTableResult associateTransitGatewayRouteTable(AssociateTransitGatewayRouteTableRequest request) { request = beforeClientExecution(request); return executeAssociateTransitGatewayRouteTable(request); } @SdkInternalApi final AssociateTransitGatewayRouteTableResult executeAssociateTransitGatewayRouteTable( AssociateTransitGatewayRouteTableRequest associateTransitGatewayRouteTableRequest) { ExecutionContext executionContext = createExecutionContext(associateTransitGatewayRouteTableRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AssociateTransitGatewayRouteTableRequestMarshaller().marshall(super.beforeMarshalling(associateTransitGatewayRouteTableRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AssociateTransitGatewayRouteTable"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AssociateTransitGatewayRouteTableResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Associates a CIDR block with your VPC. You can associate a secondary IPv4 CIDR block, or you can associate an * Amazon-provided IPv6 CIDR block. The IPv6 CIDR block size is fixed at /56. *

*

* For more information about associating CIDR blocks with your VPC and applicable restrictions, see VPC and Subnet Sizing in * the Amazon Virtual Private Cloud User Guide. *

* * @param associateVpcCidrBlockRequest * @return Result of the AssociateVpcCidrBlock operation returned by the service. * @sample AmazonEC2.AssociateVpcCidrBlock * @see AWS API * Documentation */ @Override public AssociateVpcCidrBlockResult associateVpcCidrBlock(AssociateVpcCidrBlockRequest request) { request = beforeClientExecution(request); return executeAssociateVpcCidrBlock(request); } @SdkInternalApi final AssociateVpcCidrBlockResult executeAssociateVpcCidrBlock(AssociateVpcCidrBlockRequest associateVpcCidrBlockRequest) { ExecutionContext executionContext = createExecutionContext(associateVpcCidrBlockRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AssociateVpcCidrBlockRequestMarshaller().marshall(super.beforeMarshalling(associateVpcCidrBlockRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AssociateVpcCidrBlock"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AssociateVpcCidrBlockResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Links an EC2-Classic instance to a ClassicLink-enabled VPC through one or more of the VPC's security groups. You * cannot link an EC2-Classic instance to more than one VPC at a time. You can only link an instance that's in the * running state. An instance is automatically unlinked from a VPC when it's stopped - you can link it * to the VPC again when you restart it. *

*

* After you've linked an instance, you cannot change the VPC security groups that are associated with it. To change * the security groups, you must first unlink the instance, and then link it again. *

*

* Linking your instance to a VPC is sometimes referred to as attaching your instance. *

* * @param attachClassicLinkVpcRequest * @return Result of the AttachClassicLinkVpc operation returned by the service. * @sample AmazonEC2.AttachClassicLinkVpc * @see AWS API * Documentation */ @Override public AttachClassicLinkVpcResult attachClassicLinkVpc(AttachClassicLinkVpcRequest request) { request = beforeClientExecution(request); return executeAttachClassicLinkVpc(request); } @SdkInternalApi final AttachClassicLinkVpcResult executeAttachClassicLinkVpc(AttachClassicLinkVpcRequest attachClassicLinkVpcRequest) { ExecutionContext executionContext = createExecutionContext(attachClassicLinkVpcRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AttachClassicLinkVpcRequestMarshaller().marshall(super.beforeMarshalling(attachClassicLinkVpcRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AttachClassicLinkVpc"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AttachClassicLinkVpcResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Attaches an internet gateway to a VPC, enabling connectivity between the internet and the VPC. For more * information about your VPC and internet gateway, see the Amazon Virtual Private Cloud User Guide. *

* * @param attachInternetGatewayRequest * @return Result of the AttachInternetGateway operation returned by the service. * @sample AmazonEC2.AttachInternetGateway * @see AWS API * Documentation */ @Override public AttachInternetGatewayResult attachInternetGateway(AttachInternetGatewayRequest request) { request = beforeClientExecution(request); return executeAttachInternetGateway(request); } @SdkInternalApi final AttachInternetGatewayResult executeAttachInternetGateway(AttachInternetGatewayRequest attachInternetGatewayRequest) { ExecutionContext executionContext = createExecutionContext(attachInternetGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AttachInternetGatewayRequestMarshaller().marshall(super.beforeMarshalling(attachInternetGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AttachInternetGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AttachInternetGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Attaches a network interface to an instance. *

* * @param attachNetworkInterfaceRequest * Contains the parameters for AttachNetworkInterface. * @return Result of the AttachNetworkInterface operation returned by the service. * @sample AmazonEC2.AttachNetworkInterface * @see AWS API * Documentation */ @Override public AttachNetworkInterfaceResult attachNetworkInterface(AttachNetworkInterfaceRequest request) { request = beforeClientExecution(request); return executeAttachNetworkInterface(request); } @SdkInternalApi final AttachNetworkInterfaceResult executeAttachNetworkInterface(AttachNetworkInterfaceRequest attachNetworkInterfaceRequest) { ExecutionContext executionContext = createExecutionContext(attachNetworkInterfaceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AttachNetworkInterfaceRequestMarshaller().marshall(super.beforeMarshalling(attachNetworkInterfaceRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AttachNetworkInterface"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AttachNetworkInterfaceResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Attaches an EBS volume to a running or stopped instance and exposes it to the instance with the specified device * name. *

*

* Encrypted EBS volumes must be attached to instances that support Amazon EBS encryption. For more information, see * Amazon EBS Encryption in the * Amazon Elastic Compute Cloud User Guide. *

*

* After you attach an EBS volume, you must make it available. For more information, see Making an EBS Volume Available * For Use. *

*

* If a volume has an AWS Marketplace product code: *

*
    *
  • *

    * The volume can be attached only to a stopped instance. *

    *
  • *
  • *

    * AWS Marketplace product codes are copied from the volume to the instance. *

    *
  • *
  • *

    * You must be subscribed to the product. *

    *
  • *
  • *

    * The instance type and operating system of the instance must support the product. For example, you can't detach a * volume from a Windows instance and attach it to a Linux instance. *

    *
  • *
*

* For more information, see Attaching Amazon EBS * Volumes in the Amazon Elastic Compute Cloud User Guide. *

* * @param attachVolumeRequest * Contains the parameters for AttachVolume. * @return Result of the AttachVolume operation returned by the service. * @sample AmazonEC2.AttachVolume * @see AWS API * Documentation */ @Override public AttachVolumeResult attachVolume(AttachVolumeRequest request) { request = beforeClientExecution(request); return executeAttachVolume(request); } @SdkInternalApi final AttachVolumeResult executeAttachVolume(AttachVolumeRequest attachVolumeRequest) { ExecutionContext executionContext = createExecutionContext(attachVolumeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AttachVolumeRequestMarshaller().marshall(super.beforeMarshalling(attachVolumeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AttachVolume"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new AttachVolumeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Attaches a virtual private gateway to a VPC. You can attach one virtual private gateway to one VPC at a time. *

*

* For more information, see AWS Site-to-Site * VPN in the AWS Site-to-Site VPN User Guide. *

* * @param attachVpnGatewayRequest * Contains the parameters for AttachVpnGateway. * @return Result of the AttachVpnGateway operation returned by the service. * @sample AmazonEC2.AttachVpnGateway * @see AWS API * Documentation */ @Override public AttachVpnGatewayResult attachVpnGateway(AttachVpnGatewayRequest request) { request = beforeClientExecution(request); return executeAttachVpnGateway(request); } @SdkInternalApi final AttachVpnGatewayResult executeAttachVpnGateway(AttachVpnGatewayRequest attachVpnGatewayRequest) { ExecutionContext executionContext = createExecutionContext(attachVpnGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AttachVpnGatewayRequestMarshaller().marshall(super.beforeMarshalling(attachVpnGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AttachVpnGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AttachVpnGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Adds an ingress authorization rule to a Client VPN endpoint. Ingress authorization rules act as firewall rules * that grant access to networks. You must configure ingress authorization rules to enable clients to access * resources in AWS or on-premises networks. *

* * @param authorizeClientVpnIngressRequest * @return Result of the AuthorizeClientVpnIngress operation returned by the service. * @sample AmazonEC2.AuthorizeClientVpnIngress * @see AWS * API Documentation */ @Override public AuthorizeClientVpnIngressResult authorizeClientVpnIngress(AuthorizeClientVpnIngressRequest request) { request = beforeClientExecution(request); return executeAuthorizeClientVpnIngress(request); } @SdkInternalApi final AuthorizeClientVpnIngressResult executeAuthorizeClientVpnIngress(AuthorizeClientVpnIngressRequest authorizeClientVpnIngressRequest) { ExecutionContext executionContext = createExecutionContext(authorizeClientVpnIngressRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AuthorizeClientVpnIngressRequestMarshaller().marshall(super.beforeMarshalling(authorizeClientVpnIngressRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AuthorizeClientVpnIngress"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AuthorizeClientVpnIngressResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* [VPC only] Adds the specified egress rules to a security group for use with a VPC. *

*

* An outbound rule permits instances to send traffic to the specified IPv4 or IPv6 CIDR address ranges, or to the * instances associated with the specified destination security groups. *

*

* You specify a protocol for each rule (for example, TCP). For the TCP and UDP protocols, you must also specify the * destination port or port range. For the ICMP protocol, you must also specify the ICMP type and code. You can use * -1 for the type or code to mean all types or all codes. *

*

* Rule changes are propagated to affected instances as quickly as possible. However, a small delay might occur. *

*

* For more information about VPC security group limits, see Amazon VPC Limits. *

* * @param authorizeSecurityGroupEgressRequest * @return Result of the AuthorizeSecurityGroupEgress operation returned by the service. * @sample AmazonEC2.AuthorizeSecurityGroupEgress * @see AWS API Documentation */ @Override public AuthorizeSecurityGroupEgressResult authorizeSecurityGroupEgress(AuthorizeSecurityGroupEgressRequest request) { request = beforeClientExecution(request); return executeAuthorizeSecurityGroupEgress(request); } @SdkInternalApi final AuthorizeSecurityGroupEgressResult executeAuthorizeSecurityGroupEgress(AuthorizeSecurityGroupEgressRequest authorizeSecurityGroupEgressRequest) { ExecutionContext executionContext = createExecutionContext(authorizeSecurityGroupEgressRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AuthorizeSecurityGroupEgressRequestMarshaller().marshall(super.beforeMarshalling(authorizeSecurityGroupEgressRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AuthorizeSecurityGroupEgress"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AuthorizeSecurityGroupEgressResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Adds the specified ingress rules to a security group. *

*

* An inbound rule permits instances to receive traffic from the specified IPv4 or IPv6 CIDR address ranges, or from * the instances associated with the specified destination security groups. *

*

* You specify a protocol for each rule (for example, TCP). For TCP and UDP, you must also specify the destination * port or port range. For ICMP/ICMPv6, you must also specify the ICMP/ICMPv6 type and code. You can use -1 to mean * all types or all codes. *

*

* Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay * might occur. *

*

* For more information about VPC security group limits, see Amazon VPC Limits. *

* * @param authorizeSecurityGroupIngressRequest * @return Result of the AuthorizeSecurityGroupIngress operation returned by the service. * @sample AmazonEC2.AuthorizeSecurityGroupIngress * @see AWS API Documentation */ @Override public AuthorizeSecurityGroupIngressResult authorizeSecurityGroupIngress(AuthorizeSecurityGroupIngressRequest request) { request = beforeClientExecution(request); return executeAuthorizeSecurityGroupIngress(request); } @SdkInternalApi final AuthorizeSecurityGroupIngressResult executeAuthorizeSecurityGroupIngress(AuthorizeSecurityGroupIngressRequest authorizeSecurityGroupIngressRequest) { ExecutionContext executionContext = createExecutionContext(authorizeSecurityGroupIngressRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AuthorizeSecurityGroupIngressRequestMarshaller().marshall(super.beforeMarshalling(authorizeSecurityGroupIngressRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AuthorizeSecurityGroupIngress"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new AuthorizeSecurityGroupIngressResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Bundles an Amazon instance store-backed Windows instance. *

*

* During bundling, only the root device volume (C:\) is bundled. Data on other instance store volumes is not * preserved. *

* *

* This action is not applicable for Linux/Unix instances or Windows instances that are backed by Amazon EBS. *

*
* * @param bundleInstanceRequest * Contains the parameters for BundleInstance. * @return Result of the BundleInstance operation returned by the service. * @sample AmazonEC2.BundleInstance * @see AWS API * Documentation */ @Override public BundleInstanceResult bundleInstance(BundleInstanceRequest request) { request = beforeClientExecution(request); return executeBundleInstance(request); } @SdkInternalApi final BundleInstanceResult executeBundleInstance(BundleInstanceRequest bundleInstanceRequest) { ExecutionContext executionContext = createExecutionContext(bundleInstanceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new BundleInstanceRequestMarshaller().marshall(super.beforeMarshalling(bundleInstanceRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "BundleInstance"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new BundleInstanceResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Cancels a bundling operation for an instance store-backed Windows instance. *

* * @param cancelBundleTaskRequest * Contains the parameters for CancelBundleTask. * @return Result of the CancelBundleTask operation returned by the service. * @sample AmazonEC2.CancelBundleTask * @see AWS API * Documentation */ @Override public CancelBundleTaskResult cancelBundleTask(CancelBundleTaskRequest request) { request = beforeClientExecution(request); return executeCancelBundleTask(request); } @SdkInternalApi final CancelBundleTaskResult executeCancelBundleTask(CancelBundleTaskRequest cancelBundleTaskRequest) { ExecutionContext executionContext = createExecutionContext(cancelBundleTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CancelBundleTaskRequestMarshaller().marshall(super.beforeMarshalling(cancelBundleTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CancelBundleTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CancelBundleTaskResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Cancels the specified Capacity Reservation, releases the reserved capacity, and changes the Capacity * Reservation's state to cancelled. *

*

* Instances running in the reserved capacity continue running until you stop them. Stopped instances that target * the Capacity Reservation can no longer launch. Modify these instances to either target a different Capacity * Reservation, launch On-Demand Instance capacity, or run in any open Capacity Reservation that has matching * attributes and sufficient capacity. *

* * @param cancelCapacityReservationRequest * @return Result of the CancelCapacityReservation operation returned by the service. * @sample AmazonEC2.CancelCapacityReservation * @see AWS * API Documentation */ @Override public CancelCapacityReservationResult cancelCapacityReservation(CancelCapacityReservationRequest request) { request = beforeClientExecution(request); return executeCancelCapacityReservation(request); } @SdkInternalApi final CancelCapacityReservationResult executeCancelCapacityReservation(CancelCapacityReservationRequest cancelCapacityReservationRequest) { ExecutionContext executionContext = createExecutionContext(cancelCapacityReservationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CancelCapacityReservationRequestMarshaller().marshall(super.beforeMarshalling(cancelCapacityReservationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CancelCapacityReservation"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CancelCapacityReservationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Cancels an active conversion task. The task can be the import of an instance or volume. The action removes all * artifacts of the conversion, including a partially uploaded volume or instance. If the conversion is complete or * is in the process of transferring the final disk image, the command fails and returns an exception. *

*

* For more information, see Importing a * Virtual Machine Using the Amazon EC2 CLI. *

* * @param cancelConversionTaskRequest * @return Result of the CancelConversionTask operation returned by the service. * @sample AmazonEC2.CancelConversionTask * @see AWS API * Documentation */ @Override public CancelConversionTaskResult cancelConversionTask(CancelConversionTaskRequest request) { request = beforeClientExecution(request); return executeCancelConversionTask(request); } @SdkInternalApi final CancelConversionTaskResult executeCancelConversionTask(CancelConversionTaskRequest cancelConversionTaskRequest) { ExecutionContext executionContext = createExecutionContext(cancelConversionTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CancelConversionTaskRequestMarshaller().marshall(super.beforeMarshalling(cancelConversionTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CancelConversionTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CancelConversionTaskResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Cancels an active export task. The request removes all artifacts of the export, including any partially-created * Amazon S3 objects. If the export task is complete or is in the process of transferring the final disk image, the * command fails and returns an error. *

* * @param cancelExportTaskRequest * @return Result of the CancelExportTask operation returned by the service. * @sample AmazonEC2.CancelExportTask * @see AWS API * Documentation */ @Override public CancelExportTaskResult cancelExportTask(CancelExportTaskRequest request) { request = beforeClientExecution(request); return executeCancelExportTask(request); } @SdkInternalApi final CancelExportTaskResult executeCancelExportTask(CancelExportTaskRequest cancelExportTaskRequest) { ExecutionContext executionContext = createExecutionContext(cancelExportTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CancelExportTaskRequestMarshaller().marshall(super.beforeMarshalling(cancelExportTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CancelExportTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CancelExportTaskResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Cancels an in-process import virtual machine or import snapshot task. *

* * @param cancelImportTaskRequest * @return Result of the CancelImportTask operation returned by the service. * @sample AmazonEC2.CancelImportTask * @see AWS API * Documentation */ @Override public CancelImportTaskResult cancelImportTask(CancelImportTaskRequest request) { request = beforeClientExecution(request); return executeCancelImportTask(request); } @SdkInternalApi final CancelImportTaskResult executeCancelImportTask(CancelImportTaskRequest cancelImportTaskRequest) { ExecutionContext executionContext = createExecutionContext(cancelImportTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CancelImportTaskRequestMarshaller().marshall(super.beforeMarshalling(cancelImportTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CancelImportTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CancelImportTaskResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public CancelImportTaskResult cancelImportTask() { return cancelImportTask(new CancelImportTaskRequest()); } /** *

* Cancels the specified Reserved Instance listing in the Reserved Instance Marketplace. *

*

* For more information, see Reserved Instance * Marketplace in the Amazon Elastic Compute Cloud User Guide. *

* * @param cancelReservedInstancesListingRequest * Contains the parameters for CancelReservedInstancesListing. * @return Result of the CancelReservedInstancesListing operation returned by the service. * @sample AmazonEC2.CancelReservedInstancesListing * @see AWS API Documentation */ @Override public CancelReservedInstancesListingResult cancelReservedInstancesListing(CancelReservedInstancesListingRequest request) { request = beforeClientExecution(request); return executeCancelReservedInstancesListing(request); } @SdkInternalApi final CancelReservedInstancesListingResult executeCancelReservedInstancesListing(CancelReservedInstancesListingRequest cancelReservedInstancesListingRequest) { ExecutionContext executionContext = createExecutionContext(cancelReservedInstancesListingRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CancelReservedInstancesListingRequestMarshaller().marshall(super.beforeMarshalling(cancelReservedInstancesListingRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CancelReservedInstancesListing"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CancelReservedInstancesListingResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Cancels the specified Spot Fleet requests. *

*

* After you cancel a Spot Fleet request, the Spot Fleet launches no new Spot Instances. You must specify whether * the Spot Fleet should also terminate its Spot Instances. If you terminate the instances, the Spot Fleet request * enters the cancelled_terminating state. Otherwise, the Spot Fleet request enters the * cancelled_running state and the instances continue to run until they are interrupted or you * terminate them manually. *

* * @param cancelSpotFleetRequestsRequest * Contains the parameters for CancelSpotFleetRequests. * @return Result of the CancelSpotFleetRequests operation returned by the service. * @sample AmazonEC2.CancelSpotFleetRequests * @see AWS * API Documentation */ @Override public CancelSpotFleetRequestsResult cancelSpotFleetRequests(CancelSpotFleetRequestsRequest request) { request = beforeClientExecution(request); return executeCancelSpotFleetRequests(request); } @SdkInternalApi final CancelSpotFleetRequestsResult executeCancelSpotFleetRequests(CancelSpotFleetRequestsRequest cancelSpotFleetRequestsRequest) { ExecutionContext executionContext = createExecutionContext(cancelSpotFleetRequestsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CancelSpotFleetRequestsRequestMarshaller().marshall(super.beforeMarshalling(cancelSpotFleetRequestsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CancelSpotFleetRequests"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CancelSpotFleetRequestsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Cancels one or more Spot Instance requests. *

* *

* Canceling a Spot Instance request does not terminate running Spot Instances associated with the request. *

*
* * @param cancelSpotInstanceRequestsRequest * Contains the parameters for CancelSpotInstanceRequests. * @return Result of the CancelSpotInstanceRequests operation returned by the service. * @sample AmazonEC2.CancelSpotInstanceRequests * @see AWS * API Documentation */ @Override public CancelSpotInstanceRequestsResult cancelSpotInstanceRequests(CancelSpotInstanceRequestsRequest request) { request = beforeClientExecution(request); return executeCancelSpotInstanceRequests(request); } @SdkInternalApi final CancelSpotInstanceRequestsResult executeCancelSpotInstanceRequests(CancelSpotInstanceRequestsRequest cancelSpotInstanceRequestsRequest) { ExecutionContext executionContext = createExecutionContext(cancelSpotInstanceRequestsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CancelSpotInstanceRequestsRequestMarshaller().marshall(super.beforeMarshalling(cancelSpotInstanceRequestsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CancelSpotInstanceRequests"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CancelSpotInstanceRequestsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Determines whether a product code is associated with an instance. This action can only be used by the owner of * the product code. It is useful when a product code owner must verify whether another user's instance is eligible * for support. *

* * @param confirmProductInstanceRequest * @return Result of the ConfirmProductInstance operation returned by the service. * @sample AmazonEC2.ConfirmProductInstance * @see AWS API * Documentation */ @Override public ConfirmProductInstanceResult confirmProductInstance(ConfirmProductInstanceRequest request) { request = beforeClientExecution(request); return executeConfirmProductInstance(request); } @SdkInternalApi final ConfirmProductInstanceResult executeConfirmProductInstance(ConfirmProductInstanceRequest confirmProductInstanceRequest) { ExecutionContext executionContext = createExecutionContext(confirmProductInstanceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ConfirmProductInstanceRequestMarshaller().marshall(super.beforeMarshalling(confirmProductInstanceRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ConfirmProductInstance"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ConfirmProductInstanceResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Copies the specified Amazon FPGA Image (AFI) to the current Region. *

* * @param copyFpgaImageRequest * @return Result of the CopyFpgaImage operation returned by the service. * @sample AmazonEC2.CopyFpgaImage * @see AWS API * Documentation */ @Override public CopyFpgaImageResult copyFpgaImage(CopyFpgaImageRequest request) { request = beforeClientExecution(request); return executeCopyFpgaImage(request); } @SdkInternalApi final CopyFpgaImageResult executeCopyFpgaImage(CopyFpgaImageRequest copyFpgaImageRequest) { ExecutionContext executionContext = createExecutionContext(copyFpgaImageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CopyFpgaImageRequestMarshaller().marshall(super.beforeMarshalling(copyFpgaImageRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CopyFpgaImage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new CopyFpgaImageResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Initiates the copy of an AMI from the specified source Region to the current Region. You specify the destination * Region by using its endpoint when making the request. *

*

* Copies of encrypted backing snapshots for the AMI are encrypted. Copies of unencrypted backing snapshots remain * unencrypted, unless you set Encrypted during the copy operation. You cannot create an unencrypted * copy of an encrypted backing snapshot. *

*

* For more information about the prerequisites and limits when copying an AMI, see Copying an AMI in the Amazon * Elastic Compute Cloud User Guide. *

* * @param copyImageRequest * Contains the parameters for CopyImage. * @return Result of the CopyImage operation returned by the service. * @sample AmazonEC2.CopyImage * @see AWS API * Documentation */ @Override public CopyImageResult copyImage(CopyImageRequest request) { request = beforeClientExecution(request); return executeCopyImage(request); } @SdkInternalApi final CopyImageResult executeCopyImage(CopyImageRequest copyImageRequest) { ExecutionContext executionContext = createExecutionContext(copyImageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CopyImageRequestMarshaller().marshall(super.beforeMarshalling(copyImageRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CopyImage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new CopyImageResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Copies a point-in-time snapshot of an EBS volume and stores it in Amazon S3. You can copy the snapshot within the * same Region or from one Region to another. You can use the snapshot to create EBS volumes or Amazon Machine * Images (AMIs). *

*

* Copies of encrypted EBS snapshots remain encrypted. Copies of unencrypted snapshots remain unencrypted, unless * you enable encryption for the snapshot copy operation. By default, encrypted snapshot copies use the default AWS * Key Management Service (AWS KMS) customer master key (CMK); however, you can specify a different CMK. *

*

* To copy an encrypted snapshot that has been shared from another account, you must have permissions for the CMK * used to encrypt the snapshot. *

*

* Snapshots created by copying another snapshot have an arbitrary volume ID that should not be used for any * purpose. *

*

* For more information, see Copying an Amazon EBS * Snapshot in the Amazon Elastic Compute Cloud User Guide. *

* * @param copySnapshotRequest * Contains the parameters for CopySnapshot. * @return Result of the CopySnapshot operation returned by the service. * @sample AmazonEC2.CopySnapshot * @see AWS API * Documentation */ @Override public CopySnapshotResult copySnapshot(CopySnapshotRequest request) { request = beforeClientExecution(request); return executeCopySnapshot(request); } @SdkInternalApi final CopySnapshotResult executeCopySnapshot(CopySnapshotRequest copySnapshotRequest) { ExecutionContext executionContext = createExecutionContext(copySnapshotRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CopySnapshotRequestMarshaller().marshall(super.beforeMarshalling(copySnapshotRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CopySnapshot"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new CopySnapshotResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a new Capacity Reservation with the specified attributes. *

*

* Capacity Reservations enable you to reserve capacity for your Amazon EC2 instances in a specific Availability * Zone for any duration. This gives you the flexibility to selectively add capacity reservations and still get the * Regional RI discounts for that usage. By creating Capacity Reservations, you ensure that you always have access * to Amazon EC2 capacity when you need it, for as long as you need it. For more information, see Capacity * Reservations in the Amazon Elastic Compute Cloud User Guide. *

*

* Your request to create a Capacity Reservation could fail if Amazon EC2 does not have sufficient capacity to * fulfill the request. If your request fails due to Amazon EC2 capacity constraints, either try again at a later * time, try in a different Availability Zone, or request a smaller capacity reservation. If your application is * flexible across instance types and sizes, try to create a Capacity Reservation with different instance * attributes. *

*

* Your request could also fail if the requested quantity exceeds your On-Demand Instance limit for the selected * instance type. If your request fails due to limit constraints, increase your On-Demand Instance limit for the * required instance type and try again. For more information about increasing your instance limits, see Amazon EC2 Service Limits * in the Amazon Elastic Compute Cloud User Guide. *

* * @param createCapacityReservationRequest * @return Result of the CreateCapacityReservation operation returned by the service. * @sample AmazonEC2.CreateCapacityReservation * @see AWS * API Documentation */ @Override public CreateCapacityReservationResult createCapacityReservation(CreateCapacityReservationRequest request) { request = beforeClientExecution(request); return executeCreateCapacityReservation(request); } @SdkInternalApi final CreateCapacityReservationResult executeCreateCapacityReservation(CreateCapacityReservationRequest createCapacityReservationRequest) { ExecutionContext executionContext = createExecutionContext(createCapacityReservationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateCapacityReservationRequestMarshaller().marshall(super.beforeMarshalling(createCapacityReservationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateCapacityReservation"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateCapacityReservationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a Client VPN endpoint. A Client VPN endpoint is the resource you create and configure to enable and * manage client VPN sessions. It is the destination endpoint at which all client VPN sessions are terminated. *

* * @param createClientVpnEndpointRequest * @return Result of the CreateClientVpnEndpoint operation returned by the service. * @sample AmazonEC2.CreateClientVpnEndpoint * @see AWS * API Documentation */ @Override public CreateClientVpnEndpointResult createClientVpnEndpoint(CreateClientVpnEndpointRequest request) { request = beforeClientExecution(request); return executeCreateClientVpnEndpoint(request); } @SdkInternalApi final CreateClientVpnEndpointResult executeCreateClientVpnEndpoint(CreateClientVpnEndpointRequest createClientVpnEndpointRequest) { ExecutionContext executionContext = createExecutionContext(createClientVpnEndpointRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateClientVpnEndpointRequestMarshaller().marshall(super.beforeMarshalling(createClientVpnEndpointRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateClientVpnEndpoint"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateClientVpnEndpointResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Adds a route to a network to a Client VPN endpoint. Each Client VPN endpoint has a route table that describes the * available destination network routes. Each route in the route table specifies the path for traffic to specific * resources or networks. *

* * @param createClientVpnRouteRequest * @return Result of the CreateClientVpnRoute operation returned by the service. * @sample AmazonEC2.CreateClientVpnRoute * @see AWS API * Documentation */ @Override public CreateClientVpnRouteResult createClientVpnRoute(CreateClientVpnRouteRequest request) { request = beforeClientExecution(request); return executeCreateClientVpnRoute(request); } @SdkInternalApi final CreateClientVpnRouteResult executeCreateClientVpnRoute(CreateClientVpnRouteRequest createClientVpnRouteRequest) { ExecutionContext executionContext = createExecutionContext(createClientVpnRouteRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateClientVpnRouteRequestMarshaller().marshall(super.beforeMarshalling(createClientVpnRouteRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateClientVpnRoute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateClientVpnRouteResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Provides information to AWS about your VPN customer gateway device. The customer gateway is the appliance at your * end of the VPN connection. (The device on the AWS side of the VPN connection is the virtual private gateway.) You * must provide the Internet-routable IP address of the customer gateway's external interface. The IP address must * be static and may be behind a device performing network address translation (NAT). *

*

* For devices that use Border Gateway Protocol (BGP), you can also provide the device's BGP Autonomous System * Number (ASN). You can use an existing ASN assigned to your network. If you don't have an ASN already, you can use * a private ASN (in the 64512 - 65534 range). *

* *

* Amazon EC2 supports all 2-byte ASN numbers in the range of 1 - 65534, with the exception of 7224, which is * reserved in the us-east-1 Region, and 9059, which is reserved in the eu-west-1 Region. *

*
*

* For more information, see AWS Site-to-Site * VPN in the AWS Site-to-Site VPN User Guide. *

* *

* You cannot create more than one customer gateway with the same VPN type, IP address, and BGP ASN parameter * values. If you run an identical request more than one time, the first request creates the customer gateway, and * subsequent requests return information about the existing customer gateway. The subsequent requests do not create * new customer gateway resources. *

*
* * @param createCustomerGatewayRequest * Contains the parameters for CreateCustomerGateway. * @return Result of the CreateCustomerGateway operation returned by the service. * @sample AmazonEC2.CreateCustomerGateway * @see AWS API * Documentation */ @Override public CreateCustomerGatewayResult createCustomerGateway(CreateCustomerGatewayRequest request) { request = beforeClientExecution(request); return executeCreateCustomerGateway(request); } @SdkInternalApi final CreateCustomerGatewayResult executeCreateCustomerGateway(CreateCustomerGatewayRequest createCustomerGatewayRequest) { ExecutionContext executionContext = createExecutionContext(createCustomerGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateCustomerGatewayRequestMarshaller().marshall(super.beforeMarshalling(createCustomerGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateCustomerGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateCustomerGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a default subnet with a size /20 IPv4 CIDR block in the specified Availability Zone in your * default VPC. You can have only one default subnet per Availability Zone. For more information, see Creating a Default * Subnet in the Amazon Virtual Private Cloud User Guide. *

* * @param createDefaultSubnetRequest * @return Result of the CreateDefaultSubnet operation returned by the service. * @sample AmazonEC2.CreateDefaultSubnet * @see AWS API * Documentation */ @Override public CreateDefaultSubnetResult createDefaultSubnet(CreateDefaultSubnetRequest request) { request = beforeClientExecution(request); return executeCreateDefaultSubnet(request); } @SdkInternalApi final CreateDefaultSubnetResult executeCreateDefaultSubnet(CreateDefaultSubnetRequest createDefaultSubnetRequest) { ExecutionContext executionContext = createExecutionContext(createDefaultSubnetRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateDefaultSubnetRequestMarshaller().marshall(super.beforeMarshalling(createDefaultSubnetRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateDefaultSubnet"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateDefaultSubnetResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a default VPC with a size /16 IPv4 CIDR block and a default subnet in each Availability * Zone. For more information about the components of a default VPC, see Default VPC and Default Subnets in * the Amazon Virtual Private Cloud User Guide. You cannot specify the components of the default VPC * yourself. *

*

* If you deleted your previous default VPC, you can create a default VPC. You cannot have more than one default VPC * per Region. *

*

* If your account supports EC2-Classic, you cannot use this action to create a default VPC in a Region that * supports EC2-Classic. If you want a default VPC in a Region that supports EC2-Classic, see * "I really want a default VPC for my existing EC2 account. Is that possible?" in the Default VPCs FAQ. *

* * @param createDefaultVpcRequest * @return Result of the CreateDefaultVpc operation returned by the service. * @sample AmazonEC2.CreateDefaultVpc * @see AWS API * Documentation */ @Override public CreateDefaultVpcResult createDefaultVpc(CreateDefaultVpcRequest request) { request = beforeClientExecution(request); return executeCreateDefaultVpc(request); } @SdkInternalApi final CreateDefaultVpcResult executeCreateDefaultVpc(CreateDefaultVpcRequest createDefaultVpcRequest) { ExecutionContext executionContext = createExecutionContext(createDefaultVpcRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateDefaultVpcRequestMarshaller().marshall(super.beforeMarshalling(createDefaultVpcRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateDefaultVpc"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateDefaultVpcResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a set of DHCP options for your VPC. After creating the set, you must associate it with the VPC, causing * all existing and new instances that you launch in the VPC to use this set of DHCP options. The following are the * individual DHCP options you can specify. For more information about the options, see RFC 2132. *

*
    *
  • *

    * domain-name-servers - The IP addresses of up to four domain name servers, or AmazonProvidedDNS. The * default DHCP option set specifies AmazonProvidedDNS. If specifying more than one domain name server, specify the * IP addresses in a single parameter, separated by commas. To have your instance receive a custom DNS hostname as * specified in domain-name, you must set domain-name-servers to a custom DNS server. *

    *
  • *
  • *

    * domain-name - If you're using AmazonProvidedDNS in us-east-1, specify * ec2.internal. If you're using AmazonProvidedDNS in another Region, specify * region.compute.internal (for example, ap-northeast-1.compute.internal). Otherwise, * specify a domain name (for example, MyCompany.com). This value is used to complete unqualified DNS * hostnames. Important: Some Linux operating systems accept multiple domain names separated by spaces. * However, Windows and other Linux operating systems treat the value as a single domain, which results in * unexpected behavior. If your DHCP options set is associated with a VPC that has instances with multiple operating * systems, specify only one domain name. *

    *
  • *
  • *

    * ntp-servers - The IP addresses of up to four Network Time Protocol (NTP) servers. *

    *
  • *
  • *

    * netbios-name-servers - The IP addresses of up to four NetBIOS name servers. *

    *
  • *
  • *

    * netbios-node-type - The NetBIOS node type (1, 2, 4, or 8). We recommend that you specify 2 * (broadcast and multicast are not currently supported). For more information about these node types, see RFC 2132. *

    *
  • *
*

* Your VPC automatically starts out with a set of DHCP options that includes only a DNS server that we provide * (AmazonProvidedDNS). If you create a set of options, and if your VPC has an internet gateway, make sure to set * the domain-name-servers option either to AmazonProvidedDNS or to a domain name server * of your choice. For more information, see DHCP Options Sets in the * Amazon Virtual Private Cloud User Guide. *

* * @param createDhcpOptionsRequest * @return Result of the CreateDhcpOptions operation returned by the service. * @sample AmazonEC2.CreateDhcpOptions * @see AWS API * Documentation */ @Override public CreateDhcpOptionsResult createDhcpOptions(CreateDhcpOptionsRequest request) { request = beforeClientExecution(request); return executeCreateDhcpOptions(request); } @SdkInternalApi final CreateDhcpOptionsResult executeCreateDhcpOptions(CreateDhcpOptionsRequest createDhcpOptionsRequest) { ExecutionContext executionContext = createExecutionContext(createDhcpOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateDhcpOptionsRequestMarshaller().marshall(super.beforeMarshalling(createDhcpOptionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateDhcpOptions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateDhcpOptionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* [IPv6 only] Creates an egress-only internet gateway for your VPC. An egress-only internet gateway is used to * enable outbound communication over IPv6 from instances in your VPC to the internet, and prevents hosts outside of * your VPC from initiating an IPv6 connection with your instance. *

* * @param createEgressOnlyInternetGatewayRequest * @return Result of the CreateEgressOnlyInternetGateway operation returned by the service. * @sample AmazonEC2.CreateEgressOnlyInternetGateway * @see AWS API Documentation */ @Override public CreateEgressOnlyInternetGatewayResult createEgressOnlyInternetGateway(CreateEgressOnlyInternetGatewayRequest request) { request = beforeClientExecution(request); return executeCreateEgressOnlyInternetGateway(request); } @SdkInternalApi final CreateEgressOnlyInternetGatewayResult executeCreateEgressOnlyInternetGateway( CreateEgressOnlyInternetGatewayRequest createEgressOnlyInternetGatewayRequest) { ExecutionContext executionContext = createExecutionContext(createEgressOnlyInternetGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateEgressOnlyInternetGatewayRequestMarshaller().marshall(super.beforeMarshalling(createEgressOnlyInternetGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateEgressOnlyInternetGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateEgressOnlyInternetGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Launches an EC2 Fleet. *

*

* You can create a single EC2 Fleet that includes multiple launch specifications that vary by instance type, AMI, * Availability Zone, or subnet. *

*

* For more information, see Launching * an EC2 Fleet in the Amazon Elastic Compute Cloud User Guide. *

* * @param createFleetRequest * @return Result of the CreateFleet operation returned by the service. * @sample AmazonEC2.CreateFleet * @see AWS API * Documentation */ @Override public CreateFleetResult createFleet(CreateFleetRequest request) { request = beforeClientExecution(request); return executeCreateFleet(request); } @SdkInternalApi final CreateFleetResult executeCreateFleet(CreateFleetRequest createFleetRequest) { ExecutionContext executionContext = createExecutionContext(createFleetRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateFleetRequestMarshaller().marshall(super.beforeMarshalling(createFleetRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateFleet"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new CreateFleetResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates one or more flow logs to capture information about IP traffic for a specific network interface, subnet, * or VPC. *

*

* Flow log data for a monitored network interface is recorded as flow log records, which are log events consisting * of fields that describe the traffic flow. For more information, see Flow Log Records in * the Amazon Virtual Private Cloud User Guide. *

*

* When publishing to CloudWatch Logs, flow log records are published to a log group, and each network interface has * a unique log stream in the log group. When publishing to Amazon S3, flow log records for all of the monitored * network interfaces are published to a single log file object that is stored in the specified bucket. *

*

* For more information, see VPC Flow * Logs in the Amazon Virtual Private Cloud User Guide. *

* * @param createFlowLogsRequest * @return Result of the CreateFlowLogs operation returned by the service. * @sample AmazonEC2.CreateFlowLogs * @see AWS API * Documentation */ @Override public CreateFlowLogsResult createFlowLogs(CreateFlowLogsRequest request) { request = beforeClientExecution(request); return executeCreateFlowLogs(request); } @SdkInternalApi final CreateFlowLogsResult executeCreateFlowLogs(CreateFlowLogsRequest createFlowLogsRequest) { ExecutionContext executionContext = createExecutionContext(createFlowLogsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateFlowLogsRequestMarshaller().marshall(super.beforeMarshalling(createFlowLogsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateFlowLogs"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateFlowLogsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates an Amazon FPGA Image (AFI) from the specified design checkpoint (DCP). *

*

* The create operation is asynchronous. To verify that the AFI is ready for use, check the output logs. *

*

* An AFI contains the FPGA bitstream that is ready to download to an FPGA. You can securely deploy an AFI on * multiple FPGA-accelerated instances. For more information, see the AWS * FPGA Hardware Development Kit. *

* * @param createFpgaImageRequest * @return Result of the CreateFpgaImage operation returned by the service. * @sample AmazonEC2.CreateFpgaImage * @see AWS API * Documentation */ @Override public CreateFpgaImageResult createFpgaImage(CreateFpgaImageRequest request) { request = beforeClientExecution(request); return executeCreateFpgaImage(request); } @SdkInternalApi final CreateFpgaImageResult executeCreateFpgaImage(CreateFpgaImageRequest createFpgaImageRequest) { ExecutionContext executionContext = createExecutionContext(createFpgaImageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateFpgaImageRequestMarshaller().marshall(super.beforeMarshalling(createFpgaImageRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateFpgaImage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateFpgaImageResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is either running or stopped. *

*

* If you customized your instance with instance store volumes or EBS volumes in addition to the root device volume, * the new AMI contains block device mapping information for those volumes. When you launch an instance from this * new AMI, the instance automatically launches with those additional volumes. *

*

* For more information, see Creating Amazon EBS-Backed * Linux AMIs in the Amazon Elastic Compute Cloud User Guide. *

* * @param createImageRequest * @return Result of the CreateImage operation returned by the service. * @sample AmazonEC2.CreateImage * @see AWS API * Documentation */ @Override public CreateImageResult createImage(CreateImageRequest request) { request = beforeClientExecution(request); return executeCreateImage(request); } @SdkInternalApi final CreateImageResult executeCreateImage(CreateImageRequest createImageRequest) { ExecutionContext executionContext = createExecutionContext(createImageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateImageRequestMarshaller().marshall(super.beforeMarshalling(createImageRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateImage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new CreateImageResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Exports a running or stopped instance to an S3 bucket. *

*

* For information about the supported operating systems, image formats, and known limitations for the types of * instances you can export, see Exporting an Instance as a VM Using * VM Import/Export in the VM Import/Export User Guide. *

* * @param createInstanceExportTaskRequest * @return Result of the CreateInstanceExportTask operation returned by the service. * @sample AmazonEC2.CreateInstanceExportTask * @see AWS * API Documentation */ @Override public CreateInstanceExportTaskResult createInstanceExportTask(CreateInstanceExportTaskRequest request) { request = beforeClientExecution(request); return executeCreateInstanceExportTask(request); } @SdkInternalApi final CreateInstanceExportTaskResult executeCreateInstanceExportTask(CreateInstanceExportTaskRequest createInstanceExportTaskRequest) { ExecutionContext executionContext = createExecutionContext(createInstanceExportTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateInstanceExportTaskRequestMarshaller().marshall(super.beforeMarshalling(createInstanceExportTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateInstanceExportTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateInstanceExportTaskResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates an internet gateway for use with a VPC. After creating the internet gateway, you attach it to a VPC using * AttachInternetGateway. *

*

* For more information about your VPC and internet gateway, see the Amazon Virtual Private Cloud User Guide. *

* * @param createInternetGatewayRequest * @return Result of the CreateInternetGateway operation returned by the service. * @sample AmazonEC2.CreateInternetGateway * @see AWS API * Documentation */ @Override public CreateInternetGatewayResult createInternetGateway(CreateInternetGatewayRequest request) { request = beforeClientExecution(request); return executeCreateInternetGateway(request); } @SdkInternalApi final CreateInternetGatewayResult executeCreateInternetGateway(CreateInternetGatewayRequest createInternetGatewayRequest) { ExecutionContext executionContext = createExecutionContext(createInternetGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateInternetGatewayRequestMarshaller().marshall(super.beforeMarshalling(createInternetGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateInternetGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateInternetGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public CreateInternetGatewayResult createInternetGateway() { return createInternetGateway(new CreateInternetGatewayRequest()); } /** *

* Creates a 2048-bit RSA key pair with the specified name. Amazon EC2 stores the public key and displays the * private key for you to save to a file. The private key is returned as an unencrypted PEM encoded PKCS#1 private * key. If a key with the specified name already exists, Amazon EC2 returns an error. *

*

* You can have up to five thousand key pairs per Region. *

*

* The key pair returned to you is available only in the Region in which you create it. If you prefer, you can * create your own key pair using a third-party tool and upload it to any Region using ImportKeyPair. *

*

* For more information, see Key * Pairs in the Amazon Elastic Compute Cloud User Guide. *

* * @param createKeyPairRequest * @return Result of the CreateKeyPair operation returned by the service. * @sample AmazonEC2.CreateKeyPair * @see AWS API * Documentation */ @Override public CreateKeyPairResult createKeyPair(CreateKeyPairRequest request) { request = beforeClientExecution(request); return executeCreateKeyPair(request); } @SdkInternalApi final CreateKeyPairResult executeCreateKeyPair(CreateKeyPairRequest createKeyPairRequest) { ExecutionContext executionContext = createExecutionContext(createKeyPairRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateKeyPairRequestMarshaller().marshall(super.beforeMarshalling(createKeyPairRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateKeyPair"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new CreateKeyPairResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a launch template. A launch template contains the parameters to launch an instance. When you launch an * instance using RunInstances, you can specify a launch template instead of providing the launch parameters * in the request. *

* * @param createLaunchTemplateRequest * @return Result of the CreateLaunchTemplate operation returned by the service. * @sample AmazonEC2.CreateLaunchTemplate * @see AWS API * Documentation */ @Override public CreateLaunchTemplateResult createLaunchTemplate(CreateLaunchTemplateRequest request) { request = beforeClientExecution(request); return executeCreateLaunchTemplate(request); } @SdkInternalApi final CreateLaunchTemplateResult executeCreateLaunchTemplate(CreateLaunchTemplateRequest createLaunchTemplateRequest) { ExecutionContext executionContext = createExecutionContext(createLaunchTemplateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateLaunchTemplateRequestMarshaller().marshall(super.beforeMarshalling(createLaunchTemplateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateLaunchTemplate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateLaunchTemplateResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a new version for a launch template. You can specify an existing version of launch template from which to * base the new version. *

*

* Launch template versions are numbered in the order in which they are created. You cannot specify, change, or * replace the numbering of launch template versions. *

* * @param createLaunchTemplateVersionRequest * @return Result of the CreateLaunchTemplateVersion operation returned by the service. * @sample AmazonEC2.CreateLaunchTemplateVersion * @see AWS API Documentation */ @Override public CreateLaunchTemplateVersionResult createLaunchTemplateVersion(CreateLaunchTemplateVersionRequest request) { request = beforeClientExecution(request); return executeCreateLaunchTemplateVersion(request); } @SdkInternalApi final CreateLaunchTemplateVersionResult executeCreateLaunchTemplateVersion(CreateLaunchTemplateVersionRequest createLaunchTemplateVersionRequest) { ExecutionContext executionContext = createExecutionContext(createLaunchTemplateVersionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateLaunchTemplateVersionRequestMarshaller().marshall(super.beforeMarshalling(createLaunchTemplateVersionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateLaunchTemplateVersion"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateLaunchTemplateVersionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a NAT gateway in the specified public subnet. This action creates a network interface in the specified * subnet with a private IP address from the IP address range of the subnet. Internet-bound traffic from a private * subnet can be routed to the NAT gateway, therefore enabling instances in the private subnet to connect to the * internet. For more information, see NAT Gateways in the Amazon * Virtual Private Cloud User Guide. *

* * @param createNatGatewayRequest * @return Result of the CreateNatGateway operation returned by the service. * @sample AmazonEC2.CreateNatGateway * @see AWS API * Documentation */ @Override public CreateNatGatewayResult createNatGateway(CreateNatGatewayRequest request) { request = beforeClientExecution(request); return executeCreateNatGateway(request); } @SdkInternalApi final CreateNatGatewayResult executeCreateNatGateway(CreateNatGatewayRequest createNatGatewayRequest) { ExecutionContext executionContext = createExecutionContext(createNatGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateNatGatewayRequestMarshaller().marshall(super.beforeMarshalling(createNatGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateNatGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateNatGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a network ACL in a VPC. Network ACLs provide an optional layer of security (in addition to security * groups) for the instances in your VPC. *

*

* For more information, see Network * ACLs in the Amazon Virtual Private Cloud User Guide. *

* * @param createNetworkAclRequest * @return Result of the CreateNetworkAcl operation returned by the service. * @sample AmazonEC2.CreateNetworkAcl * @see AWS API * Documentation */ @Override public CreateNetworkAclResult createNetworkAcl(CreateNetworkAclRequest request) { request = beforeClientExecution(request); return executeCreateNetworkAcl(request); } @SdkInternalApi final CreateNetworkAclResult executeCreateNetworkAcl(CreateNetworkAclRequest createNetworkAclRequest) { ExecutionContext executionContext = createExecutionContext(createNetworkAclRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateNetworkAclRequestMarshaller().marshall(super.beforeMarshalling(createNetworkAclRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateNetworkAcl"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateNetworkAclResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates an entry (a rule) in a network ACL with the specified rule number. Each network ACL has a set of numbered * ingress rules and a separate set of numbered egress rules. When determining whether a packet should be allowed in * or out of a subnet associated with the ACL, we process the entries in the ACL according to the rule numbers, in * ascending order. Each network ACL has a set of ingress rules and a separate set of egress rules. *

*

* We recommend that you leave room between the rule numbers (for example, 100, 110, 120, ...), and not number them * one right after the other (for example, 101, 102, 103, ...). This makes it easier to add a rule between existing * ones without having to renumber the rules. *

*

* After you add an entry, you can't modify it; you must either replace it, or create an entry and delete the old * one. *

*

* For more information about network ACLs, see Network ACLs in the Amazon Virtual * Private Cloud User Guide. *

* * @param createNetworkAclEntryRequest * @return Result of the CreateNetworkAclEntry operation returned by the service. * @sample AmazonEC2.CreateNetworkAclEntry * @see AWS API * Documentation */ @Override public CreateNetworkAclEntryResult createNetworkAclEntry(CreateNetworkAclEntryRequest request) { request = beforeClientExecution(request); return executeCreateNetworkAclEntry(request); } @SdkInternalApi final CreateNetworkAclEntryResult executeCreateNetworkAclEntry(CreateNetworkAclEntryRequest createNetworkAclEntryRequest) { ExecutionContext executionContext = createExecutionContext(createNetworkAclEntryRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateNetworkAclEntryRequestMarshaller().marshall(super.beforeMarshalling(createNetworkAclEntryRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateNetworkAclEntry"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateNetworkAclEntryResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a network interface in the specified subnet. *

*

* For more information about network interfaces, see Elastic Network Interfaces in the * Amazon Virtual Private Cloud User Guide. *

* * @param createNetworkInterfaceRequest * Contains the parameters for CreateNetworkInterface. * @return Result of the CreateNetworkInterface operation returned by the service. * @sample AmazonEC2.CreateNetworkInterface * @see AWS API * Documentation */ @Override public CreateNetworkInterfaceResult createNetworkInterface(CreateNetworkInterfaceRequest request) { request = beforeClientExecution(request); return executeCreateNetworkInterface(request); } @SdkInternalApi final CreateNetworkInterfaceResult executeCreateNetworkInterface(CreateNetworkInterfaceRequest createNetworkInterfaceRequest) { ExecutionContext executionContext = createExecutionContext(createNetworkInterfaceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateNetworkInterfaceRequestMarshaller().marshall(super.beforeMarshalling(createNetworkInterfaceRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateNetworkInterface"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateNetworkInterfaceResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Grants an AWS-authorized account permission to attach the specified network interface to an instance in their * account. *

*

* You can grant permission to a single AWS account only, and only one account at a time. *

* * @param createNetworkInterfacePermissionRequest * Contains the parameters for CreateNetworkInterfacePermission. * @return Result of the CreateNetworkInterfacePermission operation returned by the service. * @sample AmazonEC2.CreateNetworkInterfacePermission * @see AWS API Documentation */ @Override public CreateNetworkInterfacePermissionResult createNetworkInterfacePermission(CreateNetworkInterfacePermissionRequest request) { request = beforeClientExecution(request); return executeCreateNetworkInterfacePermission(request); } @SdkInternalApi final CreateNetworkInterfacePermissionResult executeCreateNetworkInterfacePermission( CreateNetworkInterfacePermissionRequest createNetworkInterfacePermissionRequest) { ExecutionContext executionContext = createExecutionContext(createNetworkInterfacePermissionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateNetworkInterfacePermissionRequestMarshaller().marshall(super.beforeMarshalling(createNetworkInterfacePermissionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateNetworkInterfacePermission"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateNetworkInterfacePermissionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a placement group in which to launch instances. The strategy of the placement group determines how the * instances are organized within the group. *

*

* A cluster placement group is a logical grouping of instances within a single Availability Zone that * benefit from low network latency, high network throughput. A spread placement group places instances * on distinct hardware. A partition placement group places groups of instances in different * partitions, where instances in one partition do not share the same hardware with instances in another partition. *

*

* For more information, see Placement Groups in the * Amazon Elastic Compute Cloud User Guide. *

* * @param createPlacementGroupRequest * @return Result of the CreatePlacementGroup operation returned by the service. * @sample AmazonEC2.CreatePlacementGroup * @see AWS API * Documentation */ @Override public CreatePlacementGroupResult createPlacementGroup(CreatePlacementGroupRequest request) { request = beforeClientExecution(request); return executeCreatePlacementGroup(request); } @SdkInternalApi final CreatePlacementGroupResult executeCreatePlacementGroup(CreatePlacementGroupRequest createPlacementGroupRequest) { ExecutionContext executionContext = createExecutionContext(createPlacementGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreatePlacementGroupRequestMarshaller().marshall(super.beforeMarshalling(createPlacementGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreatePlacementGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreatePlacementGroupResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a listing for Amazon EC2 Standard Reserved Instances to be sold in the Reserved Instance Marketplace. You * can submit one Standard Reserved Instance listing at a time. To get a list of your Standard Reserved Instances, * you can use the DescribeReservedInstances operation. *

* *

* Only Standard Reserved Instances can be sold in the Reserved Instance Marketplace. Convertible Reserved Instances * cannot be sold. *

*
*

* The Reserved Instance Marketplace matches sellers who want to resell Standard Reserved Instance capacity that * they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold * through the Reserved Instance Marketplace work like any other Reserved Instances. *

*

* To sell your Standard Reserved Instances, you must first register as a seller in the Reserved Instance * Marketplace. After completing the registration process, you can create a Reserved Instance Marketplace listing of * some or all of your Standard Reserved Instances, and specify the upfront price to receive for them. Your Standard * Reserved Instance listings then become available for purchase. To view the details of your Standard Reserved * Instance listing, you can use the DescribeReservedInstancesListings operation. *

*

* For more information, see Reserved Instance * Marketplace in the Amazon Elastic Compute Cloud User Guide. *

* * @param createReservedInstancesListingRequest * Contains the parameters for CreateReservedInstancesListing. * @return Result of the CreateReservedInstancesListing operation returned by the service. * @sample AmazonEC2.CreateReservedInstancesListing * @see AWS API Documentation */ @Override public CreateReservedInstancesListingResult createReservedInstancesListing(CreateReservedInstancesListingRequest request) { request = beforeClientExecution(request); return executeCreateReservedInstancesListing(request); } @SdkInternalApi final CreateReservedInstancesListingResult executeCreateReservedInstancesListing(CreateReservedInstancesListingRequest createReservedInstancesListingRequest) { ExecutionContext executionContext = createExecutionContext(createReservedInstancesListingRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateReservedInstancesListingRequestMarshaller().marshall(super.beforeMarshalling(createReservedInstancesListingRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateReservedInstancesListing"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateReservedInstancesListingResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* 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. *

* * @param createRouteRequest * @return Result of the CreateRoute operation returned by the service. * @sample AmazonEC2.CreateRoute * @see AWS API * Documentation */ @Override public CreateRouteResult createRoute(CreateRouteRequest request) { request = beforeClientExecution(request); return executeCreateRoute(request); } @SdkInternalApi final CreateRouteResult executeCreateRoute(CreateRouteRequest createRouteRequest) { ExecutionContext executionContext = createExecutionContext(createRouteRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateRouteRequestMarshaller().marshall(super.beforeMarshalling(createRouteRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateRoute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new CreateRouteResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a route table for the specified VPC. After you create a route table, you can add routes and associate the * table with a subnet. *

*

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

* * @param createRouteTableRequest * @return Result of the CreateRouteTable operation returned by the service. * @sample AmazonEC2.CreateRouteTable * @see AWS API * Documentation */ @Override public CreateRouteTableResult createRouteTable(CreateRouteTableRequest request) { request = beforeClientExecution(request); return executeCreateRouteTable(request); } @SdkInternalApi final CreateRouteTableResult executeCreateRouteTable(CreateRouteTableRequest createRouteTableRequest) { ExecutionContext executionContext = createExecutionContext(createRouteTableRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateRouteTableRequestMarshaller().marshall(super.beforeMarshalling(createRouteTableRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateRouteTable"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateRouteTableResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a security group. *

*

* A security group acts as a virtual firewall for your instance to control inbound and outbound traffic. For more * information, see Amazon * EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your * VPC in the Amazon Virtual Private Cloud User Guide. *

*

* When you create a security group, you specify a friendly name of your choice. You can have a security group for * use in EC2-Classic with the same name as a security group for use in a VPC. However, you can't have two security * groups for use in EC2-Classic with the same name or two security groups for use in a VPC with the same name. *

*

* You have a default security group for use in EC2-Classic and a default security group for use in your VPC. If you * don't specify a security group when you launch an instance, the instance is launched into the appropriate default * security group. A default security group includes a default rule that grants instances unrestricted network * access to each other. *

*

* You can add or remove rules from your security groups using AuthorizeSecurityGroupIngress, * AuthorizeSecurityGroupEgress, RevokeSecurityGroupIngress, and RevokeSecurityGroupEgress. *

*

* For more information about VPC security group limits, see Amazon VPC Limits. *

* * @param createSecurityGroupRequest * @return Result of the CreateSecurityGroup operation returned by the service. * @sample AmazonEC2.CreateSecurityGroup * @see AWS API * Documentation */ @Override public CreateSecurityGroupResult createSecurityGroup(CreateSecurityGroupRequest request) { request = beforeClientExecution(request); return executeCreateSecurityGroup(request); } @SdkInternalApi final CreateSecurityGroupResult executeCreateSecurityGroup(CreateSecurityGroupRequest createSecurityGroupRequest) { ExecutionContext executionContext = createExecutionContext(createSecurityGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateSecurityGroupRequestMarshaller().marshall(super.beforeMarshalling(createSecurityGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateSecurityGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateSecurityGroupResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use snapshots for backups, to make copies * of EBS volumes, and to save data before shutting down an instance. *

*

* When a snapshot is created, any AWS Marketplace product codes that are associated with the source volume are * propagated to the snapshot. *

*

* You can take a snapshot of an attached volume that is in use. However, snapshots only capture data that has been * written to your EBS volume at the time the snapshot command is issued; this may exclude any data that has been * cached by any applications or the operating system. If you can pause any file systems on the volume long enough * to take a snapshot, your snapshot should be complete. However, if you cannot pause all file writes to the volume, * you should unmount the volume from within the instance, issue the snapshot command, and then remount the volume * to ensure a consistent and complete snapshot. You may remount and use your volume while the snapshot status is * pending. *

*

* To create a snapshot for EBS volumes that serve as root devices, you should stop the instance before taking the * snapshot. *

*

* Snapshots that are taken from encrypted volumes are automatically encrypted. Volumes that are created from * encrypted snapshots are also automatically encrypted. Your encrypted volumes and any associated snapshots always * remain protected. *

*

* You can tag your snapshots during creation. For more information, see Tagging Your Amazon EC2 Resources * in the Amazon Elastic Compute Cloud User Guide. *

*

* For more information, see Amazon * Elastic Block Store and Amazon EBS Encryption in the * Amazon Elastic Compute Cloud User Guide. *

* * @param createSnapshotRequest * Contains the parameters for CreateSnapshot. * @return Result of the CreateSnapshot operation returned by the service. * @sample AmazonEC2.CreateSnapshot * @see AWS API * Documentation */ @Override public CreateSnapshotResult createSnapshot(CreateSnapshotRequest request) { request = beforeClientExecution(request); return executeCreateSnapshot(request); } @SdkInternalApi final CreateSnapshotResult executeCreateSnapshot(CreateSnapshotRequest createSnapshotRequest) { ExecutionContext executionContext = createExecutionContext(createSnapshotRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateSnapshotRequestMarshaller().marshall(super.beforeMarshalling(createSnapshotRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateSnapshot"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateSnapshotResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates crash-consistent snapshots of multiple EBS volumes and stores the data in S3. Volumes are chosen by * specifying an instance. Any attached volumes will produce one snapshot each that is crash-consistent across the * instance. Boot volumes can be excluded by changing the paramaters. *

* * @param createSnapshotsRequest * @return Result of the CreateSnapshots operation returned by the service. * @sample AmazonEC2.CreateSnapshots * @see AWS API * Documentation */ @Override public CreateSnapshotsResult createSnapshots(CreateSnapshotsRequest request) { request = beforeClientExecution(request); return executeCreateSnapshots(request); } @SdkInternalApi final CreateSnapshotsResult executeCreateSnapshots(CreateSnapshotsRequest createSnapshotsRequest) { ExecutionContext executionContext = createExecutionContext(createSnapshotsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateSnapshotsRequestMarshaller().marshall(super.beforeMarshalling(createSnapshotsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateSnapshots"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateSnapshotsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a data feed for Spot Instances, enabling you to view Spot Instance usage logs. You can create one data * feed per AWS account. For more information, see Spot Instance Data Feed in * the Amazon EC2 User Guide for Linux Instances. *

* * @param createSpotDatafeedSubscriptionRequest * Contains the parameters for CreateSpotDatafeedSubscription. * @return Result of the CreateSpotDatafeedSubscription operation returned by the service. * @sample AmazonEC2.CreateSpotDatafeedSubscription * @see AWS API Documentation */ @Override public CreateSpotDatafeedSubscriptionResult createSpotDatafeedSubscription(CreateSpotDatafeedSubscriptionRequest request) { request = beforeClientExecution(request); return executeCreateSpotDatafeedSubscription(request); } @SdkInternalApi final CreateSpotDatafeedSubscriptionResult executeCreateSpotDatafeedSubscription(CreateSpotDatafeedSubscriptionRequest createSpotDatafeedSubscriptionRequest) { ExecutionContext executionContext = createExecutionContext(createSpotDatafeedSubscriptionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateSpotDatafeedSubscriptionRequestMarshaller().marshall(super.beforeMarshalling(createSpotDatafeedSubscriptionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateSpotDatafeedSubscription"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateSpotDatafeedSubscriptionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a subnet in an existing VPC. *

*

* When you create each subnet, you provide the VPC ID and IPv4 CIDR block for the subnet. After you create a * subnet, you can't change its CIDR block. The size of the subnet's IPv4 CIDR block can be the same as a VPC's IPv4 * CIDR block, or a subset of a VPC's IPv4 CIDR block. If you create more than one subnet in a VPC, the subnets' * CIDR blocks must not overlap. The smallest IPv4 subnet (and VPC) you can create uses a /28 netmask (16 IPv4 * addresses), and the largest uses a /16 netmask (65,536 IPv4 addresses). *

*

* If you've associated an IPv6 CIDR block with your VPC, you can create a subnet with an IPv6 CIDR block that uses * a /64 prefix length. *

* *

* AWS reserves both the first four and the last IPv4 address in each subnet's CIDR block. They're not available for * use. *

*
*

* If you add more than one subnet to a VPC, they're set up in a star topology with a logical router in the middle. *

*

* If you launch an instance in a VPC using an Amazon EBS-backed AMI, the IP address doesn't change if you stop and * restart the instance (unlike a similar instance launched outside a VPC, which gets a new IP address when * restarted). It's therefore possible to have a subnet with no running instances (they're all stopped), but no * remaining IP addresses available. *

*

* For more information about subnets, see Your VPC and Subnets in the * Amazon Virtual Private Cloud User Guide. *

* * @param createSubnetRequest * @return Result of the CreateSubnet operation returned by the service. * @sample AmazonEC2.CreateSubnet * @see AWS API * Documentation */ @Override public CreateSubnetResult createSubnet(CreateSubnetRequest request) { request = beforeClientExecution(request); return executeCreateSubnet(request); } @SdkInternalApi final CreateSubnetResult executeCreateSubnet(CreateSubnetRequest createSubnetRequest) { ExecutionContext executionContext = createExecutionContext(createSubnetRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateSubnetRequestMarshaller().marshall(super.beforeMarshalling(createSubnetRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateSubnet"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new CreateSubnetResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Adds or overwrites the specified tags for the specified Amazon EC2 resource or resources. Each resource can have * a maximum of 50 tags. Each tag consists of a key and optional value. Tag keys must be unique per resource. *

*

* For more information about tags, see Tagging Your Resources in the * Amazon Elastic Compute Cloud User Guide. For more information about creating IAM policies that control * users' access to resources based on tags, see Supported * Resource-Level Permissions for Amazon EC2 API Actions in the Amazon Elastic Compute Cloud User Guide. *

* * @param createTagsRequest * @return Result of the CreateTags operation returned by the service. * @sample AmazonEC2.CreateTags * @see AWS API * Documentation */ @Override public CreateTagsResult createTags(CreateTagsRequest request) { request = beforeClientExecution(request); return executeCreateTags(request); } @SdkInternalApi final CreateTagsResult executeCreateTags(CreateTagsRequest createTagsRequest) { ExecutionContext executionContext = createExecutionContext(createTagsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateTagsRequestMarshaller().marshall(super.beforeMarshalling(createTagsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateTags"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new CreateTagsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a Traffic Mirror filter. *

*

* A Traffic Mirror filter is a set of rules that defines the traffic to mirror. *

*

* By default, no traffic is mirrored. To mirror traffic, use CreateTrafficMirrorFilterRule to add Traffic * Mirror rules to the filter. The rules you add define what traffic gets mirrored. You can also use * ModifyTrafficMirrorFilterNetworkServices to mirror supported network services. *

* * @param createTrafficMirrorFilterRequest * @return Result of the CreateTrafficMirrorFilter operation returned by the service. * @sample AmazonEC2.CreateTrafficMirrorFilter * @see AWS * API Documentation */ @Override public CreateTrafficMirrorFilterResult createTrafficMirrorFilter(CreateTrafficMirrorFilterRequest request) { request = beforeClientExecution(request); return executeCreateTrafficMirrorFilter(request); } @SdkInternalApi final CreateTrafficMirrorFilterResult executeCreateTrafficMirrorFilter(CreateTrafficMirrorFilterRequest createTrafficMirrorFilterRequest) { ExecutionContext executionContext = createExecutionContext(createTrafficMirrorFilterRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateTrafficMirrorFilterRequestMarshaller().marshall(super.beforeMarshalling(createTrafficMirrorFilterRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateTrafficMirrorFilter"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateTrafficMirrorFilterResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a Traffic Mirror rule. *

*

* A Traffic Mirror rule defines the Traffic Mirror source traffic to mirror. *

*

* You need the Traffic Mirror filter ID when you create the rule. *

* * @param createTrafficMirrorFilterRuleRequest * @return Result of the CreateTrafficMirrorFilterRule operation returned by the service. * @sample AmazonEC2.CreateTrafficMirrorFilterRule * @see AWS API Documentation */ @Override public CreateTrafficMirrorFilterRuleResult createTrafficMirrorFilterRule(CreateTrafficMirrorFilterRuleRequest request) { request = beforeClientExecution(request); return executeCreateTrafficMirrorFilterRule(request); } @SdkInternalApi final CreateTrafficMirrorFilterRuleResult executeCreateTrafficMirrorFilterRule(CreateTrafficMirrorFilterRuleRequest createTrafficMirrorFilterRuleRequest) { ExecutionContext executionContext = createExecutionContext(createTrafficMirrorFilterRuleRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateTrafficMirrorFilterRuleRequestMarshaller().marshall(super.beforeMarshalling(createTrafficMirrorFilterRuleRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateTrafficMirrorFilterRule"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateTrafficMirrorFilterRuleResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a Traffic Mirror session. *

*

* A Traffic Mirror session actively copies packets from a Traffic Mirror source to a Traffic Mirror target. Create * a filter, and then assign it to the session to define a subset of the traffic to mirror, for example all TCP * traffic. *

*

* The Traffic Mirror source and the Traffic Mirror target (monitoring appliances) can be in the same VPC, or in a * different VPC connected via VPC peering or a transit gateway. *

*

* By default, no traffic is mirrored. Use CreateTrafficMirrorFilter to create filter rules that specify the * traffic to mirror. *

* * @param createTrafficMirrorSessionRequest * @return Result of the CreateTrafficMirrorSession operation returned by the service. * @sample AmazonEC2.CreateTrafficMirrorSession * @see AWS * API Documentation */ @Override public CreateTrafficMirrorSessionResult createTrafficMirrorSession(CreateTrafficMirrorSessionRequest request) { request = beforeClientExecution(request); return executeCreateTrafficMirrorSession(request); } @SdkInternalApi final CreateTrafficMirrorSessionResult executeCreateTrafficMirrorSession(CreateTrafficMirrorSessionRequest createTrafficMirrorSessionRequest) { ExecutionContext executionContext = createExecutionContext(createTrafficMirrorSessionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateTrafficMirrorSessionRequestMarshaller().marshall(super.beforeMarshalling(createTrafficMirrorSessionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateTrafficMirrorSession"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateTrafficMirrorSessionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a target for your Traffic Mirror session. *

*

* A Traffic Mirror target is the destination for mirrored traffic. The Traffic Mirror source and the Traffic Mirror * target (monitoring appliances) can be in the same VPC, or in different VPCs connected via VPC peering or a * transit gateway. *

*

* A Traffic Mirror target can be a network interface, or a Network Load Balancer. *

*

* To use the target in a Traffic Mirror session, use CreateTrafficMirrorSession. *

* * @param createTrafficMirrorTargetRequest * @return Result of the CreateTrafficMirrorTarget operation returned by the service. * @sample AmazonEC2.CreateTrafficMirrorTarget * @see AWS * API Documentation */ @Override public CreateTrafficMirrorTargetResult createTrafficMirrorTarget(CreateTrafficMirrorTargetRequest request) { request = beforeClientExecution(request); return executeCreateTrafficMirrorTarget(request); } @SdkInternalApi final CreateTrafficMirrorTargetResult executeCreateTrafficMirrorTarget(CreateTrafficMirrorTargetRequest createTrafficMirrorTargetRequest) { ExecutionContext executionContext = createExecutionContext(createTrafficMirrorTargetRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateTrafficMirrorTargetRequestMarshaller().marshall(super.beforeMarshalling(createTrafficMirrorTargetRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateTrafficMirrorTarget"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateTrafficMirrorTargetResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a transit gateway. *

*

* You can use a transit gateway to interconnect your virtual private clouds (VPC) and on-premises networks. After * the transit gateway enters the available state, you can attach your VPCs and VPN connections to the * transit gateway. *

*

* To attach your VPCs, use CreateTransitGatewayVpcAttachment. *

*

* To attach a VPN connection, use CreateCustomerGateway to create a customer gateway and specify the ID of * the customer gateway and the ID of the transit gateway in a call to CreateVpnConnection. *

*

* When you create a transit gateway, we create a default transit gateway route table and use it as the default * association route table and the default propagation route table. You can use * CreateTransitGatewayRouteTable to create additional transit gateway route tables. If you disable automatic * route propagation, we do not create a default transit gateway route table. You can use * EnableTransitGatewayRouteTablePropagation to propagate routes from a resource attachment to a transit * gateway route table. If you disable automatic associations, you can use AssociateTransitGatewayRouteTable * to associate a resource attachment with a transit gateway route table. *

* * @param createTransitGatewayRequest * @return Result of the CreateTransitGateway operation returned by the service. * @sample AmazonEC2.CreateTransitGateway * @see AWS API * Documentation */ @Override public CreateTransitGatewayResult createTransitGateway(CreateTransitGatewayRequest request) { request = beforeClientExecution(request); return executeCreateTransitGateway(request); } @SdkInternalApi final CreateTransitGatewayResult executeCreateTransitGateway(CreateTransitGatewayRequest createTransitGatewayRequest) { ExecutionContext executionContext = createExecutionContext(createTransitGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateTransitGatewayRequestMarshaller().marshall(super.beforeMarshalling(createTransitGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateTransitGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateTransitGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a static route for the specified transit gateway route table. *

* * @param createTransitGatewayRouteRequest * @return Result of the CreateTransitGatewayRoute operation returned by the service. * @sample AmazonEC2.CreateTransitGatewayRoute * @see AWS * API Documentation */ @Override public CreateTransitGatewayRouteResult createTransitGatewayRoute(CreateTransitGatewayRouteRequest request) { request = beforeClientExecution(request); return executeCreateTransitGatewayRoute(request); } @SdkInternalApi final CreateTransitGatewayRouteResult executeCreateTransitGatewayRoute(CreateTransitGatewayRouteRequest createTransitGatewayRouteRequest) { ExecutionContext executionContext = createExecutionContext(createTransitGatewayRouteRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateTransitGatewayRouteRequestMarshaller().marshall(super.beforeMarshalling(createTransitGatewayRouteRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateTransitGatewayRoute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateTransitGatewayRouteResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a route table for the specified transit gateway. *

* * @param createTransitGatewayRouteTableRequest * @return Result of the CreateTransitGatewayRouteTable operation returned by the service. * @sample AmazonEC2.CreateTransitGatewayRouteTable * @see AWS API Documentation */ @Override public CreateTransitGatewayRouteTableResult createTransitGatewayRouteTable(CreateTransitGatewayRouteTableRequest request) { request = beforeClientExecution(request); return executeCreateTransitGatewayRouteTable(request); } @SdkInternalApi final CreateTransitGatewayRouteTableResult executeCreateTransitGatewayRouteTable(CreateTransitGatewayRouteTableRequest createTransitGatewayRouteTableRequest) { ExecutionContext executionContext = createExecutionContext(createTransitGatewayRouteTableRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateTransitGatewayRouteTableRequestMarshaller().marshall(super.beforeMarshalling(createTransitGatewayRouteTableRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateTransitGatewayRouteTable"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateTransitGatewayRouteTableResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Attaches the specified VPC to the specified transit gateway. *

*

* If you attach a VPC with a CIDR range that overlaps the CIDR range of a VPC that is already attached, the new VPC * CIDR range is not propagated to the default propagation route table. *

*

* To send VPC traffic to an attached transit gateway, add a route to the VPC route table using CreateRoute. *

* * @param createTransitGatewayVpcAttachmentRequest * @return Result of the CreateTransitGatewayVpcAttachment operation returned by the service. * @sample AmazonEC2.CreateTransitGatewayVpcAttachment * @see AWS API Documentation */ @Override public CreateTransitGatewayVpcAttachmentResult createTransitGatewayVpcAttachment(CreateTransitGatewayVpcAttachmentRequest request) { request = beforeClientExecution(request); return executeCreateTransitGatewayVpcAttachment(request); } @SdkInternalApi final CreateTransitGatewayVpcAttachmentResult executeCreateTransitGatewayVpcAttachment( CreateTransitGatewayVpcAttachmentRequest createTransitGatewayVpcAttachmentRequest) { ExecutionContext executionContext = createExecutionContext(createTransitGatewayVpcAttachmentRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateTransitGatewayVpcAttachmentRequestMarshaller().marshall(super.beforeMarshalling(createTransitGatewayVpcAttachmentRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateTransitGatewayVpcAttachment"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateTransitGatewayVpcAttachmentResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates an EBS volume that can be attached to an instance in the same Availability Zone. The volume is created in * the regional endpoint that you send the HTTP request to. For more information see Regions and Endpoints. *

*

* You can create a new empty volume or restore a volume from an EBS snapshot. Any AWS Marketplace product codes * from the snapshot are propagated to the volume. *

*

* You can create encrypted volumes. Encrypted volumes must be attached to instances that support Amazon EBS * encryption. Volumes that are created from encrypted snapshots are also automatically encrypted. For more * information, see Amazon EBS * Encryption in the Amazon Elastic Compute Cloud User Guide. *

*

* You can tag your volumes during creation. For more information, see Tagging Your Amazon EC2 Resources * in the Amazon Elastic Compute Cloud User Guide. *

*

* For more information, see Creating an Amazon EBS * Volume in the Amazon Elastic Compute Cloud User Guide. *

* * @param createVolumeRequest * Contains the parameters for CreateVolume. * @return Result of the CreateVolume operation returned by the service. * @sample AmazonEC2.CreateVolume * @see AWS API * Documentation */ @Override public CreateVolumeResult createVolume(CreateVolumeRequest request) { request = beforeClientExecution(request); return executeCreateVolume(request); } @SdkInternalApi final CreateVolumeResult executeCreateVolume(CreateVolumeRequest createVolumeRequest) { ExecutionContext executionContext = createExecutionContext(createVolumeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateVolumeRequestMarshaller().marshall(super.beforeMarshalling(createVolumeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateVolume"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new CreateVolumeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a VPC with the specified IPv4 CIDR block. The smallest VPC you can create uses a /28 netmask (16 IPv4 * addresses), and the largest uses a /16 netmask (65,536 IPv4 addresses). For more information about how large to * make your VPC, see Your VPC and * Subnets in the Amazon Virtual Private Cloud User Guide. *

*

* You can optionally request an Amazon-provided IPv6 CIDR block for the VPC. The IPv6 CIDR block uses a /56 prefix * length, and is allocated from Amazon's pool of IPv6 addresses. You cannot choose the IPv6 range for your VPC. *

*

* By default, each instance you launch in the VPC has the default DHCP options, which include only a default DNS * server that we provide (AmazonProvidedDNS). For more information, see DHCP Options Sets in the * Amazon Virtual Private Cloud User Guide. *

*

* You can specify the instance tenancy value for the VPC when you create it. You can't change this value for the * VPC after you create it. For more information, see Dedicated Instances in the * Amazon Elastic Compute Cloud User Guide. *

* * @param createVpcRequest * @return Result of the CreateVpc operation returned by the service. * @sample AmazonEC2.CreateVpc * @see AWS API * Documentation */ @Override public CreateVpcResult createVpc(CreateVpcRequest request) { request = beforeClientExecution(request); return executeCreateVpc(request); } @SdkInternalApi final CreateVpcResult executeCreateVpc(CreateVpcRequest createVpcRequest) { ExecutionContext executionContext = createExecutionContext(createVpcRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateVpcRequestMarshaller().marshall(super.beforeMarshalling(createVpcRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateVpc"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new CreateVpcResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a VPC endpoint for a specified service. An endpoint enables you to create a private connection between * your VPC and the service. The service may be provided by AWS, an AWS Marketplace partner, or another AWS account. * For more information, see VPC * Endpoints in the Amazon Virtual Private Cloud User Guide. *

*

* A gateway endpoint serves as a target for a route in your route table for traffic destined for the * AWS service. You can specify an endpoint policy to attach to the endpoint that will control access to the service * from your VPC. You can also specify the VPC route tables that use the endpoint. *

*

* An interface endpoint is a network interface in your subnet that serves as an endpoint for * communicating with the specified service. You can specify the subnets in which to create an endpoint, and the * security groups to associate with the endpoint network interface. *

*

* Use DescribeVpcEndpointServices to get a list of supported services. *

* * @param createVpcEndpointRequest * Contains the parameters for CreateVpcEndpoint. * @return Result of the CreateVpcEndpoint operation returned by the service. * @sample AmazonEC2.CreateVpcEndpoint * @see AWS API * Documentation */ @Override public CreateVpcEndpointResult createVpcEndpoint(CreateVpcEndpointRequest request) { request = beforeClientExecution(request); return executeCreateVpcEndpoint(request); } @SdkInternalApi final CreateVpcEndpointResult executeCreateVpcEndpoint(CreateVpcEndpointRequest createVpcEndpointRequest) { ExecutionContext executionContext = createExecutionContext(createVpcEndpointRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateVpcEndpointRequestMarshaller().marshall(super.beforeMarshalling(createVpcEndpointRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateVpcEndpoint"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateVpcEndpointResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a connection notification for a specified VPC endpoint or VPC endpoint service. A connection notification * notifies you of specific endpoint events. You must create an SNS topic to receive notifications. For more * information, see Create a Topic in the * Amazon Simple Notification Service Developer Guide. *

*

* You can create a connection notification for interface endpoints only. *

* * @param createVpcEndpointConnectionNotificationRequest * @return Result of the CreateVpcEndpointConnectionNotification operation returned by the service. * @sample AmazonEC2.CreateVpcEndpointConnectionNotification * @see AWS API Documentation */ @Override public CreateVpcEndpointConnectionNotificationResult createVpcEndpointConnectionNotification(CreateVpcEndpointConnectionNotificationRequest request) { request = beforeClientExecution(request); return executeCreateVpcEndpointConnectionNotification(request); } @SdkInternalApi final CreateVpcEndpointConnectionNotificationResult executeCreateVpcEndpointConnectionNotification( CreateVpcEndpointConnectionNotificationRequest createVpcEndpointConnectionNotificationRequest) { ExecutionContext executionContext = createExecutionContext(createVpcEndpointConnectionNotificationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateVpcEndpointConnectionNotificationRequestMarshaller().marshall(super .beforeMarshalling(createVpcEndpointConnectionNotificationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateVpcEndpointConnectionNotification"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateVpcEndpointConnectionNotificationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a VPC endpoint service configuration to which service consumers (AWS accounts, IAM users, and IAM roles) * can connect. Service consumers can create an interface VPC endpoint to connect to your service. *

*

* To create an endpoint service configuration, you must first create a Network Load Balancer for your service. For * more information, see VPC * Endpoint Services in the Amazon Virtual Private Cloud User Guide. *

* * @param createVpcEndpointServiceConfigurationRequest * @return Result of the CreateVpcEndpointServiceConfiguration operation returned by the service. * @sample AmazonEC2.CreateVpcEndpointServiceConfiguration * @see AWS API Documentation */ @Override public CreateVpcEndpointServiceConfigurationResult createVpcEndpointServiceConfiguration(CreateVpcEndpointServiceConfigurationRequest request) { request = beforeClientExecution(request); return executeCreateVpcEndpointServiceConfiguration(request); } @SdkInternalApi final CreateVpcEndpointServiceConfigurationResult executeCreateVpcEndpointServiceConfiguration( CreateVpcEndpointServiceConfigurationRequest createVpcEndpointServiceConfigurationRequest) { ExecutionContext executionContext = createExecutionContext(createVpcEndpointServiceConfigurationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateVpcEndpointServiceConfigurationRequestMarshaller().marshall(super .beforeMarshalling(createVpcEndpointServiceConfigurationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateVpcEndpointServiceConfiguration"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateVpcEndpointServiceConfigurationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Requests a VPC peering connection between two VPCs: a requester VPC that you own and an accepter VPC with which * to create the connection. The accepter VPC can belong to another AWS account and can be in a different Region to * the requester VPC. The requester VPC and accepter VPC cannot have overlapping CIDR blocks. *

* *

* Limitations and rules apply to a VPC peering connection. For more information, see the limitations section in the VPC Peering Guide. *

*
*

* The owner of the accepter VPC must accept the peering request to activate the peering connection. The VPC peering * connection request expires after 7 days, after which it cannot be accepted or rejected. *

*

* If you create a VPC peering connection request between VPCs with overlapping CIDR blocks, the VPC peering * connection has a status of failed. *

* * @param createVpcPeeringConnectionRequest * @return Result of the CreateVpcPeeringConnection operation returned by the service. * @sample AmazonEC2.CreateVpcPeeringConnection * @see AWS * API Documentation */ @Override public CreateVpcPeeringConnectionResult createVpcPeeringConnection(CreateVpcPeeringConnectionRequest request) { request = beforeClientExecution(request); return executeCreateVpcPeeringConnection(request); } @SdkInternalApi final CreateVpcPeeringConnectionResult executeCreateVpcPeeringConnection(CreateVpcPeeringConnectionRequest createVpcPeeringConnectionRequest) { ExecutionContext executionContext = createExecutionContext(createVpcPeeringConnectionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateVpcPeeringConnectionRequestMarshaller().marshall(super.beforeMarshalling(createVpcPeeringConnectionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateVpcPeeringConnection"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateVpcPeeringConnectionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public CreateVpcPeeringConnectionResult createVpcPeeringConnection() { return createVpcPeeringConnection(new CreateVpcPeeringConnectionRequest()); } /** *

* Creates a VPN connection between an existing virtual private gateway and a VPN customer gateway. The supported * connection types is ipsec.1. *

*

* The response includes information that you need to give to your network administrator to configure your customer * gateway. *

* *

* We strongly recommend that you use HTTPS when calling this operation because the response contains sensitive * cryptographic information for configuring your customer gateway. *

*
*

* If you decide to shut down your VPN connection for any reason and later create a new VPN connection, you must * reconfigure your customer gateway with the new information returned from this call. *

*

* This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error. *

*

* For more information, see AWS Site-to-Site * VPN in the AWS Site-to-Site VPN User Guide. *

* * @param createVpnConnectionRequest * Contains the parameters for CreateVpnConnection. * @return Result of the CreateVpnConnection operation returned by the service. * @sample AmazonEC2.CreateVpnConnection * @see AWS API * Documentation */ @Override public CreateVpnConnectionResult createVpnConnection(CreateVpnConnectionRequest request) { request = beforeClientExecution(request); return executeCreateVpnConnection(request); } @SdkInternalApi final CreateVpnConnectionResult executeCreateVpnConnection(CreateVpnConnectionRequest createVpnConnectionRequest) { ExecutionContext executionContext = createExecutionContext(createVpnConnectionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateVpnConnectionRequestMarshaller().marshall(super.beforeMarshalling(createVpnConnectionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateVpnConnection"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateVpnConnectionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a static route associated with a VPN connection between an existing virtual private gateway and a VPN * customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN * customer gateway. *

*

* For more information, see AWS Site-to-Site * VPN in the AWS Site-to-Site VPN User Guide. *

* * @param createVpnConnectionRouteRequest * Contains the parameters for CreateVpnConnectionRoute. * @return Result of the CreateVpnConnectionRoute operation returned by the service. * @sample AmazonEC2.CreateVpnConnectionRoute * @see AWS * API Documentation */ @Override public CreateVpnConnectionRouteResult createVpnConnectionRoute(CreateVpnConnectionRouteRequest request) { request = beforeClientExecution(request); return executeCreateVpnConnectionRoute(request); } @SdkInternalApi final CreateVpnConnectionRouteResult executeCreateVpnConnectionRoute(CreateVpnConnectionRouteRequest createVpnConnectionRouteRequest) { ExecutionContext executionContext = createExecutionContext(createVpnConnectionRouteRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateVpnConnectionRouteRequestMarshaller().marshall(super.beforeMarshalling(createVpnConnectionRouteRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateVpnConnectionRoute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateVpnConnectionRouteResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a virtual private gateway. A virtual private gateway is the endpoint on the VPC side of your VPN * connection. You can create a virtual private gateway before creating the VPC itself. *

*

* For more information, see AWS Site-to-Site * VPN in the AWS Site-to-Site VPN User Guide. *

* * @param createVpnGatewayRequest * Contains the parameters for CreateVpnGateway. * @return Result of the CreateVpnGateway operation returned by the service. * @sample AmazonEC2.CreateVpnGateway * @see AWS API * Documentation */ @Override public CreateVpnGatewayResult createVpnGateway(CreateVpnGatewayRequest request) { request = beforeClientExecution(request); return executeCreateVpnGateway(request); } @SdkInternalApi final CreateVpnGatewayResult executeCreateVpnGateway(CreateVpnGatewayRequest createVpnGatewayRequest) { ExecutionContext executionContext = createExecutionContext(createVpnGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateVpnGatewayRequestMarshaller().marshall(super.beforeMarshalling(createVpnGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateVpnGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateVpnGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified Client VPN endpoint. You must disassociate all target networks before you can delete a * Client VPN endpoint. *

* * @param deleteClientVpnEndpointRequest * @return Result of the DeleteClientVpnEndpoint operation returned by the service. * @sample AmazonEC2.DeleteClientVpnEndpoint * @see AWS * API Documentation */ @Override public DeleteClientVpnEndpointResult deleteClientVpnEndpoint(DeleteClientVpnEndpointRequest request) { request = beforeClientExecution(request); return executeDeleteClientVpnEndpoint(request); } @SdkInternalApi final DeleteClientVpnEndpointResult executeDeleteClientVpnEndpoint(DeleteClientVpnEndpointRequest deleteClientVpnEndpointRequest) { ExecutionContext executionContext = createExecutionContext(deleteClientVpnEndpointRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteClientVpnEndpointRequestMarshaller().marshall(super.beforeMarshalling(deleteClientVpnEndpointRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteClientVpnEndpoint"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteClientVpnEndpointResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a route from a Client VPN endpoint. You can only delete routes that you manually added using the * CreateClientVpnRoute action. You cannot delete routes that were automatically added when associating a * subnet. To remove routes that have been automatically added, disassociate the target subnet from the Client VPN * endpoint. *

* * @param deleteClientVpnRouteRequest * @return Result of the DeleteClientVpnRoute operation returned by the service. * @sample AmazonEC2.DeleteClientVpnRoute * @see AWS API * Documentation */ @Override public DeleteClientVpnRouteResult deleteClientVpnRoute(DeleteClientVpnRouteRequest request) { request = beforeClientExecution(request); return executeDeleteClientVpnRoute(request); } @SdkInternalApi final DeleteClientVpnRouteResult executeDeleteClientVpnRoute(DeleteClientVpnRouteRequest deleteClientVpnRouteRequest) { ExecutionContext executionContext = createExecutionContext(deleteClientVpnRouteRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteClientVpnRouteRequestMarshaller().marshall(super.beforeMarshalling(deleteClientVpnRouteRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteClientVpnRoute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteClientVpnRouteResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified customer gateway. You must delete the VPN connection before you can delete the customer * gateway. *

* * @param deleteCustomerGatewayRequest * Contains the parameters for DeleteCustomerGateway. * @return Result of the DeleteCustomerGateway operation returned by the service. * @sample AmazonEC2.DeleteCustomerGateway * @see AWS API * Documentation */ @Override public DeleteCustomerGatewayResult deleteCustomerGateway(DeleteCustomerGatewayRequest request) { request = beforeClientExecution(request); return executeDeleteCustomerGateway(request); } @SdkInternalApi final DeleteCustomerGatewayResult executeDeleteCustomerGateway(DeleteCustomerGatewayRequest deleteCustomerGatewayRequest) { ExecutionContext executionContext = createExecutionContext(deleteCustomerGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteCustomerGatewayRequestMarshaller().marshall(super.beforeMarshalling(deleteCustomerGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteCustomerGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteCustomerGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified set of DHCP options. You must disassociate the set of DHCP options before you can delete * it. You can disassociate the set of DHCP options by associating either a new set of options or the default set of * options with the VPC. *

* * @param deleteDhcpOptionsRequest * @return Result of the DeleteDhcpOptions operation returned by the service. * @sample AmazonEC2.DeleteDhcpOptions * @see AWS API * Documentation */ @Override public DeleteDhcpOptionsResult deleteDhcpOptions(DeleteDhcpOptionsRequest request) { request = beforeClientExecution(request); return executeDeleteDhcpOptions(request); } @SdkInternalApi final DeleteDhcpOptionsResult executeDeleteDhcpOptions(DeleteDhcpOptionsRequest deleteDhcpOptionsRequest) { ExecutionContext executionContext = createExecutionContext(deleteDhcpOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteDhcpOptionsRequestMarshaller().marshall(super.beforeMarshalling(deleteDhcpOptionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteDhcpOptions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteDhcpOptionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes an egress-only internet gateway. *

* * @param deleteEgressOnlyInternetGatewayRequest * @return Result of the DeleteEgressOnlyInternetGateway operation returned by the service. * @sample AmazonEC2.DeleteEgressOnlyInternetGateway * @see AWS API Documentation */ @Override public DeleteEgressOnlyInternetGatewayResult deleteEgressOnlyInternetGateway(DeleteEgressOnlyInternetGatewayRequest request) { request = beforeClientExecution(request); return executeDeleteEgressOnlyInternetGateway(request); } @SdkInternalApi final DeleteEgressOnlyInternetGatewayResult executeDeleteEgressOnlyInternetGateway( DeleteEgressOnlyInternetGatewayRequest deleteEgressOnlyInternetGatewayRequest) { ExecutionContext executionContext = createExecutionContext(deleteEgressOnlyInternetGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteEgressOnlyInternetGatewayRequestMarshaller().marshall(super.beforeMarshalling(deleteEgressOnlyInternetGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteEgressOnlyInternetGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteEgressOnlyInternetGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified EC2 Fleet. *

*

* After you delete an EC2 Fleet, it launches no new instances. You must specify whether an EC2 Fleet should also * terminate its instances. If you terminate the instances, the EC2 Fleet enters the * deleted_terminating state. Otherwise, the EC2 Fleet enters the deleted_running state, * and the instances continue to run until they are interrupted or you terminate them manually. *

* * @param deleteFleetsRequest * @return Result of the DeleteFleets operation returned by the service. * @sample AmazonEC2.DeleteFleets * @see AWS API * Documentation */ @Override public DeleteFleetsResult deleteFleets(DeleteFleetsRequest request) { request = beforeClientExecution(request); return executeDeleteFleets(request); } @SdkInternalApi final DeleteFleetsResult executeDeleteFleets(DeleteFleetsRequest deleteFleetsRequest) { ExecutionContext executionContext = createExecutionContext(deleteFleetsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteFleetsRequestMarshaller().marshall(super.beforeMarshalling(deleteFleetsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteFleets"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new DeleteFleetsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes one or more flow logs. *

* * @param deleteFlowLogsRequest * @return Result of the DeleteFlowLogs operation returned by the service. * @sample AmazonEC2.DeleteFlowLogs * @see AWS API * Documentation */ @Override public DeleteFlowLogsResult deleteFlowLogs(DeleteFlowLogsRequest request) { request = beforeClientExecution(request); return executeDeleteFlowLogs(request); } @SdkInternalApi final DeleteFlowLogsResult executeDeleteFlowLogs(DeleteFlowLogsRequest deleteFlowLogsRequest) { ExecutionContext executionContext = createExecutionContext(deleteFlowLogsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteFlowLogsRequestMarshaller().marshall(super.beforeMarshalling(deleteFlowLogsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteFlowLogs"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteFlowLogsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified Amazon FPGA Image (AFI). *

* * @param deleteFpgaImageRequest * @return Result of the DeleteFpgaImage operation returned by the service. * @sample AmazonEC2.DeleteFpgaImage * @see AWS API * Documentation */ @Override public DeleteFpgaImageResult deleteFpgaImage(DeleteFpgaImageRequest request) { request = beforeClientExecution(request); return executeDeleteFpgaImage(request); } @SdkInternalApi final DeleteFpgaImageResult executeDeleteFpgaImage(DeleteFpgaImageRequest deleteFpgaImageRequest) { ExecutionContext executionContext = createExecutionContext(deleteFpgaImageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteFpgaImageRequestMarshaller().marshall(super.beforeMarshalling(deleteFpgaImageRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteFpgaImage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteFpgaImageResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified internet gateway. You must detach the internet gateway from the VPC before you can delete * it. *

* * @param deleteInternetGatewayRequest * @return Result of the DeleteInternetGateway operation returned by the service. * @sample AmazonEC2.DeleteInternetGateway * @see AWS API * Documentation */ @Override public DeleteInternetGatewayResult deleteInternetGateway(DeleteInternetGatewayRequest request) { request = beforeClientExecution(request); return executeDeleteInternetGateway(request); } @SdkInternalApi final DeleteInternetGatewayResult executeDeleteInternetGateway(DeleteInternetGatewayRequest deleteInternetGatewayRequest) { ExecutionContext executionContext = createExecutionContext(deleteInternetGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteInternetGatewayRequestMarshaller().marshall(super.beforeMarshalling(deleteInternetGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteInternetGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteInternetGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified key pair, by removing the public key from Amazon EC2. *

* * @param deleteKeyPairRequest * @return Result of the DeleteKeyPair operation returned by the service. * @sample AmazonEC2.DeleteKeyPair * @see AWS API * Documentation */ @Override public DeleteKeyPairResult deleteKeyPair(DeleteKeyPairRequest request) { request = beforeClientExecution(request); return executeDeleteKeyPair(request); } @SdkInternalApi final DeleteKeyPairResult executeDeleteKeyPair(DeleteKeyPairRequest deleteKeyPairRequest) { ExecutionContext executionContext = createExecutionContext(deleteKeyPairRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteKeyPairRequestMarshaller().marshall(super.beforeMarshalling(deleteKeyPairRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteKeyPair"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new DeleteKeyPairResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a launch template. Deleting a launch template deletes all of its versions. *

* * @param deleteLaunchTemplateRequest * @return Result of the DeleteLaunchTemplate operation returned by the service. * @sample AmazonEC2.DeleteLaunchTemplate * @see AWS API * Documentation */ @Override public DeleteLaunchTemplateResult deleteLaunchTemplate(DeleteLaunchTemplateRequest request) { request = beforeClientExecution(request); return executeDeleteLaunchTemplate(request); } @SdkInternalApi final DeleteLaunchTemplateResult executeDeleteLaunchTemplate(DeleteLaunchTemplateRequest deleteLaunchTemplateRequest) { ExecutionContext executionContext = createExecutionContext(deleteLaunchTemplateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteLaunchTemplateRequestMarshaller().marshall(super.beforeMarshalling(deleteLaunchTemplateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteLaunchTemplate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteLaunchTemplateResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes one or more versions of a launch template. You cannot delete the default version of a launch template; * you must first assign a different version as the default. If the default version is the only version for the * launch template, you must delete the entire launch template using DeleteLaunchTemplate. *

* * @param deleteLaunchTemplateVersionsRequest * @return Result of the DeleteLaunchTemplateVersions operation returned by the service. * @sample AmazonEC2.DeleteLaunchTemplateVersions * @see AWS API Documentation */ @Override public DeleteLaunchTemplateVersionsResult deleteLaunchTemplateVersions(DeleteLaunchTemplateVersionsRequest request) { request = beforeClientExecution(request); return executeDeleteLaunchTemplateVersions(request); } @SdkInternalApi final DeleteLaunchTemplateVersionsResult executeDeleteLaunchTemplateVersions(DeleteLaunchTemplateVersionsRequest deleteLaunchTemplateVersionsRequest) { ExecutionContext executionContext = createExecutionContext(deleteLaunchTemplateVersionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteLaunchTemplateVersionsRequestMarshaller().marshall(super.beforeMarshalling(deleteLaunchTemplateVersionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteLaunchTemplateVersions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteLaunchTemplateVersionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified NAT gateway. Deleting a NAT gateway disassociates its Elastic IP address, but does not * release the address from your account. Deleting a NAT gateway does not delete any NAT gateway routes in your * route tables. *

* * @param deleteNatGatewayRequest * @return Result of the DeleteNatGateway operation returned by the service. * @sample AmazonEC2.DeleteNatGateway * @see AWS API * Documentation */ @Override public DeleteNatGatewayResult deleteNatGateway(DeleteNatGatewayRequest request) { request = beforeClientExecution(request); return executeDeleteNatGateway(request); } @SdkInternalApi final DeleteNatGatewayResult executeDeleteNatGateway(DeleteNatGatewayRequest deleteNatGatewayRequest) { ExecutionContext executionContext = createExecutionContext(deleteNatGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteNatGatewayRequestMarshaller().marshall(super.beforeMarshalling(deleteNatGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteNatGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteNatGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified network ACL. You can't delete the ACL if it's associated with any subnets. You can't delete * the default network ACL. *

* * @param deleteNetworkAclRequest * @return Result of the DeleteNetworkAcl operation returned by the service. * @sample AmazonEC2.DeleteNetworkAcl * @see AWS API * Documentation */ @Override public DeleteNetworkAclResult deleteNetworkAcl(DeleteNetworkAclRequest request) { request = beforeClientExecution(request); return executeDeleteNetworkAcl(request); } @SdkInternalApi final DeleteNetworkAclResult executeDeleteNetworkAcl(DeleteNetworkAclRequest deleteNetworkAclRequest) { ExecutionContext executionContext = createExecutionContext(deleteNetworkAclRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteNetworkAclRequestMarshaller().marshall(super.beforeMarshalling(deleteNetworkAclRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteNetworkAcl"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteNetworkAclResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified ingress or egress entry (rule) from the specified network ACL. *

* * @param deleteNetworkAclEntryRequest * @return Result of the DeleteNetworkAclEntry operation returned by the service. * @sample AmazonEC2.DeleteNetworkAclEntry * @see AWS API * Documentation */ @Override public DeleteNetworkAclEntryResult deleteNetworkAclEntry(DeleteNetworkAclEntryRequest request) { request = beforeClientExecution(request); return executeDeleteNetworkAclEntry(request); } @SdkInternalApi final DeleteNetworkAclEntryResult executeDeleteNetworkAclEntry(DeleteNetworkAclEntryRequest deleteNetworkAclEntryRequest) { ExecutionContext executionContext = createExecutionContext(deleteNetworkAclEntryRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteNetworkAclEntryRequestMarshaller().marshall(super.beforeMarshalling(deleteNetworkAclEntryRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteNetworkAclEntry"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteNetworkAclEntryResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified network interface. You must detach the network interface before you can delete it. *

* * @param deleteNetworkInterfaceRequest * Contains the parameters for DeleteNetworkInterface. * @return Result of the DeleteNetworkInterface operation returned by the service. * @sample AmazonEC2.DeleteNetworkInterface * @see AWS API * Documentation */ @Override public DeleteNetworkInterfaceResult deleteNetworkInterface(DeleteNetworkInterfaceRequest request) { request = beforeClientExecution(request); return executeDeleteNetworkInterface(request); } @SdkInternalApi final DeleteNetworkInterfaceResult executeDeleteNetworkInterface(DeleteNetworkInterfaceRequest deleteNetworkInterfaceRequest) { ExecutionContext executionContext = createExecutionContext(deleteNetworkInterfaceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteNetworkInterfaceRequestMarshaller().marshall(super.beforeMarshalling(deleteNetworkInterfaceRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteNetworkInterface"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteNetworkInterfaceResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a permission for a network interface. By default, you cannot delete the permission if the account for * which you're removing the permission has attached the network interface to an instance. However, you can force * delete the permission, regardless of any attachment. *

* * @param deleteNetworkInterfacePermissionRequest * Contains the parameters for DeleteNetworkInterfacePermission. * @return Result of the DeleteNetworkInterfacePermission operation returned by the service. * @sample AmazonEC2.DeleteNetworkInterfacePermission * @see AWS API Documentation */ @Override public DeleteNetworkInterfacePermissionResult deleteNetworkInterfacePermission(DeleteNetworkInterfacePermissionRequest request) { request = beforeClientExecution(request); return executeDeleteNetworkInterfacePermission(request); } @SdkInternalApi final DeleteNetworkInterfacePermissionResult executeDeleteNetworkInterfacePermission( DeleteNetworkInterfacePermissionRequest deleteNetworkInterfacePermissionRequest) { ExecutionContext executionContext = createExecutionContext(deleteNetworkInterfacePermissionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteNetworkInterfacePermissionRequestMarshaller().marshall(super.beforeMarshalling(deleteNetworkInterfacePermissionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteNetworkInterfacePermission"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteNetworkInterfacePermissionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified placement group. You must terminate all instances in the placement group before you can * delete the placement group. For more information, see Placement Groups in the * Amazon Elastic Compute Cloud User Guide. *

* * @param deletePlacementGroupRequest * @return Result of the DeletePlacementGroup operation returned by the service. * @sample AmazonEC2.DeletePlacementGroup * @see AWS API * Documentation */ @Override public DeletePlacementGroupResult deletePlacementGroup(DeletePlacementGroupRequest request) { request = beforeClientExecution(request); return executeDeletePlacementGroup(request); } @SdkInternalApi final DeletePlacementGroupResult executeDeletePlacementGroup(DeletePlacementGroupRequest deletePlacementGroupRequest) { ExecutionContext executionContext = createExecutionContext(deletePlacementGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeletePlacementGroupRequestMarshaller().marshall(super.beforeMarshalling(deletePlacementGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeletePlacementGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeletePlacementGroupResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified route from the specified route table. *

* * @param deleteRouteRequest * @return Result of the DeleteRoute operation returned by the service. * @sample AmazonEC2.DeleteRoute * @see AWS API * Documentation */ @Override public DeleteRouteResult deleteRoute(DeleteRouteRequest request) { request = beforeClientExecution(request); return executeDeleteRoute(request); } @SdkInternalApi final DeleteRouteResult executeDeleteRoute(DeleteRouteRequest deleteRouteRequest) { ExecutionContext executionContext = createExecutionContext(deleteRouteRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteRouteRequestMarshaller().marshall(super.beforeMarshalling(deleteRouteRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteRoute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new DeleteRouteResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified route table. You must disassociate the route table from any subnets before you can delete * it. You can't delete the main route table. *

* * @param deleteRouteTableRequest * @return Result of the DeleteRouteTable operation returned by the service. * @sample AmazonEC2.DeleteRouteTable * @see AWS API * Documentation */ @Override public DeleteRouteTableResult deleteRouteTable(DeleteRouteTableRequest request) { request = beforeClientExecution(request); return executeDeleteRouteTable(request); } @SdkInternalApi final DeleteRouteTableResult executeDeleteRouteTable(DeleteRouteTableRequest deleteRouteTableRequest) { ExecutionContext executionContext = createExecutionContext(deleteRouteTableRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteRouteTableRequestMarshaller().marshall(super.beforeMarshalling(deleteRouteTableRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteRouteTable"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteRouteTableResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a security group. *

*

* If you attempt to delete a security group that is associated with an instance, or is referenced by another * security group, the operation fails with InvalidGroup.InUse in EC2-Classic or * DependencyViolation in EC2-VPC. *

* * @param deleteSecurityGroupRequest * @return Result of the DeleteSecurityGroup operation returned by the service. * @sample AmazonEC2.DeleteSecurityGroup * @see AWS API * Documentation */ @Override public DeleteSecurityGroupResult deleteSecurityGroup(DeleteSecurityGroupRequest request) { request = beforeClientExecution(request); return executeDeleteSecurityGroup(request); } @SdkInternalApi final DeleteSecurityGroupResult executeDeleteSecurityGroup(DeleteSecurityGroupRequest deleteSecurityGroupRequest) { ExecutionContext executionContext = createExecutionContext(deleteSecurityGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteSecurityGroupRequestMarshaller().marshall(super.beforeMarshalling(deleteSecurityGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteSecurityGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteSecurityGroupResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified snapshot. *

*

* When you make periodic snapshots of a volume, the snapshots are incremental, and only the blocks on the device * that have changed since your last snapshot are saved in the new snapshot. When you delete a snapshot, only the * data not needed for any other snapshot is removed. So regardless of which prior snapshots have been deleted, all * active snapshots will have access to all the information needed to restore the volume. *

*

* You cannot delete a snapshot of the root device of an EBS volume used by a registered AMI. You must first * de-register the AMI before you can delete the snapshot. *

*

* For more information, see Deleting an Amazon EBS * Snapshot in the Amazon Elastic Compute Cloud User Guide. *

* * @param deleteSnapshotRequest * Contains the parameters for DeleteSnapshot. * @return Result of the DeleteSnapshot operation returned by the service. * @sample AmazonEC2.DeleteSnapshot * @see AWS API * Documentation */ @Override public DeleteSnapshotResult deleteSnapshot(DeleteSnapshotRequest request) { request = beforeClientExecution(request); return executeDeleteSnapshot(request); } @SdkInternalApi final DeleteSnapshotResult executeDeleteSnapshot(DeleteSnapshotRequest deleteSnapshotRequest) { ExecutionContext executionContext = createExecutionContext(deleteSnapshotRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteSnapshotRequestMarshaller().marshall(super.beforeMarshalling(deleteSnapshotRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteSnapshot"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteSnapshotResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the data feed for Spot Instances. *

* * @param deleteSpotDatafeedSubscriptionRequest * Contains the parameters for DeleteSpotDatafeedSubscription. * @return Result of the DeleteSpotDatafeedSubscription operation returned by the service. * @sample AmazonEC2.DeleteSpotDatafeedSubscription * @see AWS API Documentation */ @Override public DeleteSpotDatafeedSubscriptionResult deleteSpotDatafeedSubscription(DeleteSpotDatafeedSubscriptionRequest request) { request = beforeClientExecution(request); return executeDeleteSpotDatafeedSubscription(request); } @SdkInternalApi final DeleteSpotDatafeedSubscriptionResult executeDeleteSpotDatafeedSubscription(DeleteSpotDatafeedSubscriptionRequest deleteSpotDatafeedSubscriptionRequest) { ExecutionContext executionContext = createExecutionContext(deleteSpotDatafeedSubscriptionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteSpotDatafeedSubscriptionRequestMarshaller().marshall(super.beforeMarshalling(deleteSpotDatafeedSubscriptionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteSpotDatafeedSubscription"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteSpotDatafeedSubscriptionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DeleteSpotDatafeedSubscriptionResult deleteSpotDatafeedSubscription() { return deleteSpotDatafeedSubscription(new DeleteSpotDatafeedSubscriptionRequest()); } /** *

* Deletes the specified subnet. You must terminate all running instances in the subnet before you can delete the * subnet. *

* * @param deleteSubnetRequest * @return Result of the DeleteSubnet operation returned by the service. * @sample AmazonEC2.DeleteSubnet * @see AWS API * Documentation */ @Override public DeleteSubnetResult deleteSubnet(DeleteSubnetRequest request) { request = beforeClientExecution(request); return executeDeleteSubnet(request); } @SdkInternalApi final DeleteSubnetResult executeDeleteSubnet(DeleteSubnetRequest deleteSubnetRequest) { ExecutionContext executionContext = createExecutionContext(deleteSubnetRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteSubnetRequestMarshaller().marshall(super.beforeMarshalling(deleteSubnetRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteSubnet"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new DeleteSubnetResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified set of tags from the specified set of resources. *

*

* To list the current tags, use DescribeTags. For more information about tags, see Tagging Your Resources in the * Amazon Elastic Compute Cloud User Guide. *

* * @param deleteTagsRequest * @return Result of the DeleteTags operation returned by the service. * @sample AmazonEC2.DeleteTags * @see AWS API * Documentation */ @Override public DeleteTagsResult deleteTags(DeleteTagsRequest request) { request = beforeClientExecution(request); return executeDeleteTags(request); } @SdkInternalApi final DeleteTagsResult executeDeleteTags(DeleteTagsRequest deleteTagsRequest) { ExecutionContext executionContext = createExecutionContext(deleteTagsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteTagsRequestMarshaller().marshall(super.beforeMarshalling(deleteTagsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteTags"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new DeleteTagsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified Traffic Mirror filter. *

*

* You cannot delete a Traffic Mirror filter that is in use by a Traffic Mirror session. *

* * @param deleteTrafficMirrorFilterRequest * @return Result of the DeleteTrafficMirrorFilter operation returned by the service. * @sample AmazonEC2.DeleteTrafficMirrorFilter * @see AWS * API Documentation */ @Override public DeleteTrafficMirrorFilterResult deleteTrafficMirrorFilter(DeleteTrafficMirrorFilterRequest request) { request = beforeClientExecution(request); return executeDeleteTrafficMirrorFilter(request); } @SdkInternalApi final DeleteTrafficMirrorFilterResult executeDeleteTrafficMirrorFilter(DeleteTrafficMirrorFilterRequest deleteTrafficMirrorFilterRequest) { ExecutionContext executionContext = createExecutionContext(deleteTrafficMirrorFilterRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteTrafficMirrorFilterRequestMarshaller().marshall(super.beforeMarshalling(deleteTrafficMirrorFilterRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteTrafficMirrorFilter"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteTrafficMirrorFilterResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified Traffic Mirror rule. *

* * @param deleteTrafficMirrorFilterRuleRequest * @return Result of the DeleteTrafficMirrorFilterRule operation returned by the service. * @sample AmazonEC2.DeleteTrafficMirrorFilterRule * @see AWS API Documentation */ @Override public DeleteTrafficMirrorFilterRuleResult deleteTrafficMirrorFilterRule(DeleteTrafficMirrorFilterRuleRequest request) { request = beforeClientExecution(request); return executeDeleteTrafficMirrorFilterRule(request); } @SdkInternalApi final DeleteTrafficMirrorFilterRuleResult executeDeleteTrafficMirrorFilterRule(DeleteTrafficMirrorFilterRuleRequest deleteTrafficMirrorFilterRuleRequest) { ExecutionContext executionContext = createExecutionContext(deleteTrafficMirrorFilterRuleRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteTrafficMirrorFilterRuleRequestMarshaller().marshall(super.beforeMarshalling(deleteTrafficMirrorFilterRuleRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteTrafficMirrorFilterRule"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteTrafficMirrorFilterRuleResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified Traffic Mirror session. *

* * @param deleteTrafficMirrorSessionRequest * @return Result of the DeleteTrafficMirrorSession operation returned by the service. * @sample AmazonEC2.DeleteTrafficMirrorSession * @see AWS * API Documentation */ @Override public DeleteTrafficMirrorSessionResult deleteTrafficMirrorSession(DeleteTrafficMirrorSessionRequest request) { request = beforeClientExecution(request); return executeDeleteTrafficMirrorSession(request); } @SdkInternalApi final DeleteTrafficMirrorSessionResult executeDeleteTrafficMirrorSession(DeleteTrafficMirrorSessionRequest deleteTrafficMirrorSessionRequest) { ExecutionContext executionContext = createExecutionContext(deleteTrafficMirrorSessionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteTrafficMirrorSessionRequestMarshaller().marshall(super.beforeMarshalling(deleteTrafficMirrorSessionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteTrafficMirrorSession"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteTrafficMirrorSessionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified Traffic Mirror target. *

*

* You cannot delete a Traffic Mirror target that is in use by a Traffic Mirror session. *

* * @param deleteTrafficMirrorTargetRequest * @return Result of the DeleteTrafficMirrorTarget operation returned by the service. * @sample AmazonEC2.DeleteTrafficMirrorTarget * @see AWS * API Documentation */ @Override public DeleteTrafficMirrorTargetResult deleteTrafficMirrorTarget(DeleteTrafficMirrorTargetRequest request) { request = beforeClientExecution(request); return executeDeleteTrafficMirrorTarget(request); } @SdkInternalApi final DeleteTrafficMirrorTargetResult executeDeleteTrafficMirrorTarget(DeleteTrafficMirrorTargetRequest deleteTrafficMirrorTargetRequest) { ExecutionContext executionContext = createExecutionContext(deleteTrafficMirrorTargetRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteTrafficMirrorTargetRequestMarshaller().marshall(super.beforeMarshalling(deleteTrafficMirrorTargetRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteTrafficMirrorTarget"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteTrafficMirrorTargetResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified transit gateway. *

* * @param deleteTransitGatewayRequest * @return Result of the DeleteTransitGateway operation returned by the service. * @sample AmazonEC2.DeleteTransitGateway * @see AWS API * Documentation */ @Override public DeleteTransitGatewayResult deleteTransitGateway(DeleteTransitGatewayRequest request) { request = beforeClientExecution(request); return executeDeleteTransitGateway(request); } @SdkInternalApi final DeleteTransitGatewayResult executeDeleteTransitGateway(DeleteTransitGatewayRequest deleteTransitGatewayRequest) { ExecutionContext executionContext = createExecutionContext(deleteTransitGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteTransitGatewayRequestMarshaller().marshall(super.beforeMarshalling(deleteTransitGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteTransitGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteTransitGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified route from the specified transit gateway route table. *

* * @param deleteTransitGatewayRouteRequest * @return Result of the DeleteTransitGatewayRoute operation returned by the service. * @sample AmazonEC2.DeleteTransitGatewayRoute * @see AWS * API Documentation */ @Override public DeleteTransitGatewayRouteResult deleteTransitGatewayRoute(DeleteTransitGatewayRouteRequest request) { request = beforeClientExecution(request); return executeDeleteTransitGatewayRoute(request); } @SdkInternalApi final DeleteTransitGatewayRouteResult executeDeleteTransitGatewayRoute(DeleteTransitGatewayRouteRequest deleteTransitGatewayRouteRequest) { ExecutionContext executionContext = createExecutionContext(deleteTransitGatewayRouteRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteTransitGatewayRouteRequestMarshaller().marshall(super.beforeMarshalling(deleteTransitGatewayRouteRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteTransitGatewayRoute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteTransitGatewayRouteResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified transit gateway route table. You must disassociate the route table from any transit gateway * route tables before you can delete it. *

* * @param deleteTransitGatewayRouteTableRequest * @return Result of the DeleteTransitGatewayRouteTable operation returned by the service. * @sample AmazonEC2.DeleteTransitGatewayRouteTable * @see AWS API Documentation */ @Override public DeleteTransitGatewayRouteTableResult deleteTransitGatewayRouteTable(DeleteTransitGatewayRouteTableRequest request) { request = beforeClientExecution(request); return executeDeleteTransitGatewayRouteTable(request); } @SdkInternalApi final DeleteTransitGatewayRouteTableResult executeDeleteTransitGatewayRouteTable(DeleteTransitGatewayRouteTableRequest deleteTransitGatewayRouteTableRequest) { ExecutionContext executionContext = createExecutionContext(deleteTransitGatewayRouteTableRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteTransitGatewayRouteTableRequestMarshaller().marshall(super.beforeMarshalling(deleteTransitGatewayRouteTableRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteTransitGatewayRouteTable"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteTransitGatewayRouteTableResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified VPC attachment. *

* * @param deleteTransitGatewayVpcAttachmentRequest * @return Result of the DeleteTransitGatewayVpcAttachment operation returned by the service. * @sample AmazonEC2.DeleteTransitGatewayVpcAttachment * @see AWS API Documentation */ @Override public DeleteTransitGatewayVpcAttachmentResult deleteTransitGatewayVpcAttachment(DeleteTransitGatewayVpcAttachmentRequest request) { request = beforeClientExecution(request); return executeDeleteTransitGatewayVpcAttachment(request); } @SdkInternalApi final DeleteTransitGatewayVpcAttachmentResult executeDeleteTransitGatewayVpcAttachment( DeleteTransitGatewayVpcAttachmentRequest deleteTransitGatewayVpcAttachmentRequest) { ExecutionContext executionContext = createExecutionContext(deleteTransitGatewayVpcAttachmentRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteTransitGatewayVpcAttachmentRequestMarshaller().marshall(super.beforeMarshalling(deleteTransitGatewayVpcAttachmentRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteTransitGatewayVpcAttachment"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteTransitGatewayVpcAttachmentResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified EBS volume. The volume must be in the available state (not attached to an * instance). *

*

* The volume can remain in the deleting state for several minutes. *

*

* For more information, see Deleting an Amazon EBS * Volume in the Amazon Elastic Compute Cloud User Guide. *

* * @param deleteVolumeRequest * Contains the parameters for DeleteVolume. * @return Result of the DeleteVolume operation returned by the service. * @sample AmazonEC2.DeleteVolume * @see AWS API * Documentation */ @Override public DeleteVolumeResult deleteVolume(DeleteVolumeRequest request) { request = beforeClientExecution(request); return executeDeleteVolume(request); } @SdkInternalApi final DeleteVolumeResult executeDeleteVolume(DeleteVolumeRequest deleteVolumeRequest) { ExecutionContext executionContext = createExecutionContext(deleteVolumeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteVolumeRequestMarshaller().marshall(super.beforeMarshalling(deleteVolumeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteVolume"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new DeleteVolumeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified VPC. You must detach or delete all gateways and resources that are associated with the VPC * before you can delete it. For example, you must terminate all instances running in the VPC, delete all security * groups associated with the VPC (except the default one), delete all route tables associated with the VPC (except * the default one), and so on. *

* * @param deleteVpcRequest * @return Result of the DeleteVpc operation returned by the service. * @sample AmazonEC2.DeleteVpc * @see AWS API * Documentation */ @Override public DeleteVpcResult deleteVpc(DeleteVpcRequest request) { request = beforeClientExecution(request); return executeDeleteVpc(request); } @SdkInternalApi final DeleteVpcResult executeDeleteVpc(DeleteVpcRequest deleteVpcRequest) { ExecutionContext executionContext = createExecutionContext(deleteVpcRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteVpcRequestMarshaller().marshall(super.beforeMarshalling(deleteVpcRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteVpc"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new DeleteVpcResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes one or more VPC endpoint connection notifications. *

* * @param deleteVpcEndpointConnectionNotificationsRequest * @return Result of the DeleteVpcEndpointConnectionNotifications operation returned by the service. * @sample AmazonEC2.DeleteVpcEndpointConnectionNotifications * @see AWS API Documentation */ @Override public DeleteVpcEndpointConnectionNotificationsResult deleteVpcEndpointConnectionNotifications(DeleteVpcEndpointConnectionNotificationsRequest request) { request = beforeClientExecution(request); return executeDeleteVpcEndpointConnectionNotifications(request); } @SdkInternalApi final DeleteVpcEndpointConnectionNotificationsResult executeDeleteVpcEndpointConnectionNotifications( DeleteVpcEndpointConnectionNotificationsRequest deleteVpcEndpointConnectionNotificationsRequest) { ExecutionContext executionContext = createExecutionContext(deleteVpcEndpointConnectionNotificationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteVpcEndpointConnectionNotificationsRequestMarshaller().marshall(super .beforeMarshalling(deleteVpcEndpointConnectionNotificationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteVpcEndpointConnectionNotifications"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteVpcEndpointConnectionNotificationsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes one or more VPC endpoint service configurations in your account. Before you delete the endpoint service * configuration, you must reject any Available or PendingAcceptance interface endpoint * connections that are attached to the service. *

* * @param deleteVpcEndpointServiceConfigurationsRequest * @return Result of the DeleteVpcEndpointServiceConfigurations operation returned by the service. * @sample AmazonEC2.DeleteVpcEndpointServiceConfigurations * @see AWS API Documentation */ @Override public DeleteVpcEndpointServiceConfigurationsResult deleteVpcEndpointServiceConfigurations(DeleteVpcEndpointServiceConfigurationsRequest request) { request = beforeClientExecution(request); return executeDeleteVpcEndpointServiceConfigurations(request); } @SdkInternalApi final DeleteVpcEndpointServiceConfigurationsResult executeDeleteVpcEndpointServiceConfigurations( DeleteVpcEndpointServiceConfigurationsRequest deleteVpcEndpointServiceConfigurationsRequest) { ExecutionContext executionContext = createExecutionContext(deleteVpcEndpointServiceConfigurationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteVpcEndpointServiceConfigurationsRequestMarshaller().marshall(super .beforeMarshalling(deleteVpcEndpointServiceConfigurationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteVpcEndpointServiceConfigurations"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteVpcEndpointServiceConfigurationsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes one or more specified VPC endpoints. Deleting a gateway endpoint also deletes the endpoint routes in the * route tables that were associated with the endpoint. Deleting an interface endpoint deletes the endpoint network * interfaces. *

* * @param deleteVpcEndpointsRequest * Contains the parameters for DeleteVpcEndpoints. * @return Result of the DeleteVpcEndpoints operation returned by the service. * @sample AmazonEC2.DeleteVpcEndpoints * @see AWS API * Documentation */ @Override public DeleteVpcEndpointsResult deleteVpcEndpoints(DeleteVpcEndpointsRequest request) { request = beforeClientExecution(request); return executeDeleteVpcEndpoints(request); } @SdkInternalApi final DeleteVpcEndpointsResult executeDeleteVpcEndpoints(DeleteVpcEndpointsRequest deleteVpcEndpointsRequest) { ExecutionContext executionContext = createExecutionContext(deleteVpcEndpointsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteVpcEndpointsRequestMarshaller().marshall(super.beforeMarshalling(deleteVpcEndpointsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteVpcEndpoints"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteVpcEndpointsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a VPC peering connection. Either the owner of the requester VPC or the owner of the accepter VPC can * delete the VPC peering connection if it's in the active state. The owner of the requester VPC can * delete a VPC peering connection in the pending-acceptance state. You cannot delete a VPC peering * connection that's in the failed state. *

* * @param deleteVpcPeeringConnectionRequest * @return Result of the DeleteVpcPeeringConnection operation returned by the service. * @sample AmazonEC2.DeleteVpcPeeringConnection * @see AWS * API Documentation */ @Override public DeleteVpcPeeringConnectionResult deleteVpcPeeringConnection(DeleteVpcPeeringConnectionRequest request) { request = beforeClientExecution(request); return executeDeleteVpcPeeringConnection(request); } @SdkInternalApi final DeleteVpcPeeringConnectionResult executeDeleteVpcPeeringConnection(DeleteVpcPeeringConnectionRequest deleteVpcPeeringConnectionRequest) { ExecutionContext executionContext = createExecutionContext(deleteVpcPeeringConnectionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteVpcPeeringConnectionRequestMarshaller().marshall(super.beforeMarshalling(deleteVpcPeeringConnectionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteVpcPeeringConnection"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteVpcPeeringConnectionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified VPN connection. *

*

* If you're deleting the VPC and its associated components, we recommend that you detach the virtual private * gateway from the VPC and delete the VPC before deleting the VPN connection. If you believe that the tunnel * credentials for your VPN connection have been compromised, you can delete the VPN connection and create a new one * that has new keys, without needing to delete the VPC or virtual private gateway. If you create a new VPN * connection, you must reconfigure the customer gateway using the new configuration information returned with the * new VPN connection ID. *

* * @param deleteVpnConnectionRequest * Contains the parameters for DeleteVpnConnection. * @return Result of the DeleteVpnConnection operation returned by the service. * @sample AmazonEC2.DeleteVpnConnection * @see AWS API * Documentation */ @Override public DeleteVpnConnectionResult deleteVpnConnection(DeleteVpnConnectionRequest request) { request = beforeClientExecution(request); return executeDeleteVpnConnection(request); } @SdkInternalApi final DeleteVpnConnectionResult executeDeleteVpnConnection(DeleteVpnConnectionRequest deleteVpnConnectionRequest) { ExecutionContext executionContext = createExecutionContext(deleteVpnConnectionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteVpnConnectionRequestMarshaller().marshall(super.beforeMarshalling(deleteVpnConnectionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteVpnConnection"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteVpnConnectionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified static route associated with a VPN connection between an existing virtual private gateway * and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the * VPN customer gateway. *

* * @param deleteVpnConnectionRouteRequest * Contains the parameters for DeleteVpnConnectionRoute. * @return Result of the DeleteVpnConnectionRoute operation returned by the service. * @sample AmazonEC2.DeleteVpnConnectionRoute * @see AWS * API Documentation */ @Override public DeleteVpnConnectionRouteResult deleteVpnConnectionRoute(DeleteVpnConnectionRouteRequest request) { request = beforeClientExecution(request); return executeDeleteVpnConnectionRoute(request); } @SdkInternalApi final DeleteVpnConnectionRouteResult executeDeleteVpnConnectionRoute(DeleteVpnConnectionRouteRequest deleteVpnConnectionRouteRequest) { ExecutionContext executionContext = createExecutionContext(deleteVpnConnectionRouteRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteVpnConnectionRouteRequestMarshaller().marshall(super.beforeMarshalling(deleteVpnConnectionRouteRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteVpnConnectionRoute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteVpnConnectionRouteResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified virtual private gateway. We recommend that before you delete a virtual private gateway, you * detach it from the VPC and delete the VPN connection. Note that you don't need to delete the virtual private * gateway if you plan to delete and recreate the VPN connection between your VPC and your network. *

* * @param deleteVpnGatewayRequest * Contains the parameters for DeleteVpnGateway. * @return Result of the DeleteVpnGateway operation returned by the service. * @sample AmazonEC2.DeleteVpnGateway * @see AWS API * Documentation */ @Override public DeleteVpnGatewayResult deleteVpnGateway(DeleteVpnGatewayRequest request) { request = beforeClientExecution(request); return executeDeleteVpnGateway(request); } @SdkInternalApi final DeleteVpnGatewayResult executeDeleteVpnGateway(DeleteVpnGatewayRequest deleteVpnGatewayRequest) { ExecutionContext executionContext = createExecutionContext(deleteVpnGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteVpnGatewayRequestMarshaller().marshall(super.beforeMarshalling(deleteVpnGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteVpnGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteVpnGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Releases the specified address range that you provisioned for use with your AWS resources through bring your own * IP addresses (BYOIP) and deletes the corresponding address pool. *

*

* Before you can release an address range, you must stop advertising it using WithdrawByoipCidr and you must * not have any IP addresses allocated from its address range. *

* * @param deprovisionByoipCidrRequest * @return Result of the DeprovisionByoipCidr operation returned by the service. * @sample AmazonEC2.DeprovisionByoipCidr * @see AWS API * Documentation */ @Override public DeprovisionByoipCidrResult deprovisionByoipCidr(DeprovisionByoipCidrRequest request) { request = beforeClientExecution(request); return executeDeprovisionByoipCidr(request); } @SdkInternalApi final DeprovisionByoipCidrResult executeDeprovisionByoipCidr(DeprovisionByoipCidrRequest deprovisionByoipCidrRequest) { ExecutionContext executionContext = createExecutionContext(deprovisionByoipCidrRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeprovisionByoipCidrRequestMarshaller().marshall(super.beforeMarshalling(deprovisionByoipCidrRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeprovisionByoipCidr"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeprovisionByoipCidrResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deregisters the specified AMI. After you deregister an AMI, it can't be used to launch new instances; however, it * doesn't affect any instances that you've already launched from the AMI. You'll continue to incur usage costs for * those instances until you terminate them. *

*

* When you deregister an Amazon EBS-backed AMI, it doesn't affect the snapshot that was created for the root volume * of the instance during the AMI creation process. When you deregister an instance store-backed AMI, it doesn't * affect the files that you uploaded to Amazon S3 when you created the AMI. *

* * @param deregisterImageRequest * Contains the parameters for DeregisterImage. * @return Result of the DeregisterImage operation returned by the service. * @sample AmazonEC2.DeregisterImage * @see AWS API * Documentation */ @Override public DeregisterImageResult deregisterImage(DeregisterImageRequest request) { request = beforeClientExecution(request); return executeDeregisterImage(request); } @SdkInternalApi final DeregisterImageResult executeDeregisterImage(DeregisterImageRequest deregisterImageRequest) { ExecutionContext executionContext = createExecutionContext(deregisterImageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeregisterImageRequestMarshaller().marshall(super.beforeMarshalling(deregisterImageRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeregisterImage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeregisterImageResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes attributes of your AWS account. The following are the supported account attributes: *

*
    *
  • *

    * supported-platforms: Indicates whether your account can launch instances into EC2-Classic and * EC2-VPC, or only into EC2-VPC. *

    *
  • *
  • *

    * default-vpc: The ID of the default VPC for your account, or none. *

    *
  • *
  • *

    * max-instances: The maximum number of On-Demand Instances that you can run. *

    *
  • *
  • *

    * vpc-max-security-groups-per-interface: The maximum number of security groups that you can assign to * a network interface. *

    *
  • *
  • *

    * max-elastic-ips: The maximum number of Elastic IP addresses that you can allocate for use with * EC2-Classic. *

    *
  • *
  • *

    * vpc-max-elastic-ips: The maximum number of Elastic IP addresses that you can allocate for use with * EC2-VPC. *

    *
  • *
* * @param describeAccountAttributesRequest * @return Result of the DescribeAccountAttributes operation returned by the service. * @sample AmazonEC2.DescribeAccountAttributes * @see AWS * API Documentation */ @Override public DescribeAccountAttributesResult describeAccountAttributes(DescribeAccountAttributesRequest request) { request = beforeClientExecution(request); return executeDescribeAccountAttributes(request); } @SdkInternalApi final DescribeAccountAttributesResult executeDescribeAccountAttributes(DescribeAccountAttributesRequest describeAccountAttributesRequest) { ExecutionContext executionContext = createExecutionContext(describeAccountAttributesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeAccountAttributesRequestMarshaller().marshall(super.beforeMarshalling(describeAccountAttributesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeAccountAttributes"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeAccountAttributesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeAccountAttributesResult describeAccountAttributes() { return describeAccountAttributes(new DescribeAccountAttributesRequest()); } /** *

* Describes the specified Elastic IP addresses or all of your Elastic IP addresses. *

*

* An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses * in the Amazon Elastic Compute Cloud User Guide. *

* * @param describeAddressesRequest * @return Result of the DescribeAddresses operation returned by the service. * @sample AmazonEC2.DescribeAddresses * @see AWS API * Documentation */ @Override public DescribeAddressesResult describeAddresses(DescribeAddressesRequest request) { request = beforeClientExecution(request); return executeDescribeAddresses(request); } @SdkInternalApi final DescribeAddressesResult executeDescribeAddresses(DescribeAddressesRequest describeAddressesRequest) { ExecutionContext executionContext = createExecutionContext(describeAddressesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeAddressesRequestMarshaller().marshall(super.beforeMarshalling(describeAddressesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeAddresses"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeAddressesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeAddressesResult describeAddresses() { return describeAddresses(new DescribeAddressesRequest()); } /** *

* Describes the longer ID format settings for all resource types in a specific Region. This request is useful for * performing a quick audit to determine whether a specific Region is fully opted in for longer IDs (17-character * IDs). *

*

* This request only returns information about resource types that support longer IDs. *

*

* The following resource types support longer IDs: bundle | conversion-task | * customer-gateway | dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | flow-log | image | * import-task | instance | internet-gateway | network-acl | * network-acl-association | network-interface | network-interface-attachment * | prefix-list | reservation | route-table | * route-table-association | security-group | snapshot | subnet * | subnet-cidr-block-association | volume | vpc | * vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway. *

* * @param describeAggregateIdFormatRequest * @return Result of the DescribeAggregateIdFormat operation returned by the service. * @sample AmazonEC2.DescribeAggregateIdFormat * @see AWS * API Documentation */ @Override public DescribeAggregateIdFormatResult describeAggregateIdFormat(DescribeAggregateIdFormatRequest request) { request = beforeClientExecution(request); return executeDescribeAggregateIdFormat(request); } @SdkInternalApi final DescribeAggregateIdFormatResult executeDescribeAggregateIdFormat(DescribeAggregateIdFormatRequest describeAggregateIdFormatRequest) { ExecutionContext executionContext = createExecutionContext(describeAggregateIdFormatRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeAggregateIdFormatRequestMarshaller().marshall(super.beforeMarshalling(describeAggregateIdFormatRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeAggregateIdFormat"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeAggregateIdFormatResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the Availability Zones that are available to you. The results include zones only for the Region you're * currently using. If there is an event impacting an Availability Zone, you can use this request to view the state * and any provided message for that Availability Zone. *

*

* For more information, see Regions and * Availability Zones in the Amazon Elastic Compute Cloud User Guide. *

* * @param describeAvailabilityZonesRequest * @return Result of the DescribeAvailabilityZones operation returned by the service. * @sample AmazonEC2.DescribeAvailabilityZones * @see AWS * API Documentation */ @Override public DescribeAvailabilityZonesResult describeAvailabilityZones(DescribeAvailabilityZonesRequest request) { request = beforeClientExecution(request); return executeDescribeAvailabilityZones(request); } @SdkInternalApi final DescribeAvailabilityZonesResult executeDescribeAvailabilityZones(DescribeAvailabilityZonesRequest describeAvailabilityZonesRequest) { ExecutionContext executionContext = createExecutionContext(describeAvailabilityZonesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeAvailabilityZonesRequestMarshaller().marshall(super.beforeMarshalling(describeAvailabilityZonesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeAvailabilityZones"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeAvailabilityZonesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeAvailabilityZonesResult describeAvailabilityZones() { return describeAvailabilityZones(new DescribeAvailabilityZonesRequest()); } /** *

* Describes the specified bundle tasks or all of your bundle tasks. *

* *

* Completed bundle tasks are listed for only a limited time. If your bundle task is no longer in the list, you can * still register an AMI from it. Just use RegisterImage with the Amazon S3 bucket name and image * manifest name you provided to the bundle task. *

*
* * @param describeBundleTasksRequest * @return Result of the DescribeBundleTasks operation returned by the service. * @sample AmazonEC2.DescribeBundleTasks * @see AWS API * Documentation */ @Override public DescribeBundleTasksResult describeBundleTasks(DescribeBundleTasksRequest request) { request = beforeClientExecution(request); return executeDescribeBundleTasks(request); } @SdkInternalApi final DescribeBundleTasksResult executeDescribeBundleTasks(DescribeBundleTasksRequest describeBundleTasksRequest) { ExecutionContext executionContext = createExecutionContext(describeBundleTasksRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeBundleTasksRequestMarshaller().marshall(super.beforeMarshalling(describeBundleTasksRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeBundleTasks"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeBundleTasksResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeBundleTasksResult describeBundleTasks() { return describeBundleTasks(new DescribeBundleTasksRequest()); } /** *

* Describes the IP address ranges that were specified in calls to ProvisionByoipCidr. *

*

* To describe the address pools that were created when you provisioned the address ranges, use * DescribePublicIpv4Pools. *

* * @param describeByoipCidrsRequest * @return Result of the DescribeByoipCidrs operation returned by the service. * @sample AmazonEC2.DescribeByoipCidrs * @see AWS API * Documentation */ @Override public DescribeByoipCidrsResult describeByoipCidrs(DescribeByoipCidrsRequest request) { request = beforeClientExecution(request); return executeDescribeByoipCidrs(request); } @SdkInternalApi final DescribeByoipCidrsResult executeDescribeByoipCidrs(DescribeByoipCidrsRequest describeByoipCidrsRequest) { ExecutionContext executionContext = createExecutionContext(describeByoipCidrsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeByoipCidrsRequestMarshaller().marshall(super.beforeMarshalling(describeByoipCidrsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeByoipCidrs"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeByoipCidrsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes one or more of your Capacity Reservations. The results describe only the Capacity Reservations in the * AWS Region that you're currently using. *

* * @param describeCapacityReservationsRequest * @return Result of the DescribeCapacityReservations operation returned by the service. * @sample AmazonEC2.DescribeCapacityReservations * @see AWS API Documentation */ @Override public DescribeCapacityReservationsResult describeCapacityReservations(DescribeCapacityReservationsRequest request) { request = beforeClientExecution(request); return executeDescribeCapacityReservations(request); } @SdkInternalApi final DescribeCapacityReservationsResult executeDescribeCapacityReservations(DescribeCapacityReservationsRequest describeCapacityReservationsRequest) { ExecutionContext executionContext = createExecutionContext(describeCapacityReservationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeCapacityReservationsRequestMarshaller().marshall(super.beforeMarshalling(describeCapacityReservationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeCapacityReservations"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeCapacityReservationsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes one or more of your linked EC2-Classic instances. This request only returns information about * EC2-Classic instances linked to a VPC through ClassicLink. You cannot use this request to return information * about other instances. *

* * @param describeClassicLinkInstancesRequest * @return Result of the DescribeClassicLinkInstances operation returned by the service. * @sample AmazonEC2.DescribeClassicLinkInstances * @see AWS API Documentation */ @Override public DescribeClassicLinkInstancesResult describeClassicLinkInstances(DescribeClassicLinkInstancesRequest request) { request = beforeClientExecution(request); return executeDescribeClassicLinkInstances(request); } @SdkInternalApi final DescribeClassicLinkInstancesResult executeDescribeClassicLinkInstances(DescribeClassicLinkInstancesRequest describeClassicLinkInstancesRequest) { ExecutionContext executionContext = createExecutionContext(describeClassicLinkInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeClassicLinkInstancesRequestMarshaller().marshall(super.beforeMarshalling(describeClassicLinkInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeClassicLinkInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeClassicLinkInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeClassicLinkInstancesResult describeClassicLinkInstances() { return describeClassicLinkInstances(new DescribeClassicLinkInstancesRequest()); } /** *

* Describes the authorization rules for a specified Client VPN endpoint. *

* * @param describeClientVpnAuthorizationRulesRequest * @return Result of the DescribeClientVpnAuthorizationRules operation returned by the service. * @sample AmazonEC2.DescribeClientVpnAuthorizationRules * @see AWS API Documentation */ @Override public DescribeClientVpnAuthorizationRulesResult describeClientVpnAuthorizationRules(DescribeClientVpnAuthorizationRulesRequest request) { request = beforeClientExecution(request); return executeDescribeClientVpnAuthorizationRules(request); } @SdkInternalApi final DescribeClientVpnAuthorizationRulesResult executeDescribeClientVpnAuthorizationRules( DescribeClientVpnAuthorizationRulesRequest describeClientVpnAuthorizationRulesRequest) { ExecutionContext executionContext = createExecutionContext(describeClientVpnAuthorizationRulesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeClientVpnAuthorizationRulesRequestMarshaller().marshall(super .beforeMarshalling(describeClientVpnAuthorizationRulesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeClientVpnAuthorizationRules"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeClientVpnAuthorizationRulesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes active client connections and connections that have been terminated within the last 60 minutes for the * specified Client VPN endpoint. *

* * @param describeClientVpnConnectionsRequest * @return Result of the DescribeClientVpnConnections operation returned by the service. * @sample AmazonEC2.DescribeClientVpnConnections * @see AWS API Documentation */ @Override public DescribeClientVpnConnectionsResult describeClientVpnConnections(DescribeClientVpnConnectionsRequest request) { request = beforeClientExecution(request); return executeDescribeClientVpnConnections(request); } @SdkInternalApi final DescribeClientVpnConnectionsResult executeDescribeClientVpnConnections(DescribeClientVpnConnectionsRequest describeClientVpnConnectionsRequest) { ExecutionContext executionContext = createExecutionContext(describeClientVpnConnectionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeClientVpnConnectionsRequestMarshaller().marshall(super.beforeMarshalling(describeClientVpnConnectionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeClientVpnConnections"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeClientVpnConnectionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes one or more Client VPN endpoints in the account. *

* * @param describeClientVpnEndpointsRequest * @return Result of the DescribeClientVpnEndpoints operation returned by the service. * @sample AmazonEC2.DescribeClientVpnEndpoints * @see AWS * API Documentation */ @Override public DescribeClientVpnEndpointsResult describeClientVpnEndpoints(DescribeClientVpnEndpointsRequest request) { request = beforeClientExecution(request); return executeDescribeClientVpnEndpoints(request); } @SdkInternalApi final DescribeClientVpnEndpointsResult executeDescribeClientVpnEndpoints(DescribeClientVpnEndpointsRequest describeClientVpnEndpointsRequest) { ExecutionContext executionContext = createExecutionContext(describeClientVpnEndpointsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeClientVpnEndpointsRequestMarshaller().marshall(super.beforeMarshalling(describeClientVpnEndpointsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeClientVpnEndpoints"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeClientVpnEndpointsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the routes for the specified Client VPN endpoint. *

* * @param describeClientVpnRoutesRequest * @return Result of the DescribeClientVpnRoutes operation returned by the service. * @sample AmazonEC2.DescribeClientVpnRoutes * @see AWS * API Documentation */ @Override public DescribeClientVpnRoutesResult describeClientVpnRoutes(DescribeClientVpnRoutesRequest request) { request = beforeClientExecution(request); return executeDescribeClientVpnRoutes(request); } @SdkInternalApi final DescribeClientVpnRoutesResult executeDescribeClientVpnRoutes(DescribeClientVpnRoutesRequest describeClientVpnRoutesRequest) { ExecutionContext executionContext = createExecutionContext(describeClientVpnRoutesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeClientVpnRoutesRequestMarshaller().marshall(super.beforeMarshalling(describeClientVpnRoutesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeClientVpnRoutes"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeClientVpnRoutesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the target networks associated with the specified Client VPN endpoint. *

* * @param describeClientVpnTargetNetworksRequest * @return Result of the DescribeClientVpnTargetNetworks operation returned by the service. * @sample AmazonEC2.DescribeClientVpnTargetNetworks * @see AWS API Documentation */ @Override public DescribeClientVpnTargetNetworksResult describeClientVpnTargetNetworks(DescribeClientVpnTargetNetworksRequest request) { request = beforeClientExecution(request); return executeDescribeClientVpnTargetNetworks(request); } @SdkInternalApi final DescribeClientVpnTargetNetworksResult executeDescribeClientVpnTargetNetworks( DescribeClientVpnTargetNetworksRequest describeClientVpnTargetNetworksRequest) { ExecutionContext executionContext = createExecutionContext(describeClientVpnTargetNetworksRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeClientVpnTargetNetworksRequestMarshaller().marshall(super.beforeMarshalling(describeClientVpnTargetNetworksRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeClientVpnTargetNetworks"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeClientVpnTargetNetworksResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the specified conversion tasks or all your conversion tasks. For more information, see the VM Import/Export User Guide. *

*

* For information about the import manifest referenced by this API action, see VM Import Manifest. *

* * @param describeConversionTasksRequest * @return Result of the DescribeConversionTasks operation returned by the service. * @sample AmazonEC2.DescribeConversionTasks * @see AWS * API Documentation */ @Override public DescribeConversionTasksResult describeConversionTasks(DescribeConversionTasksRequest request) { request = beforeClientExecution(request); return executeDescribeConversionTasks(request); } @SdkInternalApi final DescribeConversionTasksResult executeDescribeConversionTasks(DescribeConversionTasksRequest describeConversionTasksRequest) { ExecutionContext executionContext = createExecutionContext(describeConversionTasksRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeConversionTasksRequestMarshaller().marshall(super.beforeMarshalling(describeConversionTasksRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeConversionTasks"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeConversionTasksResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeConversionTasksResult describeConversionTasks() { return describeConversionTasks(new DescribeConversionTasksRequest()); } /** *

* Describes one or more of your VPN customer gateways. *

*

* For more information, see AWS Site-to-Site * VPN in the AWS Site-to-Site VPN User Guide. *

* * @param describeCustomerGatewaysRequest * Contains the parameters for DescribeCustomerGateways. * @return Result of the DescribeCustomerGateways operation returned by the service. * @sample AmazonEC2.DescribeCustomerGateways * @see AWS * API Documentation */ @Override public DescribeCustomerGatewaysResult describeCustomerGateways(DescribeCustomerGatewaysRequest request) { request = beforeClientExecution(request); return executeDescribeCustomerGateways(request); } @SdkInternalApi final DescribeCustomerGatewaysResult executeDescribeCustomerGateways(DescribeCustomerGatewaysRequest describeCustomerGatewaysRequest) { ExecutionContext executionContext = createExecutionContext(describeCustomerGatewaysRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeCustomerGatewaysRequestMarshaller().marshall(super.beforeMarshalling(describeCustomerGatewaysRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeCustomerGateways"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeCustomerGatewaysResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeCustomerGatewaysResult describeCustomerGateways() { return describeCustomerGateways(new DescribeCustomerGatewaysRequest()); } /** *

* Describes one or more of your DHCP options sets. *

*

* For more information, see DHCP * Options Sets in the Amazon Virtual Private Cloud User Guide. *

* * @param describeDhcpOptionsRequest * @return Result of the DescribeDhcpOptions operation returned by the service. * @sample AmazonEC2.DescribeDhcpOptions * @see AWS API * Documentation */ @Override public DescribeDhcpOptionsResult describeDhcpOptions(DescribeDhcpOptionsRequest request) { request = beforeClientExecution(request); return executeDescribeDhcpOptions(request); } @SdkInternalApi final DescribeDhcpOptionsResult executeDescribeDhcpOptions(DescribeDhcpOptionsRequest describeDhcpOptionsRequest) { ExecutionContext executionContext = createExecutionContext(describeDhcpOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeDhcpOptionsRequestMarshaller().marshall(super.beforeMarshalling(describeDhcpOptionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeDhcpOptions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeDhcpOptionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeDhcpOptionsResult describeDhcpOptions() { return describeDhcpOptions(new DescribeDhcpOptionsRequest()); } /** *

* Describes one or more of your egress-only internet gateways. *

* * @param describeEgressOnlyInternetGatewaysRequest * @return Result of the DescribeEgressOnlyInternetGateways operation returned by the service. * @sample AmazonEC2.DescribeEgressOnlyInternetGateways * @see AWS API Documentation */ @Override public DescribeEgressOnlyInternetGatewaysResult describeEgressOnlyInternetGateways(DescribeEgressOnlyInternetGatewaysRequest request) { request = beforeClientExecution(request); return executeDescribeEgressOnlyInternetGateways(request); } @SdkInternalApi final DescribeEgressOnlyInternetGatewaysResult executeDescribeEgressOnlyInternetGateways( DescribeEgressOnlyInternetGatewaysRequest describeEgressOnlyInternetGatewaysRequest) { ExecutionContext executionContext = createExecutionContext(describeEgressOnlyInternetGatewaysRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeEgressOnlyInternetGatewaysRequestMarshaller() .marshall(super.beforeMarshalling(describeEgressOnlyInternetGatewaysRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeEgressOnlyInternetGateways"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeEgressOnlyInternetGatewaysResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the Elastic Graphics accelerator associated with your instances. For more information about Elastic * Graphics, see Amazon * Elastic Graphics. *

* * @param describeElasticGpusRequest * @return Result of the DescribeElasticGpus operation returned by the service. * @sample AmazonEC2.DescribeElasticGpus * @see AWS API * Documentation */ @Override public DescribeElasticGpusResult describeElasticGpus(DescribeElasticGpusRequest request) { request = beforeClientExecution(request); return executeDescribeElasticGpus(request); } @SdkInternalApi final DescribeElasticGpusResult executeDescribeElasticGpus(DescribeElasticGpusRequest describeElasticGpusRequest) { ExecutionContext executionContext = createExecutionContext(describeElasticGpusRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeElasticGpusRequestMarshaller().marshall(super.beforeMarshalling(describeElasticGpusRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeElasticGpus"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeElasticGpusResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the specified export tasks or all your export tasks. *

* * @param describeExportTasksRequest * @return Result of the DescribeExportTasks operation returned by the service. * @sample AmazonEC2.DescribeExportTasks * @see AWS API * Documentation */ @Override public DescribeExportTasksResult describeExportTasks(DescribeExportTasksRequest request) { request = beforeClientExecution(request); return executeDescribeExportTasks(request); } @SdkInternalApi final DescribeExportTasksResult executeDescribeExportTasks(DescribeExportTasksRequest describeExportTasksRequest) { ExecutionContext executionContext = createExecutionContext(describeExportTasksRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeExportTasksRequestMarshaller().marshall(super.beforeMarshalling(describeExportTasksRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeExportTasks"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeExportTasksResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeExportTasksResult describeExportTasks() { return describeExportTasks(new DescribeExportTasksRequest()); } /** *

* Describes the events for the specified EC2 Fleet during the specified time. *

* * @param describeFleetHistoryRequest * @return Result of the DescribeFleetHistory operation returned by the service. * @sample AmazonEC2.DescribeFleetHistory * @see AWS API * Documentation */ @Override public DescribeFleetHistoryResult describeFleetHistory(DescribeFleetHistoryRequest request) { request = beforeClientExecution(request); return executeDescribeFleetHistory(request); } @SdkInternalApi final DescribeFleetHistoryResult executeDescribeFleetHistory(DescribeFleetHistoryRequest describeFleetHistoryRequest) { ExecutionContext executionContext = createExecutionContext(describeFleetHistoryRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeFleetHistoryRequestMarshaller().marshall(super.beforeMarshalling(describeFleetHistoryRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeFleetHistory"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeFleetHistoryResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the running instances for the specified EC2 Fleet. *

* * @param describeFleetInstancesRequest * @return Result of the DescribeFleetInstances operation returned by the service. * @sample AmazonEC2.DescribeFleetInstances * @see AWS API * Documentation */ @Override public DescribeFleetInstancesResult describeFleetInstances(DescribeFleetInstancesRequest request) { request = beforeClientExecution(request); return executeDescribeFleetInstances(request); } @SdkInternalApi final DescribeFleetInstancesResult executeDescribeFleetInstances(DescribeFleetInstancesRequest describeFleetInstancesRequest) { ExecutionContext executionContext = createExecutionContext(describeFleetInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeFleetInstancesRequestMarshaller().marshall(super.beforeMarshalling(describeFleetInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeFleetInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeFleetInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the specified EC2 Fleets or all your EC2 Fleets. *

* * @param describeFleetsRequest * @return Result of the DescribeFleets operation returned by the service. * @sample AmazonEC2.DescribeFleets * @see AWS API * Documentation */ @Override public DescribeFleetsResult describeFleets(DescribeFleetsRequest request) { request = beforeClientExecution(request); return executeDescribeFleets(request); } @SdkInternalApi final DescribeFleetsResult executeDescribeFleets(DescribeFleetsRequest describeFleetsRequest) { ExecutionContext executionContext = createExecutionContext(describeFleetsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeFleetsRequestMarshaller().marshall(super.beforeMarshalling(describeFleetsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeFleets"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeFleetsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes one or more flow logs. To view the information in your flow logs (the log streams for the network * interfaces), you must use the CloudWatch Logs console or the CloudWatch Logs API. *

* * @param describeFlowLogsRequest * @return Result of the DescribeFlowLogs operation returned by the service. * @sample AmazonEC2.DescribeFlowLogs * @see AWS API * Documentation */ @Override public DescribeFlowLogsResult describeFlowLogs(DescribeFlowLogsRequest request) { request = beforeClientExecution(request); return executeDescribeFlowLogs(request); } @SdkInternalApi final DescribeFlowLogsResult executeDescribeFlowLogs(DescribeFlowLogsRequest describeFlowLogsRequest) { ExecutionContext executionContext = createExecutionContext(describeFlowLogsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeFlowLogsRequestMarshaller().marshall(super.beforeMarshalling(describeFlowLogsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeFlowLogs"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeFlowLogsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeFlowLogsResult describeFlowLogs() { return describeFlowLogs(new DescribeFlowLogsRequest()); } /** *

* Describes the specified attribute of the specified Amazon FPGA Image (AFI). *

* * @param describeFpgaImageAttributeRequest * @return Result of the DescribeFpgaImageAttribute operation returned by the service. * @sample AmazonEC2.DescribeFpgaImageAttribute * @see AWS * API Documentation */ @Override public DescribeFpgaImageAttributeResult describeFpgaImageAttribute(DescribeFpgaImageAttributeRequest request) { request = beforeClientExecution(request); return executeDescribeFpgaImageAttribute(request); } @SdkInternalApi final DescribeFpgaImageAttributeResult executeDescribeFpgaImageAttribute(DescribeFpgaImageAttributeRequest describeFpgaImageAttributeRequest) { ExecutionContext executionContext = createExecutionContext(describeFpgaImageAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeFpgaImageAttributeRequestMarshaller().marshall(super.beforeMarshalling(describeFpgaImageAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeFpgaImageAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeFpgaImageAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the Amazon FPGA Images (AFIs) available to you. These include public AFIs, private AFIs that you own, * and AFIs owned by other AWS accounts for which you have load permissions. *

* * @param describeFpgaImagesRequest * @return Result of the DescribeFpgaImages operation returned by the service. * @sample AmazonEC2.DescribeFpgaImages * @see AWS API * Documentation */ @Override public DescribeFpgaImagesResult describeFpgaImages(DescribeFpgaImagesRequest request) { request = beforeClientExecution(request); return executeDescribeFpgaImages(request); } @SdkInternalApi final DescribeFpgaImagesResult executeDescribeFpgaImages(DescribeFpgaImagesRequest describeFpgaImagesRequest) { ExecutionContext executionContext = createExecutionContext(describeFpgaImagesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeFpgaImagesRequestMarshaller().marshall(super.beforeMarshalling(describeFpgaImagesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeFpgaImages"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeFpgaImagesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the Dedicated Host reservations that are available to purchase. *

*

* The results describe all the Dedicated Host reservation offerings, including offerings that may not match the * instance family and Region of your Dedicated Hosts. When purchasing an offering, ensure that the instance family * and Region of the offering matches that of the Dedicated Hosts with which it is to be associated. For more * information about supported instance types, see Dedicated Hosts * Overview in the Amazon Elastic Compute Cloud User Guide. *

* * @param describeHostReservationOfferingsRequest * @return Result of the DescribeHostReservationOfferings operation returned by the service. * @sample AmazonEC2.DescribeHostReservationOfferings * @see AWS API Documentation */ @Override public DescribeHostReservationOfferingsResult describeHostReservationOfferings(DescribeHostReservationOfferingsRequest request) { request = beforeClientExecution(request); return executeDescribeHostReservationOfferings(request); } @SdkInternalApi final DescribeHostReservationOfferingsResult executeDescribeHostReservationOfferings( DescribeHostReservationOfferingsRequest describeHostReservationOfferingsRequest) { ExecutionContext executionContext = createExecutionContext(describeHostReservationOfferingsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeHostReservationOfferingsRequestMarshaller().marshall(super.beforeMarshalling(describeHostReservationOfferingsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeHostReservationOfferings"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeHostReservationOfferingsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes reservations that are associated with Dedicated Hosts in your account. *

* * @param describeHostReservationsRequest * @return Result of the DescribeHostReservations operation returned by the service. * @sample AmazonEC2.DescribeHostReservations * @see AWS * API Documentation */ @Override public DescribeHostReservationsResult describeHostReservations(DescribeHostReservationsRequest request) { request = beforeClientExecution(request); return executeDescribeHostReservations(request); } @SdkInternalApi final DescribeHostReservationsResult executeDescribeHostReservations(DescribeHostReservationsRequest describeHostReservationsRequest) { ExecutionContext executionContext = createExecutionContext(describeHostReservationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeHostReservationsRequestMarshaller().marshall(super.beforeMarshalling(describeHostReservationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeHostReservations"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeHostReservationsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the specified Dedicated Hosts or all your Dedicated Hosts. *

*

* The results describe only the Dedicated Hosts in the Region you're currently using. All listed instances consume * capacity on your Dedicated Host. Dedicated Hosts that have recently been released are listed with the state * released. *

* * @param describeHostsRequest * @return Result of the DescribeHosts operation returned by the service. * @sample AmazonEC2.DescribeHosts * @see AWS API * Documentation */ @Override public DescribeHostsResult describeHosts(DescribeHostsRequest request) { request = beforeClientExecution(request); return executeDescribeHosts(request); } @SdkInternalApi final DescribeHostsResult executeDescribeHosts(DescribeHostsRequest describeHostsRequest) { ExecutionContext executionContext = createExecutionContext(describeHostsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeHostsRequestMarshaller().marshall(super.beforeMarshalling(describeHostsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeHosts"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new DescribeHostsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeHostsResult describeHosts() { return describeHosts(new DescribeHostsRequest()); } /** *

* Describes your IAM instance profile associations. *

* * @param describeIamInstanceProfileAssociationsRequest * @return Result of the DescribeIamInstanceProfileAssociations operation returned by the service. * @sample AmazonEC2.DescribeIamInstanceProfileAssociations * @see AWS API Documentation */ @Override public DescribeIamInstanceProfileAssociationsResult describeIamInstanceProfileAssociations(DescribeIamInstanceProfileAssociationsRequest request) { request = beforeClientExecution(request); return executeDescribeIamInstanceProfileAssociations(request); } @SdkInternalApi final DescribeIamInstanceProfileAssociationsResult executeDescribeIamInstanceProfileAssociations( DescribeIamInstanceProfileAssociationsRequest describeIamInstanceProfileAssociationsRequest) { ExecutionContext executionContext = createExecutionContext(describeIamInstanceProfileAssociationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeIamInstanceProfileAssociationsRequestMarshaller().marshall(super .beforeMarshalling(describeIamInstanceProfileAssociationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeIamInstanceProfileAssociations"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeIamInstanceProfileAssociationsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the ID format settings for your resources on a per-Region basis, for example, to view which resource * types are enabled for longer IDs. This request only returns information about resource types whose ID formats can * be modified; it does not return information about other resource types. *

*

* The following resource types support longer IDs: bundle | conversion-task | * customer-gateway | dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | flow-log | image | * import-task | instance | internet-gateway | network-acl | * network-acl-association | network-interface | network-interface-attachment * | prefix-list | reservation | route-table | * route-table-association | security-group | snapshot | subnet * | subnet-cidr-block-association | volume | vpc | * vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway. *

*

* These settings apply to the IAM user who makes the request; they do not apply to the entire AWS account. By * default, an IAM user defaults to the same settings as the root user, unless they explicitly override the settings * by running the ModifyIdFormat command. Resources created with longer IDs are visible to all IAM users, * regardless of these settings and provided that they have permission to use the relevant Describe * command for the resource type. *

* * @param describeIdFormatRequest * @return Result of the DescribeIdFormat operation returned by the service. * @sample AmazonEC2.DescribeIdFormat * @see AWS API * Documentation */ @Override public DescribeIdFormatResult describeIdFormat(DescribeIdFormatRequest request) { request = beforeClientExecution(request); return executeDescribeIdFormat(request); } @SdkInternalApi final DescribeIdFormatResult executeDescribeIdFormat(DescribeIdFormatRequest describeIdFormatRequest) { ExecutionContext executionContext = createExecutionContext(describeIdFormatRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeIdFormatRequestMarshaller().marshall(super.beforeMarshalling(describeIdFormatRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeIdFormat"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeIdFormatResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeIdFormatResult describeIdFormat() { return describeIdFormat(new DescribeIdFormatRequest()); } /** *

* Describes the ID format settings for resources for the specified IAM user, IAM role, or root user. For example, * you can view the resource types that are enabled for longer IDs. This request only returns information about * resource types whose ID formats can be modified; it does not return information about other resource types. For * more information, see Resource * IDs in the Amazon Elastic Compute Cloud User Guide. *

*

* The following resource types support longer IDs: bundle | conversion-task | * customer-gateway | dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | flow-log | image | * import-task | instance | internet-gateway | network-acl | * network-acl-association | network-interface | network-interface-attachment * | prefix-list | reservation | route-table | * route-table-association | security-group | snapshot | subnet * | subnet-cidr-block-association | volume | vpc | * vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway. *

*

* These settings apply to the principal specified in the request. They do not apply to the principal that makes the * request. *

* * @param describeIdentityIdFormatRequest * @return Result of the DescribeIdentityIdFormat operation returned by the service. * @sample AmazonEC2.DescribeIdentityIdFormat * @see AWS * API Documentation */ @Override public DescribeIdentityIdFormatResult describeIdentityIdFormat(DescribeIdentityIdFormatRequest request) { request = beforeClientExecution(request); return executeDescribeIdentityIdFormat(request); } @SdkInternalApi final DescribeIdentityIdFormatResult executeDescribeIdentityIdFormat(DescribeIdentityIdFormatRequest describeIdentityIdFormatRequest) { ExecutionContext executionContext = createExecutionContext(describeIdentityIdFormatRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeIdentityIdFormatRequestMarshaller().marshall(super.beforeMarshalling(describeIdentityIdFormatRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeIdentityIdFormat"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeIdentityIdFormatResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the specified attribute of the specified AMI. You can specify only one attribute at a time. *

* * @param describeImageAttributeRequest * Contains the parameters for DescribeImageAttribute. * @return Result of the DescribeImageAttribute operation returned by the service. * @sample AmazonEC2.DescribeImageAttribute * @see AWS API * Documentation */ @Override public DescribeImageAttributeResult describeImageAttribute(DescribeImageAttributeRequest request) { request = beforeClientExecution(request); return executeDescribeImageAttribute(request); } @SdkInternalApi final DescribeImageAttributeResult executeDescribeImageAttribute(DescribeImageAttributeRequest describeImageAttributeRequest) { ExecutionContext executionContext = createExecutionContext(describeImageAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeImageAttributeRequestMarshaller().marshall(super.beforeMarshalling(describeImageAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeImageAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeImageAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the specified images (AMIs, AKIs, and ARIs) available to you or all of the images available to you. *

*

* The images available to you include public images, private images that you own, and private images owned by other * AWS accounts for which you have explicit launch permissions. *

*

* Recently deregistered images appear in the returned results for a short interval and then return empty results. * After all instances that reference a deregistered AMI are terminated, specifying the ID of the image results in * an error indicating that the AMI ID cannot be found. *

* * @param describeImagesRequest * @return Result of the DescribeImages operation returned by the service. * @sample AmazonEC2.DescribeImages * @see AWS API * Documentation */ @Override public DescribeImagesResult describeImages(DescribeImagesRequest request) { request = beforeClientExecution(request); return executeDescribeImages(request); } @SdkInternalApi final DescribeImagesResult executeDescribeImages(DescribeImagesRequest describeImagesRequest) { ExecutionContext executionContext = createExecutionContext(describeImagesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeImagesRequestMarshaller().marshall(super.beforeMarshalling(describeImagesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeImages"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeImagesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeImagesResult describeImages() { return describeImages(new DescribeImagesRequest()); } /** *

* Displays details about an import virtual machine or import snapshot tasks that are already created. *

* * @param describeImportImageTasksRequest * @return Result of the DescribeImportImageTasks operation returned by the service. * @sample AmazonEC2.DescribeImportImageTasks * @see AWS * API Documentation */ @Override public DescribeImportImageTasksResult describeImportImageTasks(DescribeImportImageTasksRequest request) { request = beforeClientExecution(request); return executeDescribeImportImageTasks(request); } @SdkInternalApi final DescribeImportImageTasksResult executeDescribeImportImageTasks(DescribeImportImageTasksRequest describeImportImageTasksRequest) { ExecutionContext executionContext = createExecutionContext(describeImportImageTasksRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeImportImageTasksRequestMarshaller().marshall(super.beforeMarshalling(describeImportImageTasksRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeImportImageTasks"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeImportImageTasksResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeImportImageTasksResult describeImportImageTasks() { return describeImportImageTasks(new DescribeImportImageTasksRequest()); } /** *

* Describes your import snapshot tasks. *

* * @param describeImportSnapshotTasksRequest * @return Result of the DescribeImportSnapshotTasks operation returned by the service. * @sample AmazonEC2.DescribeImportSnapshotTasks * @see AWS API Documentation */ @Override public DescribeImportSnapshotTasksResult describeImportSnapshotTasks(DescribeImportSnapshotTasksRequest request) { request = beforeClientExecution(request); return executeDescribeImportSnapshotTasks(request); } @SdkInternalApi final DescribeImportSnapshotTasksResult executeDescribeImportSnapshotTasks(DescribeImportSnapshotTasksRequest describeImportSnapshotTasksRequest) { ExecutionContext executionContext = createExecutionContext(describeImportSnapshotTasksRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeImportSnapshotTasksRequestMarshaller().marshall(super.beforeMarshalling(describeImportSnapshotTasksRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeImportSnapshotTasks"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeImportSnapshotTasksResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeImportSnapshotTasksResult describeImportSnapshotTasks() { return describeImportSnapshotTasks(new DescribeImportSnapshotTasksRequest()); } /** *

* Describes the specified attribute of the specified instance. You can specify only one attribute at a time. Valid * attribute values are: instanceType | kernel | ramdisk | * userData | disableApiTermination | instanceInitiatedShutdownBehavior | * rootDeviceName | blockDeviceMapping | productCodes | * sourceDestCheck | groupSet | ebsOptimized | sriovNetSupport *

* * @param describeInstanceAttributeRequest * @return Result of the DescribeInstanceAttribute operation returned by the service. * @sample AmazonEC2.DescribeInstanceAttribute * @see AWS * API Documentation */ @Override public DescribeInstanceAttributeResult describeInstanceAttribute(DescribeInstanceAttributeRequest request) { request = beforeClientExecution(request); return executeDescribeInstanceAttribute(request); } @SdkInternalApi final DescribeInstanceAttributeResult executeDescribeInstanceAttribute(DescribeInstanceAttributeRequest describeInstanceAttributeRequest) { ExecutionContext executionContext = createExecutionContext(describeInstanceAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeInstanceAttributeRequestMarshaller().marshall(super.beforeMarshalling(describeInstanceAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeInstanceAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeInstanceAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the credit option for CPU usage of the specified T2 or T3 instances. The credit options are * standard and unlimited. *

*

* If you do not specify an instance ID, Amazon EC2 returns T2 and T3 instances with the unlimited * credit option, as well as instances that were previously configured as T2 or T3 with the unlimited * credit option. For example, if you resize a T2 instance, while it is configured as unlimited, to an * M4 instance, Amazon EC2 returns the M4 instance. *

*

* If you specify one or more instance IDs, Amazon EC2 returns the credit option (standard or * unlimited) of those instances. If you specify an instance ID that is not valid, such as an instance * that is not a T2 or T3 instance, an error is returned. *

*

* Recently terminated instances might appear in the returned results. This interval is usually less than one hour. *

*

* If an Availability Zone is experiencing a service disruption and you specify instance IDs in the affected zone, * or do not specify any instance IDs at all, the call fails. If you specify only instance IDs in an unaffected * zone, the call works normally. *

*

* For more information, see Burstable * Performance Instances in the Amazon Elastic Compute Cloud User Guide. *

* * @param describeInstanceCreditSpecificationsRequest * @return Result of the DescribeInstanceCreditSpecifications operation returned by the service. * @sample AmazonEC2.DescribeInstanceCreditSpecifications * @see AWS API Documentation */ @Override public DescribeInstanceCreditSpecificationsResult describeInstanceCreditSpecifications(DescribeInstanceCreditSpecificationsRequest request) { request = beforeClientExecution(request); return executeDescribeInstanceCreditSpecifications(request); } @SdkInternalApi final DescribeInstanceCreditSpecificationsResult executeDescribeInstanceCreditSpecifications( DescribeInstanceCreditSpecificationsRequest describeInstanceCreditSpecificationsRequest) { ExecutionContext executionContext = createExecutionContext(describeInstanceCreditSpecificationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeInstanceCreditSpecificationsRequestMarshaller().marshall(super .beforeMarshalling(describeInstanceCreditSpecificationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeInstanceCreditSpecifications"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeInstanceCreditSpecificationsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the status of the specified instances or all of your instances. By default, only running instances are * described, unless you specifically indicate to return the status of all instances. *

*

* Instance status includes the following components: *

*
    *
  • *

    * Status checks - Amazon EC2 performs status checks on running EC2 instances to identify hardware and * software issues. For more information, see Status * Checks for Your Instances and Troubleshooting * Instances with Failed Status Checks in the Amazon Elastic Compute Cloud User Guide. *

    *
  • *
  • *

    * Scheduled events - Amazon EC2 can schedule events (such as reboot, stop, or terminate) for your instances * related to hardware issues, software updates, or system maintenance. For more information, see Scheduled * Events for Your Instances in the Amazon Elastic Compute Cloud User Guide. *

    *
  • *
  • *

    * Instance state - You can manage your instances from the moment you launch them through their termination. * For more information, see Instance Lifecycle in * the Amazon Elastic Compute Cloud User Guide. *

    *
  • *
* * @param describeInstanceStatusRequest * @return Result of the DescribeInstanceStatus operation returned by the service. * @sample AmazonEC2.DescribeInstanceStatus * @see AWS API * Documentation */ @Override public DescribeInstanceStatusResult describeInstanceStatus(DescribeInstanceStatusRequest request) { request = beforeClientExecution(request); return executeDescribeInstanceStatus(request); } @SdkInternalApi final DescribeInstanceStatusResult executeDescribeInstanceStatus(DescribeInstanceStatusRequest describeInstanceStatusRequest) { ExecutionContext executionContext = createExecutionContext(describeInstanceStatusRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeInstanceStatusRequestMarshaller().marshall(super.beforeMarshalling(describeInstanceStatusRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeInstanceStatus"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeInstanceStatusResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeInstanceStatusResult describeInstanceStatus() { return describeInstanceStatus(new DescribeInstanceStatusRequest()); } /** *

* Describes the specified instances or all of AWS account's instances. *

*

* If you specify one or more instance IDs, Amazon EC2 returns information for those instances. If you do not * specify instance IDs, Amazon EC2 returns information for all relevant instances. If you specify an instance ID * that is not valid, an error is returned. If you specify an instance that you do not own, it is not included in * the returned results. *

*

* Recently terminated instances might appear in the returned results. This interval is usually less than one hour. *

*

* If you describe instances in the rare case where an Availability Zone is experiencing a service disruption and * you specify instance IDs that are in the affected zone, or do not specify any instance IDs at all, the call * fails. If you describe instances and specify only instance IDs that are in an unaffected zone, the call works * normally. *

* * @param describeInstancesRequest * @return Result of the DescribeInstances operation returned by the service. * @sample AmazonEC2.DescribeInstances * @see AWS API * Documentation */ @Override public DescribeInstancesResult describeInstances(DescribeInstancesRequest request) { request = beforeClientExecution(request); return executeDescribeInstances(request); } @SdkInternalApi final DescribeInstancesResult executeDescribeInstances(DescribeInstancesRequest describeInstancesRequest) { ExecutionContext executionContext = createExecutionContext(describeInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeInstancesRequestMarshaller().marshall(super.beforeMarshalling(describeInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeInstancesResult describeInstances() { return describeInstances(new DescribeInstancesRequest()); } /** *

* Describes one or more of your internet gateways. *

* * @param describeInternetGatewaysRequest * @return Result of the DescribeInternetGateways operation returned by the service. * @sample AmazonEC2.DescribeInternetGateways * @see AWS * API Documentation */ @Override public DescribeInternetGatewaysResult describeInternetGateways(DescribeInternetGatewaysRequest request) { request = beforeClientExecution(request); return executeDescribeInternetGateways(request); } @SdkInternalApi final DescribeInternetGatewaysResult executeDescribeInternetGateways(DescribeInternetGatewaysRequest describeInternetGatewaysRequest) { ExecutionContext executionContext = createExecutionContext(describeInternetGatewaysRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeInternetGatewaysRequestMarshaller().marshall(super.beforeMarshalling(describeInternetGatewaysRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeInternetGateways"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeInternetGatewaysResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeInternetGatewaysResult describeInternetGateways() { return describeInternetGateways(new DescribeInternetGatewaysRequest()); } /** *

* Describes the specified key pairs or all of your key pairs. *

*

* For more information about key pairs, see Key Pairs in the Amazon * Elastic Compute Cloud User Guide. *

* * @param describeKeyPairsRequest * @return Result of the DescribeKeyPairs operation returned by the service. * @sample AmazonEC2.DescribeKeyPairs * @see AWS API * Documentation */ @Override public DescribeKeyPairsResult describeKeyPairs(DescribeKeyPairsRequest request) { request = beforeClientExecution(request); return executeDescribeKeyPairs(request); } @SdkInternalApi final DescribeKeyPairsResult executeDescribeKeyPairs(DescribeKeyPairsRequest describeKeyPairsRequest) { ExecutionContext executionContext = createExecutionContext(describeKeyPairsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeKeyPairsRequestMarshaller().marshall(super.beforeMarshalling(describeKeyPairsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeKeyPairs"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeKeyPairsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeKeyPairsResult describeKeyPairs() { return describeKeyPairs(new DescribeKeyPairsRequest()); } /** *

* Describes one or more versions of a specified launch template. You can describe all versions, individual * versions, or a range of versions. *

* * @param describeLaunchTemplateVersionsRequest * @return Result of the DescribeLaunchTemplateVersions operation returned by the service. * @sample AmazonEC2.DescribeLaunchTemplateVersions * @see AWS API Documentation */ @Override public DescribeLaunchTemplateVersionsResult describeLaunchTemplateVersions(DescribeLaunchTemplateVersionsRequest request) { request = beforeClientExecution(request); return executeDescribeLaunchTemplateVersions(request); } @SdkInternalApi final DescribeLaunchTemplateVersionsResult executeDescribeLaunchTemplateVersions(DescribeLaunchTemplateVersionsRequest describeLaunchTemplateVersionsRequest) { ExecutionContext executionContext = createExecutionContext(describeLaunchTemplateVersionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeLaunchTemplateVersionsRequestMarshaller().marshall(super.beforeMarshalling(describeLaunchTemplateVersionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeLaunchTemplateVersions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeLaunchTemplateVersionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes one or more launch templates. *

* * @param describeLaunchTemplatesRequest * @return Result of the DescribeLaunchTemplates operation returned by the service. * @sample AmazonEC2.DescribeLaunchTemplates * @see AWS * API Documentation */ @Override public DescribeLaunchTemplatesResult describeLaunchTemplates(DescribeLaunchTemplatesRequest request) { request = beforeClientExecution(request); return executeDescribeLaunchTemplates(request); } @SdkInternalApi final DescribeLaunchTemplatesResult executeDescribeLaunchTemplates(DescribeLaunchTemplatesRequest describeLaunchTemplatesRequest) { ExecutionContext executionContext = createExecutionContext(describeLaunchTemplatesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeLaunchTemplatesRequestMarshaller().marshall(super.beforeMarshalling(describeLaunchTemplatesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeLaunchTemplates"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeLaunchTemplatesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes your Elastic IP addresses that are being moved to the EC2-VPC platform, or that are being restored to * the EC2-Classic platform. This request does not return information about any other Elastic IP addresses in your * account. *

* * @param describeMovingAddressesRequest * @return Result of the DescribeMovingAddresses operation returned by the service. * @sample AmazonEC2.DescribeMovingAddresses * @see AWS * API Documentation */ @Override public DescribeMovingAddressesResult describeMovingAddresses(DescribeMovingAddressesRequest request) { request = beforeClientExecution(request); return executeDescribeMovingAddresses(request); } @SdkInternalApi final DescribeMovingAddressesResult executeDescribeMovingAddresses(DescribeMovingAddressesRequest describeMovingAddressesRequest) { ExecutionContext executionContext = createExecutionContext(describeMovingAddressesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeMovingAddressesRequestMarshaller().marshall(super.beforeMarshalling(describeMovingAddressesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeMovingAddresses"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeMovingAddressesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeMovingAddressesResult describeMovingAddresses() { return describeMovingAddresses(new DescribeMovingAddressesRequest()); } /** *

* Describes one or more of your NAT gateways. *

* * @param describeNatGatewaysRequest * @return Result of the DescribeNatGateways operation returned by the service. * @sample AmazonEC2.DescribeNatGateways * @see AWS API * Documentation */ @Override public DescribeNatGatewaysResult describeNatGateways(DescribeNatGatewaysRequest request) { request = beforeClientExecution(request); return executeDescribeNatGateways(request); } @SdkInternalApi final DescribeNatGatewaysResult executeDescribeNatGateways(DescribeNatGatewaysRequest describeNatGatewaysRequest) { ExecutionContext executionContext = createExecutionContext(describeNatGatewaysRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeNatGatewaysRequestMarshaller().marshall(super.beforeMarshalling(describeNatGatewaysRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeNatGateways"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeNatGatewaysResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes one or more of your network ACLs. *

*

* For more information, see Network * ACLs in the Amazon Virtual Private Cloud User Guide. *

* * @param describeNetworkAclsRequest * @return Result of the DescribeNetworkAcls operation returned by the service. * @sample AmazonEC2.DescribeNetworkAcls * @see AWS API * Documentation */ @Override public DescribeNetworkAclsResult describeNetworkAcls(DescribeNetworkAclsRequest request) { request = beforeClientExecution(request); return executeDescribeNetworkAcls(request); } @SdkInternalApi final DescribeNetworkAclsResult executeDescribeNetworkAcls(DescribeNetworkAclsRequest describeNetworkAclsRequest) { ExecutionContext executionContext = createExecutionContext(describeNetworkAclsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeNetworkAclsRequestMarshaller().marshall(super.beforeMarshalling(describeNetworkAclsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeNetworkAcls"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeNetworkAclsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeNetworkAclsResult describeNetworkAcls() { return describeNetworkAcls(new DescribeNetworkAclsRequest()); } /** *

* Describes a network interface attribute. You can specify only one attribute at a time. *

* * @param describeNetworkInterfaceAttributeRequest * Contains the parameters for DescribeNetworkInterfaceAttribute. * @return Result of the DescribeNetworkInterfaceAttribute operation returned by the service. * @sample AmazonEC2.DescribeNetworkInterfaceAttribute * @see AWS API Documentation */ @Override public DescribeNetworkInterfaceAttributeResult describeNetworkInterfaceAttribute(DescribeNetworkInterfaceAttributeRequest request) { request = beforeClientExecution(request); return executeDescribeNetworkInterfaceAttribute(request); } @SdkInternalApi final DescribeNetworkInterfaceAttributeResult executeDescribeNetworkInterfaceAttribute( DescribeNetworkInterfaceAttributeRequest describeNetworkInterfaceAttributeRequest) { ExecutionContext executionContext = createExecutionContext(describeNetworkInterfaceAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeNetworkInterfaceAttributeRequestMarshaller().marshall(super.beforeMarshalling(describeNetworkInterfaceAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeNetworkInterfaceAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeNetworkInterfaceAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the permissions for your network interfaces. *

* * @param describeNetworkInterfacePermissionsRequest * Contains the parameters for DescribeNetworkInterfacePermissions. * @return Result of the DescribeNetworkInterfacePermissions operation returned by the service. * @sample AmazonEC2.DescribeNetworkInterfacePermissions * @see AWS API Documentation */ @Override public DescribeNetworkInterfacePermissionsResult describeNetworkInterfacePermissions(DescribeNetworkInterfacePermissionsRequest request) { request = beforeClientExecution(request); return executeDescribeNetworkInterfacePermissions(request); } @SdkInternalApi final DescribeNetworkInterfacePermissionsResult executeDescribeNetworkInterfacePermissions( DescribeNetworkInterfacePermissionsRequest describeNetworkInterfacePermissionsRequest) { ExecutionContext executionContext = createExecutionContext(describeNetworkInterfacePermissionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeNetworkInterfacePermissionsRequestMarshaller().marshall(super .beforeMarshalling(describeNetworkInterfacePermissionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeNetworkInterfacePermissions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeNetworkInterfacePermissionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes one or more of your network interfaces. *

* * @param describeNetworkInterfacesRequest * Contains the parameters for DescribeNetworkInterfaces. * @return Result of the DescribeNetworkInterfaces operation returned by the service. * @sample AmazonEC2.DescribeNetworkInterfaces * @see AWS * API Documentation */ @Override public DescribeNetworkInterfacesResult describeNetworkInterfaces(DescribeNetworkInterfacesRequest request) { request = beforeClientExecution(request); return executeDescribeNetworkInterfaces(request); } @SdkInternalApi final DescribeNetworkInterfacesResult executeDescribeNetworkInterfaces(DescribeNetworkInterfacesRequest describeNetworkInterfacesRequest) { ExecutionContext executionContext = createExecutionContext(describeNetworkInterfacesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeNetworkInterfacesRequestMarshaller().marshall(super.beforeMarshalling(describeNetworkInterfacesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeNetworkInterfaces"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeNetworkInterfacesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeNetworkInterfacesResult describeNetworkInterfaces() { return describeNetworkInterfaces(new DescribeNetworkInterfacesRequest()); } /** *

* Describes the specified placement groups or all of your placement groups. For more information, see Placement Groups in the * Amazon Elastic Compute Cloud User Guide. *

* * @param describePlacementGroupsRequest * @return Result of the DescribePlacementGroups operation returned by the service. * @sample AmazonEC2.DescribePlacementGroups * @see AWS * API Documentation */ @Override public DescribePlacementGroupsResult describePlacementGroups(DescribePlacementGroupsRequest request) { request = beforeClientExecution(request); return executeDescribePlacementGroups(request); } @SdkInternalApi final DescribePlacementGroupsResult executeDescribePlacementGroups(DescribePlacementGroupsRequest describePlacementGroupsRequest) { ExecutionContext executionContext = createExecutionContext(describePlacementGroupsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribePlacementGroupsRequestMarshaller().marshall(super.beforeMarshalling(describePlacementGroupsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribePlacementGroups"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribePlacementGroupsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribePlacementGroupsResult describePlacementGroups() { return describePlacementGroups(new DescribePlacementGroupsRequest()); } /** *

* Describes available AWS services in a prefix list format, which includes the prefix list name and prefix list ID * of the service and the IP address range for the service. A prefix list ID is required for creating an outbound * security group rule that allows traffic from a VPC to access an AWS service through a gateway VPC endpoint. * Currently, the services that support this action are Amazon S3 and Amazon DynamoDB. *

* * @param describePrefixListsRequest * @return Result of the DescribePrefixLists operation returned by the service. * @sample AmazonEC2.DescribePrefixLists * @see AWS API * Documentation */ @Override public DescribePrefixListsResult describePrefixLists(DescribePrefixListsRequest request) { request = beforeClientExecution(request); return executeDescribePrefixLists(request); } @SdkInternalApi final DescribePrefixListsResult executeDescribePrefixLists(DescribePrefixListsRequest describePrefixListsRequest) { ExecutionContext executionContext = createExecutionContext(describePrefixListsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribePrefixListsRequestMarshaller().marshall(super.beforeMarshalling(describePrefixListsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribePrefixLists"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribePrefixListsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribePrefixListsResult describePrefixLists() { return describePrefixLists(new DescribePrefixListsRequest()); } /** *

* Describes the ID format settings for the root user and all IAM roles and IAM users that have explicitly specified * a longer ID (17-character ID) preference. *

*

* By default, all IAM roles and IAM users default to the same ID settings as the root user, unless they explicitly * override the settings. This request is useful for identifying those IAM users and IAM roles that have overridden * the default ID settings. *

*

* The following resource types support longer IDs: bundle | conversion-task | * customer-gateway | dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | flow-log | image | * import-task | instance | internet-gateway | network-acl | * network-acl-association | network-interface | network-interface-attachment * | prefix-list | reservation | route-table | * route-table-association | security-group | snapshot | subnet * | subnet-cidr-block-association | volume | vpc | * vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway. *

* * @param describePrincipalIdFormatRequest * @return Result of the DescribePrincipalIdFormat operation returned by the service. * @sample AmazonEC2.DescribePrincipalIdFormat * @see AWS * API Documentation */ @Override public DescribePrincipalIdFormatResult describePrincipalIdFormat(DescribePrincipalIdFormatRequest request) { request = beforeClientExecution(request); return executeDescribePrincipalIdFormat(request); } @SdkInternalApi final DescribePrincipalIdFormatResult executeDescribePrincipalIdFormat(DescribePrincipalIdFormatRequest describePrincipalIdFormatRequest) { ExecutionContext executionContext = createExecutionContext(describePrincipalIdFormatRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribePrincipalIdFormatRequestMarshaller().marshall(super.beforeMarshalling(describePrincipalIdFormatRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribePrincipalIdFormat"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribePrincipalIdFormatResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the specified IPv4 address pools. *

* * @param describePublicIpv4PoolsRequest * @return Result of the DescribePublicIpv4Pools operation returned by the service. * @sample AmazonEC2.DescribePublicIpv4Pools * @see AWS * API Documentation */ @Override public DescribePublicIpv4PoolsResult describePublicIpv4Pools(DescribePublicIpv4PoolsRequest request) { request = beforeClientExecution(request); return executeDescribePublicIpv4Pools(request); } @SdkInternalApi final DescribePublicIpv4PoolsResult executeDescribePublicIpv4Pools(DescribePublicIpv4PoolsRequest describePublicIpv4PoolsRequest) { ExecutionContext executionContext = createExecutionContext(describePublicIpv4PoolsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribePublicIpv4PoolsRequestMarshaller().marshall(super.beforeMarshalling(describePublicIpv4PoolsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribePublicIpv4Pools"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribePublicIpv4PoolsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the Regions that are enabled for your account, or all Regions. *

*

* For a list of the Regions supported by Amazon EC2, see Regions and Endpoints. *

*

* For information about enabling and disabling Regions for your account, see Managing AWS Regions in the AWS * General Reference. *

* * @param describeRegionsRequest * @return Result of the DescribeRegions operation returned by the service. * @sample AmazonEC2.DescribeRegions * @see AWS API * Documentation */ @Override public DescribeRegionsResult describeRegions(DescribeRegionsRequest request) { request = beforeClientExecution(request); return executeDescribeRegions(request); } @SdkInternalApi final DescribeRegionsResult executeDescribeRegions(DescribeRegionsRequest describeRegionsRequest) { ExecutionContext executionContext = createExecutionContext(describeRegionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeRegionsRequestMarshaller().marshall(super.beforeMarshalling(describeRegionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeRegions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeRegionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeRegionsResult describeRegions() { return describeRegions(new DescribeRegionsRequest()); } /** *

* Describes one or more of the Reserved Instances that you purchased. *

*

* For more information about Reserved Instances, see Reserved * Instances in the Amazon Elastic Compute Cloud User Guide. *

* * @param describeReservedInstancesRequest * Contains the parameters for DescribeReservedInstances. * @return Result of the DescribeReservedInstances operation returned by the service. * @sample AmazonEC2.DescribeReservedInstances * @see AWS * API Documentation */ @Override public DescribeReservedInstancesResult describeReservedInstances(DescribeReservedInstancesRequest request) { request = beforeClientExecution(request); return executeDescribeReservedInstances(request); } @SdkInternalApi final DescribeReservedInstancesResult executeDescribeReservedInstances(DescribeReservedInstancesRequest describeReservedInstancesRequest) { ExecutionContext executionContext = createExecutionContext(describeReservedInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeReservedInstancesRequestMarshaller().marshall(super.beforeMarshalling(describeReservedInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeReservedInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeReservedInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeReservedInstancesResult describeReservedInstances() { return describeReservedInstances(new DescribeReservedInstancesRequest()); } /** *

* Describes your account's Reserved Instance listings in the Reserved Instance Marketplace. *

*

* The Reserved Instance Marketplace matches sellers who want to resell Reserved Instance capacity that they no * longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the * Reserved Instance Marketplace work like any other Reserved Instances. *

*

* As a seller, you choose to list some or all of your Reserved Instances, and you specify the upfront price to * receive for them. Your Reserved Instances are then listed in the Reserved Instance Marketplace and are available * for purchase. *

*

* As a buyer, you specify the configuration of the Reserved Instance to purchase, and the Marketplace matches what * you're searching for with what's available. The Marketplace first sells the lowest priced Reserved Instances to * you, and continues to sell available Reserved Instance listings to you until your demand is met. You are charged * based on the total price of all of the listings that you purchase. *

*

* For more information, see Reserved Instance * Marketplace in the Amazon Elastic Compute Cloud User Guide. *

* * @param describeReservedInstancesListingsRequest * Contains the parameters for DescribeReservedInstancesListings. * @return Result of the DescribeReservedInstancesListings operation returned by the service. * @sample AmazonEC2.DescribeReservedInstancesListings * @see AWS API Documentation */ @Override public DescribeReservedInstancesListingsResult describeReservedInstancesListings(DescribeReservedInstancesListingsRequest request) { request = beforeClientExecution(request); return executeDescribeReservedInstancesListings(request); } @SdkInternalApi final DescribeReservedInstancesListingsResult executeDescribeReservedInstancesListings( DescribeReservedInstancesListingsRequest describeReservedInstancesListingsRequest) { ExecutionContext executionContext = createExecutionContext(describeReservedInstancesListingsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeReservedInstancesListingsRequestMarshaller().marshall(super.beforeMarshalling(describeReservedInstancesListingsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeReservedInstancesListings"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeReservedInstancesListingsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeReservedInstancesListingsResult describeReservedInstancesListings() { return describeReservedInstancesListings(new DescribeReservedInstancesListingsRequest()); } /** *

* Describes the modifications made to your Reserved Instances. If no parameter is specified, information about all * your Reserved Instances modification requests is returned. If a modification ID is specified, only information * about the specific modification is returned. *

*

* For more information, see Modifying Reserved Instances in * the Amazon Elastic Compute Cloud User Guide. *

* * @param describeReservedInstancesModificationsRequest * Contains the parameters for DescribeReservedInstancesModifications. * @return Result of the DescribeReservedInstancesModifications operation returned by the service. * @sample AmazonEC2.DescribeReservedInstancesModifications * @see AWS API Documentation */ @Override public DescribeReservedInstancesModificationsResult describeReservedInstancesModifications(DescribeReservedInstancesModificationsRequest request) { request = beforeClientExecution(request); return executeDescribeReservedInstancesModifications(request); } @SdkInternalApi final DescribeReservedInstancesModificationsResult executeDescribeReservedInstancesModifications( DescribeReservedInstancesModificationsRequest describeReservedInstancesModificationsRequest) { ExecutionContext executionContext = createExecutionContext(describeReservedInstancesModificationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeReservedInstancesModificationsRequestMarshaller().marshall(super .beforeMarshalling(describeReservedInstancesModificationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeReservedInstancesModifications"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeReservedInstancesModificationsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeReservedInstancesModificationsResult describeReservedInstancesModifications() { return describeReservedInstancesModifications(new DescribeReservedInstancesModificationsRequest()); } /** *

* Describes Reserved Instance offerings that are available for purchase. With Reserved Instances, you purchase the * right to launch instances for a period of time. During that time period, you do not receive insufficient capacity * errors, and you pay a lower usage rate than the rate charged for On-Demand instances for the actual time used. *

*

* If you have listed your own Reserved Instances for sale in the Reserved Instance Marketplace, they will be * excluded from these results. This is to ensure that you do not purchase your own Reserved Instances. *

*

* For more information, see Reserved Instance * Marketplace in the Amazon Elastic Compute Cloud User Guide. *

* * @param describeReservedInstancesOfferingsRequest * Contains the parameters for DescribeReservedInstancesOfferings. * @return Result of the DescribeReservedInstancesOfferings operation returned by the service. * @sample AmazonEC2.DescribeReservedInstancesOfferings * @see AWS API Documentation */ @Override public DescribeReservedInstancesOfferingsResult describeReservedInstancesOfferings(DescribeReservedInstancesOfferingsRequest request) { request = beforeClientExecution(request); return executeDescribeReservedInstancesOfferings(request); } @SdkInternalApi final DescribeReservedInstancesOfferingsResult executeDescribeReservedInstancesOfferings( DescribeReservedInstancesOfferingsRequest describeReservedInstancesOfferingsRequest) { ExecutionContext executionContext = createExecutionContext(describeReservedInstancesOfferingsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeReservedInstancesOfferingsRequestMarshaller() .marshall(super.beforeMarshalling(describeReservedInstancesOfferingsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeReservedInstancesOfferings"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeReservedInstancesOfferingsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeReservedInstancesOfferingsResult describeReservedInstancesOfferings() { return describeReservedInstancesOfferings(new DescribeReservedInstancesOfferingsRequest()); } /** *

* Describes one or more of your route tables. *

*

* Each subnet in your VPC must be associated with a route table. If a subnet is not explicitly associated with any * route table, it is implicitly associated with the main route table. This command does not return the subnet ID * for implicit associations. *

*

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

* * @param describeRouteTablesRequest * @return Result of the DescribeRouteTables operation returned by the service. * @sample AmazonEC2.DescribeRouteTables * @see AWS API * Documentation */ @Override public DescribeRouteTablesResult describeRouteTables(DescribeRouteTablesRequest request) { request = beforeClientExecution(request); return executeDescribeRouteTables(request); } @SdkInternalApi final DescribeRouteTablesResult executeDescribeRouteTables(DescribeRouteTablesRequest describeRouteTablesRequest) { ExecutionContext executionContext = createExecutionContext(describeRouteTablesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeRouteTablesRequestMarshaller().marshall(super.beforeMarshalling(describeRouteTablesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeRouteTables"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeRouteTablesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeRouteTablesResult describeRouteTables() { return describeRouteTables(new DescribeRouteTablesRequest()); } /** *

* Finds available schedules that meet the specified criteria. *

*

* You can search for an available schedule no more than 3 months in advance. You must meet the minimum required * duration of 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule * is 24 hours, and the minimum monthly schedule is 100 hours. *

*

* After you find a schedule that meets your needs, call PurchaseScheduledInstances to purchase Scheduled * Instances with that schedule. *

* * @param describeScheduledInstanceAvailabilityRequest * Contains the parameters for DescribeScheduledInstanceAvailability. * @return Result of the DescribeScheduledInstanceAvailability operation returned by the service. * @sample AmazonEC2.DescribeScheduledInstanceAvailability * @see AWS API Documentation */ @Override public DescribeScheduledInstanceAvailabilityResult describeScheduledInstanceAvailability(DescribeScheduledInstanceAvailabilityRequest request) { request = beforeClientExecution(request); return executeDescribeScheduledInstanceAvailability(request); } @SdkInternalApi final DescribeScheduledInstanceAvailabilityResult executeDescribeScheduledInstanceAvailability( DescribeScheduledInstanceAvailabilityRequest describeScheduledInstanceAvailabilityRequest) { ExecutionContext executionContext = createExecutionContext(describeScheduledInstanceAvailabilityRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeScheduledInstanceAvailabilityRequestMarshaller().marshall(super .beforeMarshalling(describeScheduledInstanceAvailabilityRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeScheduledInstanceAvailability"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeScheduledInstanceAvailabilityResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the specified Scheduled Instances or all your Scheduled Instances. *

* * @param describeScheduledInstancesRequest * Contains the parameters for DescribeScheduledInstances. * @return Result of the DescribeScheduledInstances operation returned by the service. * @sample AmazonEC2.DescribeScheduledInstances * @see AWS * API Documentation */ @Override public DescribeScheduledInstancesResult describeScheduledInstances(DescribeScheduledInstancesRequest request) { request = beforeClientExecution(request); return executeDescribeScheduledInstances(request); } @SdkInternalApi final DescribeScheduledInstancesResult executeDescribeScheduledInstances(DescribeScheduledInstancesRequest describeScheduledInstancesRequest) { ExecutionContext executionContext = createExecutionContext(describeScheduledInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeScheduledInstancesRequestMarshaller().marshall(super.beforeMarshalling(describeScheduledInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeScheduledInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeScheduledInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* [VPC only] Describes the VPCs on the other side of a VPC peering connection that are referencing the security * groups you've specified in this request. *

* * @param describeSecurityGroupReferencesRequest * @return Result of the DescribeSecurityGroupReferences operation returned by the service. * @sample AmazonEC2.DescribeSecurityGroupReferences * @see AWS API Documentation */ @Override public DescribeSecurityGroupReferencesResult describeSecurityGroupReferences(DescribeSecurityGroupReferencesRequest request) { request = beforeClientExecution(request); return executeDescribeSecurityGroupReferences(request); } @SdkInternalApi final DescribeSecurityGroupReferencesResult executeDescribeSecurityGroupReferences( DescribeSecurityGroupReferencesRequest describeSecurityGroupReferencesRequest) { ExecutionContext executionContext = createExecutionContext(describeSecurityGroupReferencesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeSecurityGroupReferencesRequestMarshaller().marshall(super.beforeMarshalling(describeSecurityGroupReferencesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeSecurityGroupReferences"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeSecurityGroupReferencesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the specified security groups or all of your security groups. *

*

* A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. For more * information, see Amazon * EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your * VPC in the Amazon Virtual Private Cloud User Guide. *

* * @param describeSecurityGroupsRequest * @return Result of the DescribeSecurityGroups operation returned by the service. * @sample AmazonEC2.DescribeSecurityGroups * @see AWS API * Documentation */ @Override public DescribeSecurityGroupsResult describeSecurityGroups(DescribeSecurityGroupsRequest request) { request = beforeClientExecution(request); return executeDescribeSecurityGroups(request); } @SdkInternalApi final DescribeSecurityGroupsResult executeDescribeSecurityGroups(DescribeSecurityGroupsRequest describeSecurityGroupsRequest) { ExecutionContext executionContext = createExecutionContext(describeSecurityGroupsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeSecurityGroupsRequestMarshaller().marshall(super.beforeMarshalling(describeSecurityGroupsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeSecurityGroups"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeSecurityGroupsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeSecurityGroupsResult describeSecurityGroups() { return describeSecurityGroups(new DescribeSecurityGroupsRequest()); } /** *

* Describes the specified attribute of the specified snapshot. You can specify only one attribute at a time. *

*

* For more information about EBS snapshots, see Amazon EBS Snapshots in the * Amazon Elastic Compute Cloud User Guide. *

* * @param describeSnapshotAttributeRequest * Contains the parameters for DescribeSnapshotAttribute. * @return Result of the DescribeSnapshotAttribute operation returned by the service. * @sample AmazonEC2.DescribeSnapshotAttribute * @see AWS * API Documentation */ @Override public DescribeSnapshotAttributeResult describeSnapshotAttribute(DescribeSnapshotAttributeRequest request) { request = beforeClientExecution(request); return executeDescribeSnapshotAttribute(request); } @SdkInternalApi final DescribeSnapshotAttributeResult executeDescribeSnapshotAttribute(DescribeSnapshotAttributeRequest describeSnapshotAttributeRequest) { ExecutionContext executionContext = createExecutionContext(describeSnapshotAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeSnapshotAttributeRequestMarshaller().marshall(super.beforeMarshalling(describeSnapshotAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeSnapshotAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeSnapshotAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the specified EBS snapshots available to you or all of the EBS snapshots available to you. *

*

* The snapshots available to you include public snapshots, private snapshots that you own, and private snapshots * owned by other AWS accounts for which you have explicit create volume permissions. *

*

* The create volume permissions fall into the following categories: *

*
    *
  • *

    * public: The owner of the snapshot granted create volume permissions for the snapshot to the * all group. All AWS accounts have create volume permissions for these snapshots. *

    *
  • *
  • *

    * explicit: The owner of the snapshot granted create volume permissions to a specific AWS account. *

    *
  • *
  • *

    * implicit: An AWS account has implicit create volume permissions for all snapshots it owns. *

    *
  • *
*

* The list of snapshots returned can be modified by specifying snapshot IDs, snapshot owners, or AWS accounts with * create volume permissions. If no options are specified, Amazon EC2 returns all snapshots for which you have * create volume permissions. *

*

* If you specify one or more snapshot IDs, only snapshots that have the specified IDs are returned. If you specify * an invalid snapshot ID, an error is returned. If you specify a snapshot ID for which you do not have access, it * is not included in the returned results. *

*

* If you specify one or more snapshot owners using the OwnerIds option, only snapshots from the * specified owners and for which you have access are returned. The results can include the AWS account IDs of the * specified owners, amazon for snapshots owned by Amazon, or self for snapshots that you * own. *

*

* If you specify a list of restorable users, only snapshots with create snapshot permissions for those users are * returned. You can specify AWS account IDs (if you own the snapshots), self for snapshots for which * you own or have explicit permissions, or all for public snapshots. *

*

* If you are describing a long list of snapshots, you can paginate the output to make the list more manageable. The * MaxResults parameter sets the maximum number of results returned in a single page. If the list of * results exceeds your MaxResults value, then that number of results is returned along with a * NextToken value that can be passed to a subsequent DescribeSnapshots request to * retrieve the remaining results. *

*

* For more information about EBS snapshots, see Amazon EBS Snapshots in the * Amazon Elastic Compute Cloud User Guide. *

* * @param describeSnapshotsRequest * @return Result of the DescribeSnapshots operation returned by the service. * @sample AmazonEC2.DescribeSnapshots * @see AWS API * Documentation */ @Override public DescribeSnapshotsResult describeSnapshots(DescribeSnapshotsRequest request) { request = beforeClientExecution(request); return executeDescribeSnapshots(request); } @SdkInternalApi final DescribeSnapshotsResult executeDescribeSnapshots(DescribeSnapshotsRequest describeSnapshotsRequest) { ExecutionContext executionContext = createExecutionContext(describeSnapshotsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeSnapshotsRequestMarshaller().marshall(super.beforeMarshalling(describeSnapshotsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeSnapshots"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeSnapshotsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeSnapshotsResult describeSnapshots() { return describeSnapshots(new DescribeSnapshotsRequest()); } /** *

* Describes the data feed for Spot Instances. For more information, see Spot Instance Data Feed in * the Amazon EC2 User Guide for Linux Instances. *

* * @param describeSpotDatafeedSubscriptionRequest * Contains the parameters for DescribeSpotDatafeedSubscription. * @return Result of the DescribeSpotDatafeedSubscription operation returned by the service. * @sample AmazonEC2.DescribeSpotDatafeedSubscription * @see AWS API Documentation */ @Override public DescribeSpotDatafeedSubscriptionResult describeSpotDatafeedSubscription(DescribeSpotDatafeedSubscriptionRequest request) { request = beforeClientExecution(request); return executeDescribeSpotDatafeedSubscription(request); } @SdkInternalApi final DescribeSpotDatafeedSubscriptionResult executeDescribeSpotDatafeedSubscription( DescribeSpotDatafeedSubscriptionRequest describeSpotDatafeedSubscriptionRequest) { ExecutionContext executionContext = createExecutionContext(describeSpotDatafeedSubscriptionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeSpotDatafeedSubscriptionRequestMarshaller().marshall(super.beforeMarshalling(describeSpotDatafeedSubscriptionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeSpotDatafeedSubscription"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeSpotDatafeedSubscriptionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeSpotDatafeedSubscriptionResult describeSpotDatafeedSubscription() { return describeSpotDatafeedSubscription(new DescribeSpotDatafeedSubscriptionRequest()); } /** *

* Describes the running instances for the specified Spot Fleet. *

* * @param describeSpotFleetInstancesRequest * Contains the parameters for DescribeSpotFleetInstances. * @return Result of the DescribeSpotFleetInstances operation returned by the service. * @sample AmazonEC2.DescribeSpotFleetInstances * @see AWS * API Documentation */ @Override public DescribeSpotFleetInstancesResult describeSpotFleetInstances(DescribeSpotFleetInstancesRequest request) { request = beforeClientExecution(request); return executeDescribeSpotFleetInstances(request); } @SdkInternalApi final DescribeSpotFleetInstancesResult executeDescribeSpotFleetInstances(DescribeSpotFleetInstancesRequest describeSpotFleetInstancesRequest) { ExecutionContext executionContext = createExecutionContext(describeSpotFleetInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeSpotFleetInstancesRequestMarshaller().marshall(super.beforeMarshalling(describeSpotFleetInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeSpotFleetInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeSpotFleetInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the events for the specified Spot Fleet request during the specified time. *

*

* Spot Fleet events are delayed by up to 30 seconds before they can be described. This ensures that you can query * by the last evaluated time and not miss a recorded event. Spot Fleet events are available for 48 hours. *

* * @param describeSpotFleetRequestHistoryRequest * Contains the parameters for DescribeSpotFleetRequestHistory. * @return Result of the DescribeSpotFleetRequestHistory operation returned by the service. * @sample AmazonEC2.DescribeSpotFleetRequestHistory * @see AWS API Documentation */ @Override public DescribeSpotFleetRequestHistoryResult describeSpotFleetRequestHistory(DescribeSpotFleetRequestHistoryRequest request) { request = beforeClientExecution(request); return executeDescribeSpotFleetRequestHistory(request); } @SdkInternalApi final DescribeSpotFleetRequestHistoryResult executeDescribeSpotFleetRequestHistory( DescribeSpotFleetRequestHistoryRequest describeSpotFleetRequestHistoryRequest) { ExecutionContext executionContext = createExecutionContext(describeSpotFleetRequestHistoryRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeSpotFleetRequestHistoryRequestMarshaller().marshall(super.beforeMarshalling(describeSpotFleetRequestHistoryRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeSpotFleetRequestHistory"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeSpotFleetRequestHistoryResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes your Spot Fleet requests. *

*

* Spot Fleet requests are deleted 48 hours after they are canceled and their instances are terminated. *

* * @param describeSpotFleetRequestsRequest * Contains the parameters for DescribeSpotFleetRequests. * @return Result of the DescribeSpotFleetRequests operation returned by the service. * @sample AmazonEC2.DescribeSpotFleetRequests * @see AWS * API Documentation */ @Override public DescribeSpotFleetRequestsResult describeSpotFleetRequests(DescribeSpotFleetRequestsRequest request) { request = beforeClientExecution(request); return executeDescribeSpotFleetRequests(request); } @SdkInternalApi final DescribeSpotFleetRequestsResult executeDescribeSpotFleetRequests(DescribeSpotFleetRequestsRequest describeSpotFleetRequestsRequest) { ExecutionContext executionContext = createExecutionContext(describeSpotFleetRequestsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeSpotFleetRequestsRequestMarshaller().marshall(super.beforeMarshalling(describeSpotFleetRequestsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeSpotFleetRequests"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeSpotFleetRequestsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeSpotFleetRequestsResult describeSpotFleetRequests() { return describeSpotFleetRequests(new DescribeSpotFleetRequestsRequest()); } /** *

* Describes the specified Spot Instance requests. *

*

* You can use DescribeSpotInstanceRequests to find a running Spot Instance by examining the response. * If the status of the Spot Instance is fulfilled, the instance ID appears in the response and * contains the identifier of the instance. Alternatively, you can use DescribeInstances with a filter to * look for instances where the instance lifecycle is spot. *

*

* We recommend that you set MaxResults to a value between 5 and 1000 to limit the number of results * returned. This paginates the output, which makes the list more manageable and returns the results faster. If the * list of results exceeds your MaxResults value, then that number of results is returned along with a * NextToken value that can be passed to a subsequent DescribeSpotInstanceRequests request * to retrieve the remaining results. *

*

* Spot Instance requests are deleted four hours after they are canceled and their instances are terminated. *

* * @param describeSpotInstanceRequestsRequest * Contains the parameters for DescribeSpotInstanceRequests. * @return Result of the DescribeSpotInstanceRequests operation returned by the service. * @sample AmazonEC2.DescribeSpotInstanceRequests * @see AWS API Documentation */ @Override public DescribeSpotInstanceRequestsResult describeSpotInstanceRequests(DescribeSpotInstanceRequestsRequest request) { request = beforeClientExecution(request); return executeDescribeSpotInstanceRequests(request); } @SdkInternalApi final DescribeSpotInstanceRequestsResult executeDescribeSpotInstanceRequests(DescribeSpotInstanceRequestsRequest describeSpotInstanceRequestsRequest) { ExecutionContext executionContext = createExecutionContext(describeSpotInstanceRequestsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeSpotInstanceRequestsRequestMarshaller().marshall(super.beforeMarshalling(describeSpotInstanceRequestsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeSpotInstanceRequests"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeSpotInstanceRequestsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeSpotInstanceRequestsResult describeSpotInstanceRequests() { return describeSpotInstanceRequests(new DescribeSpotInstanceRequestsRequest()); } /** *

* Describes the Spot price history. For more information, see Spot Instance * Pricing History in the Amazon EC2 User Guide for Linux Instances. *

*

* When you specify a start and end time, this operation returns the prices of the instance types within the time * range that you specified and the time when the price changed. The price is valid within the time period that you * specified; the response merely indicates the last time that the price changed. *

* * @param describeSpotPriceHistoryRequest * Contains the parameters for DescribeSpotPriceHistory. * @return Result of the DescribeSpotPriceHistory operation returned by the service. * @sample AmazonEC2.DescribeSpotPriceHistory * @see AWS * API Documentation */ @Override public DescribeSpotPriceHistoryResult describeSpotPriceHistory(DescribeSpotPriceHistoryRequest request) { request = beforeClientExecution(request); return executeDescribeSpotPriceHistory(request); } @SdkInternalApi final DescribeSpotPriceHistoryResult executeDescribeSpotPriceHistory(DescribeSpotPriceHistoryRequest describeSpotPriceHistoryRequest) { ExecutionContext executionContext = createExecutionContext(describeSpotPriceHistoryRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeSpotPriceHistoryRequestMarshaller().marshall(super.beforeMarshalling(describeSpotPriceHistoryRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeSpotPriceHistory"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeSpotPriceHistoryResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeSpotPriceHistoryResult describeSpotPriceHistory() { return describeSpotPriceHistory(new DescribeSpotPriceHistoryRequest()); } /** *

* [VPC only] Describes the stale security group rules for security groups in a specified VPC. Rules are stale when * they reference a deleted security group in a peer VPC, or a security group in a peer VPC for which the VPC * peering connection has been deleted. *

* * @param describeStaleSecurityGroupsRequest * @return Result of the DescribeStaleSecurityGroups operation returned by the service. * @sample AmazonEC2.DescribeStaleSecurityGroups * @see AWS API Documentation */ @Override public DescribeStaleSecurityGroupsResult describeStaleSecurityGroups(DescribeStaleSecurityGroupsRequest request) { request = beforeClientExecution(request); return executeDescribeStaleSecurityGroups(request); } @SdkInternalApi final DescribeStaleSecurityGroupsResult executeDescribeStaleSecurityGroups(DescribeStaleSecurityGroupsRequest describeStaleSecurityGroupsRequest) { ExecutionContext executionContext = createExecutionContext(describeStaleSecurityGroupsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeStaleSecurityGroupsRequestMarshaller().marshall(super.beforeMarshalling(describeStaleSecurityGroupsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeStaleSecurityGroups"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeStaleSecurityGroupsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes one or more of your subnets. *

*

* For more information, see Your VPC * and Subnets in the Amazon Virtual Private Cloud User Guide. *

* * @param describeSubnetsRequest * @return Result of the DescribeSubnets operation returned by the service. * @sample AmazonEC2.DescribeSubnets * @see AWS API * Documentation */ @Override public DescribeSubnetsResult describeSubnets(DescribeSubnetsRequest request) { request = beforeClientExecution(request); return executeDescribeSubnets(request); } @SdkInternalApi final DescribeSubnetsResult executeDescribeSubnets(DescribeSubnetsRequest describeSubnetsRequest) { ExecutionContext executionContext = createExecutionContext(describeSubnetsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeSubnetsRequestMarshaller().marshall(super.beforeMarshalling(describeSubnetsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeSubnets"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeSubnetsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeSubnetsResult describeSubnets() { return describeSubnets(new DescribeSubnetsRequest()); } /** *

* Describes the specified tags for your EC2 resources. *

*

* For more information about tags, see Tagging Your Resources in the * Amazon Elastic Compute Cloud User Guide. *

* * @param describeTagsRequest * @return Result of the DescribeTags operation returned by the service. * @sample AmazonEC2.DescribeTags * @see AWS API * Documentation */ @Override public DescribeTagsResult describeTags(DescribeTagsRequest request) { request = beforeClientExecution(request); return executeDescribeTags(request); } @SdkInternalApi final DescribeTagsResult executeDescribeTags(DescribeTagsRequest describeTagsRequest) { ExecutionContext executionContext = createExecutionContext(describeTagsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeTagsRequestMarshaller().marshall(super.beforeMarshalling(describeTagsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeTags"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new DescribeTagsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeTagsResult describeTags() { return describeTags(new DescribeTagsRequest()); } /** *

* Describes one or more Traffic Mirror filters. *

* * @param describeTrafficMirrorFiltersRequest * @return Result of the DescribeTrafficMirrorFilters operation returned by the service. * @sample AmazonEC2.DescribeTrafficMirrorFilters * @see AWS API Documentation */ @Override public DescribeTrafficMirrorFiltersResult describeTrafficMirrorFilters(DescribeTrafficMirrorFiltersRequest request) { request = beforeClientExecution(request); return executeDescribeTrafficMirrorFilters(request); } @SdkInternalApi final DescribeTrafficMirrorFiltersResult executeDescribeTrafficMirrorFilters(DescribeTrafficMirrorFiltersRequest describeTrafficMirrorFiltersRequest) { ExecutionContext executionContext = createExecutionContext(describeTrafficMirrorFiltersRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeTrafficMirrorFiltersRequestMarshaller().marshall(super.beforeMarshalling(describeTrafficMirrorFiltersRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeTrafficMirrorFilters"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeTrafficMirrorFiltersResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes one or more Traffic Mirror sessions. By default, all Traffic Mirror sessions are described. * Alternatively, you can filter the results. *

* * @param describeTrafficMirrorSessionsRequest * @return Result of the DescribeTrafficMirrorSessions operation returned by the service. * @sample AmazonEC2.DescribeTrafficMirrorSessions * @see AWS API Documentation */ @Override public DescribeTrafficMirrorSessionsResult describeTrafficMirrorSessions(DescribeTrafficMirrorSessionsRequest request) { request = beforeClientExecution(request); return executeDescribeTrafficMirrorSessions(request); } @SdkInternalApi final DescribeTrafficMirrorSessionsResult executeDescribeTrafficMirrorSessions(DescribeTrafficMirrorSessionsRequest describeTrafficMirrorSessionsRequest) { ExecutionContext executionContext = createExecutionContext(describeTrafficMirrorSessionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeTrafficMirrorSessionsRequestMarshaller().marshall(super.beforeMarshalling(describeTrafficMirrorSessionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeTrafficMirrorSessions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeTrafficMirrorSessionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Information about one or more Traffic Mirror targets. *

* * @param describeTrafficMirrorTargetsRequest * @return Result of the DescribeTrafficMirrorTargets operation returned by the service. * @sample AmazonEC2.DescribeTrafficMirrorTargets * @see AWS API Documentation */ @Override public DescribeTrafficMirrorTargetsResult describeTrafficMirrorTargets(DescribeTrafficMirrorTargetsRequest request) { request = beforeClientExecution(request); return executeDescribeTrafficMirrorTargets(request); } @SdkInternalApi final DescribeTrafficMirrorTargetsResult executeDescribeTrafficMirrorTargets(DescribeTrafficMirrorTargetsRequest describeTrafficMirrorTargetsRequest) { ExecutionContext executionContext = createExecutionContext(describeTrafficMirrorTargetsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeTrafficMirrorTargetsRequestMarshaller().marshall(super.beforeMarshalling(describeTrafficMirrorTargetsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeTrafficMirrorTargets"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeTrafficMirrorTargetsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes one or more attachments between resources and transit gateways. By default, all attachments are * described. Alternatively, you can filter the results by attachment ID, attachment state, resource ID, or resource * owner. *

* * @param describeTransitGatewayAttachmentsRequest * @return Result of the DescribeTransitGatewayAttachments operation returned by the service. * @sample AmazonEC2.DescribeTransitGatewayAttachments * @see AWS API Documentation */ @Override public DescribeTransitGatewayAttachmentsResult describeTransitGatewayAttachments(DescribeTransitGatewayAttachmentsRequest request) { request = beforeClientExecution(request); return executeDescribeTransitGatewayAttachments(request); } @SdkInternalApi final DescribeTransitGatewayAttachmentsResult executeDescribeTransitGatewayAttachments( DescribeTransitGatewayAttachmentsRequest describeTransitGatewayAttachmentsRequest) { ExecutionContext executionContext = createExecutionContext(describeTransitGatewayAttachmentsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeTransitGatewayAttachmentsRequestMarshaller().marshall(super.beforeMarshalling(describeTransitGatewayAttachmentsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeTransitGatewayAttachments"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeTransitGatewayAttachmentsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes one or more transit gateway route tables. By default, all transit gateway route tables are described. * Alternatively, you can filter the results. *

* * @param describeTransitGatewayRouteTablesRequest * @return Result of the DescribeTransitGatewayRouteTables operation returned by the service. * @sample AmazonEC2.DescribeTransitGatewayRouteTables * @see AWS API Documentation */ @Override public DescribeTransitGatewayRouteTablesResult describeTransitGatewayRouteTables(DescribeTransitGatewayRouteTablesRequest request) { request = beforeClientExecution(request); return executeDescribeTransitGatewayRouteTables(request); } @SdkInternalApi final DescribeTransitGatewayRouteTablesResult executeDescribeTransitGatewayRouteTables( DescribeTransitGatewayRouteTablesRequest describeTransitGatewayRouteTablesRequest) { ExecutionContext executionContext = createExecutionContext(describeTransitGatewayRouteTablesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeTransitGatewayRouteTablesRequestMarshaller().marshall(super.beforeMarshalling(describeTransitGatewayRouteTablesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeTransitGatewayRouteTables"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeTransitGatewayRouteTablesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes one or more VPC attachments. By default, all VPC attachments are described. Alternatively, you can * filter the results. *

* * @param describeTransitGatewayVpcAttachmentsRequest * @return Result of the DescribeTransitGatewayVpcAttachments operation returned by the service. * @sample AmazonEC2.DescribeTransitGatewayVpcAttachments * @see AWS API Documentation */ @Override public DescribeTransitGatewayVpcAttachmentsResult describeTransitGatewayVpcAttachments(DescribeTransitGatewayVpcAttachmentsRequest request) { request = beforeClientExecution(request); return executeDescribeTransitGatewayVpcAttachments(request); } @SdkInternalApi final DescribeTransitGatewayVpcAttachmentsResult executeDescribeTransitGatewayVpcAttachments( DescribeTransitGatewayVpcAttachmentsRequest describeTransitGatewayVpcAttachmentsRequest) { ExecutionContext executionContext = createExecutionContext(describeTransitGatewayVpcAttachmentsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeTransitGatewayVpcAttachmentsRequestMarshaller().marshall(super .beforeMarshalling(describeTransitGatewayVpcAttachmentsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeTransitGatewayVpcAttachments"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeTransitGatewayVpcAttachmentsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes one or more transit gateways. By default, all transit gateways are described. Alternatively, you can * filter the results. *

* * @param describeTransitGatewaysRequest * @return Result of the DescribeTransitGateways operation returned by the service. * @sample AmazonEC2.DescribeTransitGateways * @see AWS * API Documentation */ @Override public DescribeTransitGatewaysResult describeTransitGateways(DescribeTransitGatewaysRequest request) { request = beforeClientExecution(request); return executeDescribeTransitGateways(request); } @SdkInternalApi final DescribeTransitGatewaysResult executeDescribeTransitGateways(DescribeTransitGatewaysRequest describeTransitGatewaysRequest) { ExecutionContext executionContext = createExecutionContext(describeTransitGatewaysRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeTransitGatewaysRequestMarshaller().marshall(super.beforeMarshalling(describeTransitGatewaysRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeTransitGateways"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeTransitGatewaysResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the specified attribute of the specified volume. You can specify only one attribute at a time. *

*

* For more information about EBS volumes, see Amazon EBS Volumes in the * Amazon Elastic Compute Cloud User Guide. *

* * @param describeVolumeAttributeRequest * Contains the parameters for DescribeVolumeAttribute. * @return Result of the DescribeVolumeAttribute operation returned by the service. * @sample AmazonEC2.DescribeVolumeAttribute * @see AWS * API Documentation */ @Override public DescribeVolumeAttributeResult describeVolumeAttribute(DescribeVolumeAttributeRequest request) { request = beforeClientExecution(request); return executeDescribeVolumeAttribute(request); } @SdkInternalApi final DescribeVolumeAttributeResult executeDescribeVolumeAttribute(DescribeVolumeAttributeRequest describeVolumeAttributeRequest) { ExecutionContext executionContext = createExecutionContext(describeVolumeAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVolumeAttributeRequestMarshaller().marshall(super.beforeMarshalling(describeVolumeAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVolumeAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVolumeAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the status of the specified volumes. Volume status provides the result of the checks performed on your * volumes to determine events that can impair the performance of your volumes. The performance of a volume can be * affected if an issue occurs on the volume's underlying host. If the volume's underlying host experiences a power * outage or system issue, after the system is restored, there could be data inconsistencies on the volume. Volume * events notify you if this occurs. Volume actions notify you if any action needs to be taken in response to the * event. *

*

* The DescribeVolumeStatus operation provides the following information about the specified volumes: *

*

* Status: Reflects the current status of the volume. The possible values are ok, * impaired , warning, or insufficient-data. If all checks pass, the overall * status of the volume is ok. If the check fails, the overall status is impaired. If the * status is insufficient-data, then the checks may still be taking place on your volume at the time. * We recommend that you retry the request. For more information about volume status, see Monitoring the Status of * Your Volumes in the Amazon Elastic Compute Cloud User Guide. *

*

* Events: Reflect the cause of a volume status and may require you to take action. For example, if your * volume returns an impaired status, then the volume event might be * potential-data-inconsistency. This means that your volume has been affected by an issue with the * underlying host, has all I/O operations disabled, and may have inconsistent data. *

*

* Actions: Reflect the actions you may have to take in response to an event. For example, if the status of * the volume is impaired and the volume event shows potential-data-inconsistency, then * the action shows enable-volume-io. This means that you may want to enable the I/O operations for the * volume by calling the EnableVolumeIO action and then check the volume for data consistency. *

*

* Volume status is based on the volume status checks, and does not reflect the volume state. Therefore, volume * status does not indicate volumes in the error state (for example, when a volume is incapable of * accepting I/O.) *

* * @param describeVolumeStatusRequest * @return Result of the DescribeVolumeStatus operation returned by the service. * @sample AmazonEC2.DescribeVolumeStatus * @see AWS API * Documentation */ @Override public DescribeVolumeStatusResult describeVolumeStatus(DescribeVolumeStatusRequest request) { request = beforeClientExecution(request); return executeDescribeVolumeStatus(request); } @SdkInternalApi final DescribeVolumeStatusResult executeDescribeVolumeStatus(DescribeVolumeStatusRequest describeVolumeStatusRequest) { ExecutionContext executionContext = createExecutionContext(describeVolumeStatusRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVolumeStatusRequestMarshaller().marshall(super.beforeMarshalling(describeVolumeStatusRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVolumeStatus"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVolumeStatusResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeVolumeStatusResult describeVolumeStatus() { return describeVolumeStatus(new DescribeVolumeStatusRequest()); } /** *

* Describes the specified EBS volumes or all of your EBS volumes. *

*

* If you are describing a long list of volumes, you can paginate the output to make the list more manageable. The * MaxResults parameter sets the maximum number of results returned in a single page. If the list of * results exceeds your MaxResults value, then that number of results is returned along with a * NextToken value that can be passed to a subsequent DescribeVolumes request to retrieve * the remaining results. *

*

* For more information about EBS volumes, see Amazon EBS Volumes in the * Amazon Elastic Compute Cloud User Guide. *

* * @param describeVolumesRequest * @return Result of the DescribeVolumes operation returned by the service. * @sample AmazonEC2.DescribeVolumes * @see AWS API * Documentation */ @Override public DescribeVolumesResult describeVolumes(DescribeVolumesRequest request) { request = beforeClientExecution(request); return executeDescribeVolumes(request); } @SdkInternalApi final DescribeVolumesResult executeDescribeVolumes(DescribeVolumesRequest describeVolumesRequest) { ExecutionContext executionContext = createExecutionContext(describeVolumesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVolumesRequestMarshaller().marshall(super.beforeMarshalling(describeVolumesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVolumes"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVolumesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeVolumesResult describeVolumes() { return describeVolumes(new DescribeVolumesRequest()); } /** *

* Reports the current modification status of EBS volumes. *

*

* Current-generation EBS volumes support modification of attributes including type, size, and (for io1 * volumes) IOPS provisioning while either attached to or detached from an instance. Following an action from the * API or the console to modify a volume, the status of the modification may be modifying, * optimizing, completed, or failed. If a volume has never been modified, * then certain elements of the returned VolumeModification objects are null. *

*

* You can also use CloudWatch Events to check the status of a modification to an EBS volume. For information about * CloudWatch Events, see the Amazon * CloudWatch Events User Guide. For more information, see Monitoring * Volume Modifications" in the Amazon Elastic Compute Cloud User Guide. *

* * @param describeVolumesModificationsRequest * @return Result of the DescribeVolumesModifications operation returned by the service. * @sample AmazonEC2.DescribeVolumesModifications * @see AWS API Documentation */ @Override public DescribeVolumesModificationsResult describeVolumesModifications(DescribeVolumesModificationsRequest request) { request = beforeClientExecution(request); return executeDescribeVolumesModifications(request); } @SdkInternalApi final DescribeVolumesModificationsResult executeDescribeVolumesModifications(DescribeVolumesModificationsRequest describeVolumesModificationsRequest) { ExecutionContext executionContext = createExecutionContext(describeVolumesModificationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVolumesModificationsRequestMarshaller().marshall(super.beforeMarshalling(describeVolumesModificationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVolumesModifications"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVolumesModificationsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the specified attribute of the specified VPC. You can specify only one attribute at a time. *

* * @param describeVpcAttributeRequest * @return Result of the DescribeVpcAttribute operation returned by the service. * @sample AmazonEC2.DescribeVpcAttribute * @see AWS API * Documentation */ @Override public DescribeVpcAttributeResult describeVpcAttribute(DescribeVpcAttributeRequest request) { request = beforeClientExecution(request); return executeDescribeVpcAttribute(request); } @SdkInternalApi final DescribeVpcAttributeResult executeDescribeVpcAttribute(DescribeVpcAttributeRequest describeVpcAttributeRequest) { ExecutionContext executionContext = createExecutionContext(describeVpcAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVpcAttributeRequestMarshaller().marshall(super.beforeMarshalling(describeVpcAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVpcAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVpcAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the ClassicLink status of one or more VPCs. *

* * @param describeVpcClassicLinkRequest * @return Result of the DescribeVpcClassicLink operation returned by the service. * @sample AmazonEC2.DescribeVpcClassicLink * @see AWS API * Documentation */ @Override public DescribeVpcClassicLinkResult describeVpcClassicLink(DescribeVpcClassicLinkRequest request) { request = beforeClientExecution(request); return executeDescribeVpcClassicLink(request); } @SdkInternalApi final DescribeVpcClassicLinkResult executeDescribeVpcClassicLink(DescribeVpcClassicLinkRequest describeVpcClassicLinkRequest) { ExecutionContext executionContext = createExecutionContext(describeVpcClassicLinkRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVpcClassicLinkRequestMarshaller().marshall(super.beforeMarshalling(describeVpcClassicLinkRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVpcClassicLink"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVpcClassicLinkResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeVpcClassicLinkResult describeVpcClassicLink() { return describeVpcClassicLink(new DescribeVpcClassicLinkRequest()); } /** *

* Describes the ClassicLink DNS support status of one or more VPCs. If enabled, the DNS hostname of a linked * EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's * linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed * from a linked EC2-Classic instance. For more information, see ClassicLink in the Amazon * Elastic Compute Cloud User Guide. *

* * @param describeVpcClassicLinkDnsSupportRequest * @return Result of the DescribeVpcClassicLinkDnsSupport operation returned by the service. * @sample AmazonEC2.DescribeVpcClassicLinkDnsSupport * @see AWS API Documentation */ @Override public DescribeVpcClassicLinkDnsSupportResult describeVpcClassicLinkDnsSupport(DescribeVpcClassicLinkDnsSupportRequest request) { request = beforeClientExecution(request); return executeDescribeVpcClassicLinkDnsSupport(request); } @SdkInternalApi final DescribeVpcClassicLinkDnsSupportResult executeDescribeVpcClassicLinkDnsSupport( DescribeVpcClassicLinkDnsSupportRequest describeVpcClassicLinkDnsSupportRequest) { ExecutionContext executionContext = createExecutionContext(describeVpcClassicLinkDnsSupportRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVpcClassicLinkDnsSupportRequestMarshaller().marshall(super.beforeMarshalling(describeVpcClassicLinkDnsSupportRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVpcClassicLinkDnsSupport"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVpcClassicLinkDnsSupportResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the connection notifications for VPC endpoints and VPC endpoint services. *

* * @param describeVpcEndpointConnectionNotificationsRequest * @return Result of the DescribeVpcEndpointConnectionNotifications operation returned by the service. * @sample AmazonEC2.DescribeVpcEndpointConnectionNotifications * @see AWS API Documentation */ @Override public DescribeVpcEndpointConnectionNotificationsResult describeVpcEndpointConnectionNotifications(DescribeVpcEndpointConnectionNotificationsRequest request) { request = beforeClientExecution(request); return executeDescribeVpcEndpointConnectionNotifications(request); } @SdkInternalApi final DescribeVpcEndpointConnectionNotificationsResult executeDescribeVpcEndpointConnectionNotifications( DescribeVpcEndpointConnectionNotificationsRequest describeVpcEndpointConnectionNotificationsRequest) { ExecutionContext executionContext = createExecutionContext(describeVpcEndpointConnectionNotificationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVpcEndpointConnectionNotificationsRequestMarshaller().marshall(super .beforeMarshalling(describeVpcEndpointConnectionNotificationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVpcEndpointConnectionNotifications"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVpcEndpointConnectionNotificationsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the VPC endpoint connections to your VPC endpoint services, including any endpoints that are pending * your acceptance. *

* * @param describeVpcEndpointConnectionsRequest * @return Result of the DescribeVpcEndpointConnections operation returned by the service. * @sample AmazonEC2.DescribeVpcEndpointConnections * @see AWS API Documentation */ @Override public DescribeVpcEndpointConnectionsResult describeVpcEndpointConnections(DescribeVpcEndpointConnectionsRequest request) { request = beforeClientExecution(request); return executeDescribeVpcEndpointConnections(request); } @SdkInternalApi final DescribeVpcEndpointConnectionsResult executeDescribeVpcEndpointConnections(DescribeVpcEndpointConnectionsRequest describeVpcEndpointConnectionsRequest) { ExecutionContext executionContext = createExecutionContext(describeVpcEndpointConnectionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVpcEndpointConnectionsRequestMarshaller().marshall(super.beforeMarshalling(describeVpcEndpointConnectionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVpcEndpointConnections"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVpcEndpointConnectionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the VPC endpoint service configurations in your account (your services). *

* * @param describeVpcEndpointServiceConfigurationsRequest * @return Result of the DescribeVpcEndpointServiceConfigurations operation returned by the service. * @sample AmazonEC2.DescribeVpcEndpointServiceConfigurations * @see AWS API Documentation */ @Override public DescribeVpcEndpointServiceConfigurationsResult describeVpcEndpointServiceConfigurations(DescribeVpcEndpointServiceConfigurationsRequest request) { request = beforeClientExecution(request); return executeDescribeVpcEndpointServiceConfigurations(request); } @SdkInternalApi final DescribeVpcEndpointServiceConfigurationsResult executeDescribeVpcEndpointServiceConfigurations( DescribeVpcEndpointServiceConfigurationsRequest describeVpcEndpointServiceConfigurationsRequest) { ExecutionContext executionContext = createExecutionContext(describeVpcEndpointServiceConfigurationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVpcEndpointServiceConfigurationsRequestMarshaller().marshall(super .beforeMarshalling(describeVpcEndpointServiceConfigurationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVpcEndpointServiceConfigurations"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVpcEndpointServiceConfigurationsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the principals (service consumers) that are permitted to discover your VPC endpoint service. *

* * @param describeVpcEndpointServicePermissionsRequest * @return Result of the DescribeVpcEndpointServicePermissions operation returned by the service. * @sample AmazonEC2.DescribeVpcEndpointServicePermissions * @see AWS API Documentation */ @Override public DescribeVpcEndpointServicePermissionsResult describeVpcEndpointServicePermissions(DescribeVpcEndpointServicePermissionsRequest request) { request = beforeClientExecution(request); return executeDescribeVpcEndpointServicePermissions(request); } @SdkInternalApi final DescribeVpcEndpointServicePermissionsResult executeDescribeVpcEndpointServicePermissions( DescribeVpcEndpointServicePermissionsRequest describeVpcEndpointServicePermissionsRequest) { ExecutionContext executionContext = createExecutionContext(describeVpcEndpointServicePermissionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVpcEndpointServicePermissionsRequestMarshaller().marshall(super .beforeMarshalling(describeVpcEndpointServicePermissionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVpcEndpointServicePermissions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVpcEndpointServicePermissionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes available services to which you can create a VPC endpoint. *

* * @param describeVpcEndpointServicesRequest * Contains the parameters for DescribeVpcEndpointServices. * @return Result of the DescribeVpcEndpointServices operation returned by the service. * @sample AmazonEC2.DescribeVpcEndpointServices * @see AWS API Documentation */ @Override public DescribeVpcEndpointServicesResult describeVpcEndpointServices(DescribeVpcEndpointServicesRequest request) { request = beforeClientExecution(request); return executeDescribeVpcEndpointServices(request); } @SdkInternalApi final DescribeVpcEndpointServicesResult executeDescribeVpcEndpointServices(DescribeVpcEndpointServicesRequest describeVpcEndpointServicesRequest) { ExecutionContext executionContext = createExecutionContext(describeVpcEndpointServicesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVpcEndpointServicesRequestMarshaller().marshall(super.beforeMarshalling(describeVpcEndpointServicesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVpcEndpointServices"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVpcEndpointServicesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeVpcEndpointServicesResult describeVpcEndpointServices() { return describeVpcEndpointServices(new DescribeVpcEndpointServicesRequest()); } /** *

* Describes one or more of your VPC endpoints. *

* * @param describeVpcEndpointsRequest * Contains the parameters for DescribeVpcEndpoints. * @return Result of the DescribeVpcEndpoints operation returned by the service. * @sample AmazonEC2.DescribeVpcEndpoints * @see AWS API * Documentation */ @Override public DescribeVpcEndpointsResult describeVpcEndpoints(DescribeVpcEndpointsRequest request) { request = beforeClientExecution(request); return executeDescribeVpcEndpoints(request); } @SdkInternalApi final DescribeVpcEndpointsResult executeDescribeVpcEndpoints(DescribeVpcEndpointsRequest describeVpcEndpointsRequest) { ExecutionContext executionContext = createExecutionContext(describeVpcEndpointsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVpcEndpointsRequestMarshaller().marshall(super.beforeMarshalling(describeVpcEndpointsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVpcEndpoints"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVpcEndpointsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeVpcEndpointsResult describeVpcEndpoints() { return describeVpcEndpoints(new DescribeVpcEndpointsRequest()); } /** *

* Describes one or more of your VPC peering connections. *

* * @param describeVpcPeeringConnectionsRequest * @return Result of the DescribeVpcPeeringConnections operation returned by the service. * @sample AmazonEC2.DescribeVpcPeeringConnections * @see AWS API Documentation */ @Override public DescribeVpcPeeringConnectionsResult describeVpcPeeringConnections(DescribeVpcPeeringConnectionsRequest request) { request = beforeClientExecution(request); return executeDescribeVpcPeeringConnections(request); } @SdkInternalApi final DescribeVpcPeeringConnectionsResult executeDescribeVpcPeeringConnections(DescribeVpcPeeringConnectionsRequest describeVpcPeeringConnectionsRequest) { ExecutionContext executionContext = createExecutionContext(describeVpcPeeringConnectionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVpcPeeringConnectionsRequestMarshaller().marshall(super.beforeMarshalling(describeVpcPeeringConnectionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVpcPeeringConnections"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVpcPeeringConnectionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeVpcPeeringConnectionsResult describeVpcPeeringConnections() { return describeVpcPeeringConnections(new DescribeVpcPeeringConnectionsRequest()); } /** *

* Describes one or more of your VPCs. *

* * @param describeVpcsRequest * @return Result of the DescribeVpcs operation returned by the service. * @sample AmazonEC2.DescribeVpcs * @see AWS API * Documentation */ @Override public DescribeVpcsResult describeVpcs(DescribeVpcsRequest request) { request = beforeClientExecution(request); return executeDescribeVpcs(request); } @SdkInternalApi final DescribeVpcsResult executeDescribeVpcs(DescribeVpcsRequest describeVpcsRequest) { ExecutionContext executionContext = createExecutionContext(describeVpcsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVpcsRequestMarshaller().marshall(super.beforeMarshalling(describeVpcsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVpcs"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new DescribeVpcsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeVpcsResult describeVpcs() { return describeVpcs(new DescribeVpcsRequest()); } /** *

* Describes one or more of your VPN connections. *

*

* For more information, see AWS Site-to-Site * VPN in the AWS Site-to-Site VPN User Guide. *

* * @param describeVpnConnectionsRequest * Contains the parameters for DescribeVpnConnections. * @return Result of the DescribeVpnConnections operation returned by the service. * @sample AmazonEC2.DescribeVpnConnections * @see AWS API * Documentation */ @Override public DescribeVpnConnectionsResult describeVpnConnections(DescribeVpnConnectionsRequest request) { request = beforeClientExecution(request); return executeDescribeVpnConnections(request); } @SdkInternalApi final DescribeVpnConnectionsResult executeDescribeVpnConnections(DescribeVpnConnectionsRequest describeVpnConnectionsRequest) { ExecutionContext executionContext = createExecutionContext(describeVpnConnectionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVpnConnectionsRequestMarshaller().marshall(super.beforeMarshalling(describeVpnConnectionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVpnConnections"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVpnConnectionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeVpnConnectionsResult describeVpnConnections() { return describeVpnConnections(new DescribeVpnConnectionsRequest()); } /** *

* Describes one or more of your virtual private gateways. *

*

* For more information, see AWS Site-to-Site * VPN in the AWS Site-to-Site VPN User Guide. *

* * @param describeVpnGatewaysRequest * Contains the parameters for DescribeVpnGateways. * @return Result of the DescribeVpnGateways operation returned by the service. * @sample AmazonEC2.DescribeVpnGateways * @see AWS API * Documentation */ @Override public DescribeVpnGatewaysResult describeVpnGateways(DescribeVpnGatewaysRequest request) { request = beforeClientExecution(request); return executeDescribeVpnGateways(request); } @SdkInternalApi final DescribeVpnGatewaysResult executeDescribeVpnGateways(DescribeVpnGatewaysRequest describeVpnGatewaysRequest) { ExecutionContext executionContext = createExecutionContext(describeVpnGatewaysRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeVpnGatewaysRequestMarshaller().marshall(super.beforeMarshalling(describeVpnGatewaysRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeVpnGateways"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeVpnGatewaysResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeVpnGatewaysResult describeVpnGateways() { return describeVpnGateways(new DescribeVpnGatewaysRequest()); } /** *

* Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the instance has been unlinked, the VPC * security groups are no longer associated with it. An instance is automatically unlinked from a VPC when it's * stopped. *

* * @param detachClassicLinkVpcRequest * @return Result of the DetachClassicLinkVpc operation returned by the service. * @sample AmazonEC2.DetachClassicLinkVpc * @see AWS API * Documentation */ @Override public DetachClassicLinkVpcResult detachClassicLinkVpc(DetachClassicLinkVpcRequest request) { request = beforeClientExecution(request); return executeDetachClassicLinkVpc(request); } @SdkInternalApi final DetachClassicLinkVpcResult executeDetachClassicLinkVpc(DetachClassicLinkVpcRequest detachClassicLinkVpcRequest) { ExecutionContext executionContext = createExecutionContext(detachClassicLinkVpcRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DetachClassicLinkVpcRequestMarshaller().marshall(super.beforeMarshalling(detachClassicLinkVpcRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DetachClassicLinkVpc"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DetachClassicLinkVpcResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Detaches an internet gateway from a VPC, disabling connectivity between the internet and the VPC. The VPC must * not contain any running instances with Elastic IP addresses or public IPv4 addresses. *

* * @param detachInternetGatewayRequest * @return Result of the DetachInternetGateway operation returned by the service. * @sample AmazonEC2.DetachInternetGateway * @see AWS API * Documentation */ @Override public DetachInternetGatewayResult detachInternetGateway(DetachInternetGatewayRequest request) { request = beforeClientExecution(request); return executeDetachInternetGateway(request); } @SdkInternalApi final DetachInternetGatewayResult executeDetachInternetGateway(DetachInternetGatewayRequest detachInternetGatewayRequest) { ExecutionContext executionContext = createExecutionContext(detachInternetGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DetachInternetGatewayRequestMarshaller().marshall(super.beforeMarshalling(detachInternetGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DetachInternetGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DetachInternetGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Detaches a network interface from an instance. *

* * @param detachNetworkInterfaceRequest * Contains the parameters for DetachNetworkInterface. * @return Result of the DetachNetworkInterface operation returned by the service. * @sample AmazonEC2.DetachNetworkInterface * @see AWS API * Documentation */ @Override public DetachNetworkInterfaceResult detachNetworkInterface(DetachNetworkInterfaceRequest request) { request = beforeClientExecution(request); return executeDetachNetworkInterface(request); } @SdkInternalApi final DetachNetworkInterfaceResult executeDetachNetworkInterface(DetachNetworkInterfaceRequest detachNetworkInterfaceRequest) { ExecutionContext executionContext = createExecutionContext(detachNetworkInterfaceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DetachNetworkInterfaceRequestMarshaller().marshall(super.beforeMarshalling(detachNetworkInterfaceRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DetachNetworkInterface"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DetachNetworkInterfaceResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Detaches an EBS volume from an instance. Make sure to unmount any file systems on the device within your * operating system before detaching the volume. Failure to do so can result in the volume becoming stuck in the * busy state while detaching. If this happens, detachment can be delayed indefinitely until you * unmount the volume, force detachment, reboot the instance, or all three. If an EBS volume is the root device of * an instance, it can't be detached while the instance is running. To detach the root volume, stop the instance * first. *

*

* When a volume with an AWS Marketplace product code is detached from an instance, the product code is no longer * associated with the instance. *

*

* For more information, see Detaching an Amazon EBS * Volume in the Amazon Elastic Compute Cloud User Guide. *

* * @param detachVolumeRequest * Contains the parameters for DetachVolume. * @return Result of the DetachVolume operation returned by the service. * @sample AmazonEC2.DetachVolume * @see AWS API * Documentation */ @Override public DetachVolumeResult detachVolume(DetachVolumeRequest request) { request = beforeClientExecution(request); return executeDetachVolume(request); } @SdkInternalApi final DetachVolumeResult executeDetachVolume(DetachVolumeRequest detachVolumeRequest) { ExecutionContext executionContext = createExecutionContext(detachVolumeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DetachVolumeRequestMarshaller().marshall(super.beforeMarshalling(detachVolumeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DetachVolume"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new DetachVolumeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Detaches a virtual private gateway from a VPC. You do this if you're planning to turn off the VPC and not use it * anymore. You can confirm a virtual private gateway has been completely detached from a VPC by describing the * virtual private gateway (any attachments to the virtual private gateway are also described). *

*

* You must wait for the attachment's state to switch to detached before you can delete the VPC or * attach a different VPC to the virtual private gateway. *

* * @param detachVpnGatewayRequest * Contains the parameters for DetachVpnGateway. * @return Result of the DetachVpnGateway operation returned by the service. * @sample AmazonEC2.DetachVpnGateway * @see AWS API * Documentation */ @Override public DetachVpnGatewayResult detachVpnGateway(DetachVpnGatewayRequest request) { request = beforeClientExecution(request); return executeDetachVpnGateway(request); } @SdkInternalApi final DetachVpnGatewayResult executeDetachVpnGateway(DetachVpnGatewayRequest detachVpnGatewayRequest) { ExecutionContext executionContext = createExecutionContext(detachVpnGatewayRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DetachVpnGatewayRequestMarshaller().marshall(super.beforeMarshalling(detachVpnGatewayRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DetachVpnGateway"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DetachVpnGatewayResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disables EBS encryption by default for your account in the current Region. *

*

* After you disable encryption by default, you can still create encrypted volumes by enabling encryption when you * create each volume. *

*

* Disabling encryption by default does not change the encryption status of your existing volumes. *

*

* For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User Guide. *

* * @param disableEbsEncryptionByDefaultRequest * @return Result of the DisableEbsEncryptionByDefault operation returned by the service. * @sample AmazonEC2.DisableEbsEncryptionByDefault * @see AWS API Documentation */ @Override public DisableEbsEncryptionByDefaultResult disableEbsEncryptionByDefault(DisableEbsEncryptionByDefaultRequest request) { request = beforeClientExecution(request); return executeDisableEbsEncryptionByDefault(request); } @SdkInternalApi final DisableEbsEncryptionByDefaultResult executeDisableEbsEncryptionByDefault(DisableEbsEncryptionByDefaultRequest disableEbsEncryptionByDefaultRequest) { ExecutionContext executionContext = createExecutionContext(disableEbsEncryptionByDefaultRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DisableEbsEncryptionByDefaultRequestMarshaller().marshall(super.beforeMarshalling(disableEbsEncryptionByDefaultRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DisableEbsEncryptionByDefault"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DisableEbsEncryptionByDefaultResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disables the specified resource attachment from propagating routes to the specified propagation route table. *

* * @param disableTransitGatewayRouteTablePropagationRequest * @return Result of the DisableTransitGatewayRouteTablePropagation operation returned by the service. * @sample AmazonEC2.DisableTransitGatewayRouteTablePropagation * @see AWS API Documentation */ @Override public DisableTransitGatewayRouteTablePropagationResult disableTransitGatewayRouteTablePropagation(DisableTransitGatewayRouteTablePropagationRequest request) { request = beforeClientExecution(request); return executeDisableTransitGatewayRouteTablePropagation(request); } @SdkInternalApi final DisableTransitGatewayRouteTablePropagationResult executeDisableTransitGatewayRouteTablePropagation( DisableTransitGatewayRouteTablePropagationRequest disableTransitGatewayRouteTablePropagationRequest) { ExecutionContext executionContext = createExecutionContext(disableTransitGatewayRouteTablePropagationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DisableTransitGatewayRouteTablePropagationRequestMarshaller().marshall(super .beforeMarshalling(disableTransitGatewayRouteTablePropagationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DisableTransitGatewayRouteTablePropagation"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DisableTransitGatewayRouteTablePropagationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disables a virtual private gateway (VGW) from propagating routes to a specified route table of a VPC. *

* * @param disableVgwRoutePropagationRequest * Contains the parameters for DisableVgwRoutePropagation. * @return Result of the DisableVgwRoutePropagation operation returned by the service. * @sample AmazonEC2.DisableVgwRoutePropagation * @see AWS * API Documentation */ @Override public DisableVgwRoutePropagationResult disableVgwRoutePropagation(DisableVgwRoutePropagationRequest request) { request = beforeClientExecution(request); return executeDisableVgwRoutePropagation(request); } @SdkInternalApi final DisableVgwRoutePropagationResult executeDisableVgwRoutePropagation(DisableVgwRoutePropagationRequest disableVgwRoutePropagationRequest) { ExecutionContext executionContext = createExecutionContext(disableVgwRoutePropagationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DisableVgwRoutePropagationRequestMarshaller().marshall(super.beforeMarshalling(disableVgwRoutePropagationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DisableVgwRoutePropagation"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DisableVgwRoutePropagationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that has EC2-Classic instances linked to * it. *

* * @param disableVpcClassicLinkRequest * @return Result of the DisableVpcClassicLink operation returned by the service. * @sample AmazonEC2.DisableVpcClassicLink * @see AWS API * Documentation */ @Override public DisableVpcClassicLinkResult disableVpcClassicLink(DisableVpcClassicLinkRequest request) { request = beforeClientExecution(request); return executeDisableVpcClassicLink(request); } @SdkInternalApi final DisableVpcClassicLinkResult executeDisableVpcClassicLink(DisableVpcClassicLinkRequest disableVpcClassicLinkRequest) { ExecutionContext executionContext = createExecutionContext(disableVpcClassicLinkRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DisableVpcClassicLinkRequestMarshaller().marshall(super.beforeMarshalling(disableVpcClassicLinkRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DisableVpcClassicLink"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DisableVpcClassicLinkResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disables ClassicLink DNS support for a VPC. If disabled, DNS hostnames resolve to public IP addresses when * addressed between a linked EC2-Classic instance and instances in the VPC to which it's linked. For more * information, see ClassicLink in the Amazon * Elastic Compute Cloud User Guide. *

* * @param disableVpcClassicLinkDnsSupportRequest * @return Result of the DisableVpcClassicLinkDnsSupport operation returned by the service. * @sample AmazonEC2.DisableVpcClassicLinkDnsSupport * @see AWS API Documentation */ @Override public DisableVpcClassicLinkDnsSupportResult disableVpcClassicLinkDnsSupport(DisableVpcClassicLinkDnsSupportRequest request) { request = beforeClientExecution(request); return executeDisableVpcClassicLinkDnsSupport(request); } @SdkInternalApi final DisableVpcClassicLinkDnsSupportResult executeDisableVpcClassicLinkDnsSupport( DisableVpcClassicLinkDnsSupportRequest disableVpcClassicLinkDnsSupportRequest) { ExecutionContext executionContext = createExecutionContext(disableVpcClassicLinkDnsSupportRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DisableVpcClassicLinkDnsSupportRequestMarshaller().marshall(super.beforeMarshalling(disableVpcClassicLinkDnsSupportRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DisableVpcClassicLinkDnsSupport"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DisableVpcClassicLinkDnsSupportResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disassociates an Elastic IP address from the instance or network interface it's associated with. *

*

* An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses * in the Amazon Elastic Compute Cloud User Guide. *

*

* This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error. *

* * @param disassociateAddressRequest * @return Result of the DisassociateAddress operation returned by the service. * @sample AmazonEC2.DisassociateAddress * @see AWS API * Documentation */ @Override public DisassociateAddressResult disassociateAddress(DisassociateAddressRequest request) { request = beforeClientExecution(request); return executeDisassociateAddress(request); } @SdkInternalApi final DisassociateAddressResult executeDisassociateAddress(DisassociateAddressRequest disassociateAddressRequest) { ExecutionContext executionContext = createExecutionContext(disassociateAddressRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DisassociateAddressRequestMarshaller().marshall(super.beforeMarshalling(disassociateAddressRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DisassociateAddress"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DisassociateAddressResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disassociates a target network from the specified Client VPN endpoint. When you disassociate the last target * network from a Client VPN, the following happens: *

*
    *
  • *

    * The route that was automatically added for the VPC is deleted *

    *
  • *
  • *

    * All active client connections are terminated *

    *
  • *
  • *

    * New client connections are disallowed *

    *
  • *
  • *

    * The Client VPN endpoint's status changes to pending-associate *

    *
  • *
* * @param disassociateClientVpnTargetNetworkRequest * @return Result of the DisassociateClientVpnTargetNetwork operation returned by the service. * @sample AmazonEC2.DisassociateClientVpnTargetNetwork * @see AWS API Documentation */ @Override public DisassociateClientVpnTargetNetworkResult disassociateClientVpnTargetNetwork(DisassociateClientVpnTargetNetworkRequest request) { request = beforeClientExecution(request); return executeDisassociateClientVpnTargetNetwork(request); } @SdkInternalApi final DisassociateClientVpnTargetNetworkResult executeDisassociateClientVpnTargetNetwork( DisassociateClientVpnTargetNetworkRequest disassociateClientVpnTargetNetworkRequest) { ExecutionContext executionContext = createExecutionContext(disassociateClientVpnTargetNetworkRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DisassociateClientVpnTargetNetworkRequestMarshaller() .marshall(super.beforeMarshalling(disassociateClientVpnTargetNetworkRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DisassociateClientVpnTargetNetwork"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DisassociateClientVpnTargetNetworkResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disassociates an IAM instance profile from a running or stopped instance. *

*

* Use DescribeIamInstanceProfileAssociations to get the association ID. *

* * @param disassociateIamInstanceProfileRequest * @return Result of the DisassociateIamInstanceProfile operation returned by the service. * @sample AmazonEC2.DisassociateIamInstanceProfile * @see AWS API Documentation */ @Override public DisassociateIamInstanceProfileResult disassociateIamInstanceProfile(DisassociateIamInstanceProfileRequest request) { request = beforeClientExecution(request); return executeDisassociateIamInstanceProfile(request); } @SdkInternalApi final DisassociateIamInstanceProfileResult executeDisassociateIamInstanceProfile(DisassociateIamInstanceProfileRequest disassociateIamInstanceProfileRequest) { ExecutionContext executionContext = createExecutionContext(disassociateIamInstanceProfileRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DisassociateIamInstanceProfileRequestMarshaller().marshall(super.beforeMarshalling(disassociateIamInstanceProfileRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DisassociateIamInstanceProfile"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DisassociateIamInstanceProfileResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disassociates a subnet from a route table. *

*

* After you perform this action, the subnet no longer uses the routes in the route table. Instead, it uses the * routes in the VPC's main route table. For more information about route tables, see Route Tables in the Amazon * Virtual Private Cloud User Guide. *

* * @param disassociateRouteTableRequest * @return Result of the DisassociateRouteTable operation returned by the service. * @sample AmazonEC2.DisassociateRouteTable * @see AWS API * Documentation */ @Override public DisassociateRouteTableResult disassociateRouteTable(DisassociateRouteTableRequest request) { request = beforeClientExecution(request); return executeDisassociateRouteTable(request); } @SdkInternalApi final DisassociateRouteTableResult executeDisassociateRouteTable(DisassociateRouteTableRequest disassociateRouteTableRequest) { ExecutionContext executionContext = createExecutionContext(disassociateRouteTableRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DisassociateRouteTableRequestMarshaller().marshall(super.beforeMarshalling(disassociateRouteTableRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DisassociateRouteTable"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DisassociateRouteTableResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disassociates a CIDR block from a subnet. Currently, you can disassociate an IPv6 CIDR block only. You must * detach or delete all gateways and resources that are associated with the CIDR block before you can disassociate * it. *

* * @param disassociateSubnetCidrBlockRequest * @return Result of the DisassociateSubnetCidrBlock operation returned by the service. * @sample AmazonEC2.DisassociateSubnetCidrBlock * @see AWS API Documentation */ @Override public DisassociateSubnetCidrBlockResult disassociateSubnetCidrBlock(DisassociateSubnetCidrBlockRequest request) { request = beforeClientExecution(request); return executeDisassociateSubnetCidrBlock(request); } @SdkInternalApi final DisassociateSubnetCidrBlockResult executeDisassociateSubnetCidrBlock(DisassociateSubnetCidrBlockRequest disassociateSubnetCidrBlockRequest) { ExecutionContext executionContext = createExecutionContext(disassociateSubnetCidrBlockRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DisassociateSubnetCidrBlockRequestMarshaller().marshall(super.beforeMarshalling(disassociateSubnetCidrBlockRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DisassociateSubnetCidrBlock"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DisassociateSubnetCidrBlockResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disassociates a resource attachment from a transit gateway route table. *

* * @param disassociateTransitGatewayRouteTableRequest * @return Result of the DisassociateTransitGatewayRouteTable operation returned by the service. * @sample AmazonEC2.DisassociateTransitGatewayRouteTable * @see AWS API Documentation */ @Override public DisassociateTransitGatewayRouteTableResult disassociateTransitGatewayRouteTable(DisassociateTransitGatewayRouteTableRequest request) { request = beforeClientExecution(request); return executeDisassociateTransitGatewayRouteTable(request); } @SdkInternalApi final DisassociateTransitGatewayRouteTableResult executeDisassociateTransitGatewayRouteTable( DisassociateTransitGatewayRouteTableRequest disassociateTransitGatewayRouteTableRequest) { ExecutionContext executionContext = createExecutionContext(disassociateTransitGatewayRouteTableRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DisassociateTransitGatewayRouteTableRequestMarshaller().marshall(super .beforeMarshalling(disassociateTransitGatewayRouteTableRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DisassociateTransitGatewayRouteTable"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DisassociateTransitGatewayRouteTableResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disassociates a CIDR block from a VPC. To disassociate the CIDR block, you must specify its association ID. You * can get the association ID by using DescribeVpcs. You must detach or delete all gateways and resources * that are associated with the CIDR block before you can disassociate it. *

*

* You cannot disassociate the CIDR block with which you originally created the VPC (the primary CIDR block). *

* * @param disassociateVpcCidrBlockRequest * @return Result of the DisassociateVpcCidrBlock operation returned by the service. * @sample AmazonEC2.DisassociateVpcCidrBlock * @see AWS * API Documentation */ @Override public DisassociateVpcCidrBlockResult disassociateVpcCidrBlock(DisassociateVpcCidrBlockRequest request) { request = beforeClientExecution(request); return executeDisassociateVpcCidrBlock(request); } @SdkInternalApi final DisassociateVpcCidrBlockResult executeDisassociateVpcCidrBlock(DisassociateVpcCidrBlockRequest disassociateVpcCidrBlockRequest) { ExecutionContext executionContext = createExecutionContext(disassociateVpcCidrBlockRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DisassociateVpcCidrBlockRequestMarshaller().marshall(super.beforeMarshalling(disassociateVpcCidrBlockRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DisassociateVpcCidrBlock"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DisassociateVpcCidrBlockResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Enables EBS encryption by default for your account in the current Region. *

*

* After you enable encryption by default, the EBS volumes that you create are are always encrypted, either using * the default CMK or the CMK that you specified when you created each volume. For more information, see Amazon EBS Encryption in the * Amazon Elastic Compute Cloud User Guide. *

*

* You can specify the default CMK for encryption by default using ModifyEbsDefaultKmsKeyId or * ResetEbsDefaultKmsKeyId. *

*

* Enabling encryption by default has no effect on the encryption status of your existing volumes. *

*

* After you enable encryption by default, you can no longer launch instances using instance types that do not * support encryption. For more information, see Supported Instance Types. *

* * @param enableEbsEncryptionByDefaultRequest * @return Result of the EnableEbsEncryptionByDefault operation returned by the service. * @sample AmazonEC2.EnableEbsEncryptionByDefault * @see AWS API Documentation */ @Override public EnableEbsEncryptionByDefaultResult enableEbsEncryptionByDefault(EnableEbsEncryptionByDefaultRequest request) { request = beforeClientExecution(request); return executeEnableEbsEncryptionByDefault(request); } @SdkInternalApi final EnableEbsEncryptionByDefaultResult executeEnableEbsEncryptionByDefault(EnableEbsEncryptionByDefaultRequest enableEbsEncryptionByDefaultRequest) { ExecutionContext executionContext = createExecutionContext(enableEbsEncryptionByDefaultRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new EnableEbsEncryptionByDefaultRequestMarshaller().marshall(super.beforeMarshalling(enableEbsEncryptionByDefaultRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "EnableEbsEncryptionByDefault"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new EnableEbsEncryptionByDefaultResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Enables the specified attachment to propagate routes to the specified propagation route table. *

* * @param enableTransitGatewayRouteTablePropagationRequest * @return Result of the EnableTransitGatewayRouteTablePropagation operation returned by the service. * @sample AmazonEC2.EnableTransitGatewayRouteTablePropagation * @see AWS API Documentation */ @Override public EnableTransitGatewayRouteTablePropagationResult enableTransitGatewayRouteTablePropagation(EnableTransitGatewayRouteTablePropagationRequest request) { request = beforeClientExecution(request); return executeEnableTransitGatewayRouteTablePropagation(request); } @SdkInternalApi final EnableTransitGatewayRouteTablePropagationResult executeEnableTransitGatewayRouteTablePropagation( EnableTransitGatewayRouteTablePropagationRequest enableTransitGatewayRouteTablePropagationRequest) { ExecutionContext executionContext = createExecutionContext(enableTransitGatewayRouteTablePropagationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new EnableTransitGatewayRouteTablePropagationRequestMarshaller().marshall(super .beforeMarshalling(enableTransitGatewayRouteTablePropagationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "EnableTransitGatewayRouteTablePropagation"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new EnableTransitGatewayRouteTablePropagationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Enables a virtual private gateway (VGW) to propagate routes to the specified route table of a VPC. *

* * @param enableVgwRoutePropagationRequest * Contains the parameters for EnableVgwRoutePropagation. * @return Result of the EnableVgwRoutePropagation operation returned by the service. * @sample AmazonEC2.EnableVgwRoutePropagation * @see AWS * API Documentation */ @Override public EnableVgwRoutePropagationResult enableVgwRoutePropagation(EnableVgwRoutePropagationRequest request) { request = beforeClientExecution(request); return executeEnableVgwRoutePropagation(request); } @SdkInternalApi final EnableVgwRoutePropagationResult executeEnableVgwRoutePropagation(EnableVgwRoutePropagationRequest enableVgwRoutePropagationRequest) { ExecutionContext executionContext = createExecutionContext(enableVgwRoutePropagationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new EnableVgwRoutePropagationRequestMarshaller().marshall(super.beforeMarshalling(enableVgwRoutePropagationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "EnableVgwRoutePropagation"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new EnableVgwRoutePropagationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Enables I/O operations for a volume that had I/O operations disabled because the data on the volume was * potentially inconsistent. *

* * @param enableVolumeIORequest * Contains the parameters for EnableVolumeIO. * @return Result of the EnableVolumeIO operation returned by the service. * @sample AmazonEC2.EnableVolumeIO * @see AWS API * Documentation */ @Override public EnableVolumeIOResult enableVolumeIO(EnableVolumeIORequest request) { request = beforeClientExecution(request); return executeEnableVolumeIO(request); } @SdkInternalApi final EnableVolumeIOResult executeEnableVolumeIO(EnableVolumeIORequest enableVolumeIORequest) { ExecutionContext executionContext = createExecutionContext(enableVolumeIORequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new EnableVolumeIORequestMarshaller().marshall(super.beforeMarshalling(enableVolumeIORequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "EnableVolumeIO"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new EnableVolumeIOResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Enables a VPC for ClassicLink. You can then link EC2-Classic instances to your ClassicLink-enabled VPC to allow * communication over private IP addresses. You cannot enable your VPC for ClassicLink if any of your VPC route * tables have existing routes for address ranges within the 10.0.0.0/8 IP address range, excluding * local routes for VPCs in the 10.0.0.0/16 and 10.1.0.0/16 IP address ranges. For more * information, see ClassicLink in the Amazon * Elastic Compute Cloud User Guide. *

* * @param enableVpcClassicLinkRequest * @return Result of the EnableVpcClassicLink operation returned by the service. * @sample AmazonEC2.EnableVpcClassicLink * @see AWS API * Documentation */ @Override public EnableVpcClassicLinkResult enableVpcClassicLink(EnableVpcClassicLinkRequest request) { request = beforeClientExecution(request); return executeEnableVpcClassicLink(request); } @SdkInternalApi final EnableVpcClassicLinkResult executeEnableVpcClassicLink(EnableVpcClassicLinkRequest enableVpcClassicLinkRequest) { ExecutionContext executionContext = createExecutionContext(enableVpcClassicLinkRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new EnableVpcClassicLinkRequestMarshaller().marshall(super.beforeMarshalling(enableVpcClassicLinkRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "EnableVpcClassicLink"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new EnableVpcClassicLinkResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Enables a VPC to support DNS hostname resolution for ClassicLink. If enabled, the DNS hostname of a linked * EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's * linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed * from a linked EC2-Classic instance. For more information, see ClassicLink in the Amazon * Elastic Compute Cloud User Guide. *

* * @param enableVpcClassicLinkDnsSupportRequest * @return Result of the EnableVpcClassicLinkDnsSupport operation returned by the service. * @sample AmazonEC2.EnableVpcClassicLinkDnsSupport * @see AWS API Documentation */ @Override public EnableVpcClassicLinkDnsSupportResult enableVpcClassicLinkDnsSupport(EnableVpcClassicLinkDnsSupportRequest request) { request = beforeClientExecution(request); return executeEnableVpcClassicLinkDnsSupport(request); } @SdkInternalApi final EnableVpcClassicLinkDnsSupportResult executeEnableVpcClassicLinkDnsSupport(EnableVpcClassicLinkDnsSupportRequest enableVpcClassicLinkDnsSupportRequest) { ExecutionContext executionContext = createExecutionContext(enableVpcClassicLinkDnsSupportRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new EnableVpcClassicLinkDnsSupportRequestMarshaller().marshall(super.beforeMarshalling(enableVpcClassicLinkDnsSupportRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "EnableVpcClassicLinkDnsSupport"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new EnableVpcClassicLinkDnsSupportResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Downloads the client certificate revocation list for the specified Client VPN endpoint. *

* * @param exportClientVpnClientCertificateRevocationListRequest * @return Result of the ExportClientVpnClientCertificateRevocationList operation returned by the service. * @sample AmazonEC2.ExportClientVpnClientCertificateRevocationList * @see AWS API Documentation */ @Override public ExportClientVpnClientCertificateRevocationListResult exportClientVpnClientCertificateRevocationList( ExportClientVpnClientCertificateRevocationListRequest request) { request = beforeClientExecution(request); return executeExportClientVpnClientCertificateRevocationList(request); } @SdkInternalApi final ExportClientVpnClientCertificateRevocationListResult executeExportClientVpnClientCertificateRevocationList( ExportClientVpnClientCertificateRevocationListRequest exportClientVpnClientCertificateRevocationListRequest) { ExecutionContext executionContext = createExecutionContext(exportClientVpnClientCertificateRevocationListRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ExportClientVpnClientCertificateRevocationListRequestMarshaller().marshall(super .beforeMarshalling(exportClientVpnClientCertificateRevocationListRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ExportClientVpnClientCertificateRevocationList"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ExportClientVpnClientCertificateRevocationListResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Downloads the contents of the Client VPN endpoint configuration file for the specified Client VPN endpoint. The * Client VPN endpoint configuration file includes the Client VPN endpoint and certificate information clients need * to establish a connection with the Client VPN endpoint. *

* * @param exportClientVpnClientConfigurationRequest * @return Result of the ExportClientVpnClientConfiguration operation returned by the service. * @sample AmazonEC2.ExportClientVpnClientConfiguration * @see AWS API Documentation */ @Override public ExportClientVpnClientConfigurationResult exportClientVpnClientConfiguration(ExportClientVpnClientConfigurationRequest request) { request = beforeClientExecution(request); return executeExportClientVpnClientConfiguration(request); } @SdkInternalApi final ExportClientVpnClientConfigurationResult executeExportClientVpnClientConfiguration( ExportClientVpnClientConfigurationRequest exportClientVpnClientConfigurationRequest) { ExecutionContext executionContext = createExecutionContext(exportClientVpnClientConfigurationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ExportClientVpnClientConfigurationRequestMarshaller() .marshall(super.beforeMarshalling(exportClientVpnClientConfigurationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ExportClientVpnClientConfiguration"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ExportClientVpnClientConfigurationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Exports routes from the specified transit gateway route table to the specified S3 bucket. By default, all routes * are exported. Alternatively, you can filter by CIDR range. *

* * @param exportTransitGatewayRoutesRequest * @return Result of the ExportTransitGatewayRoutes operation returned by the service. * @sample AmazonEC2.ExportTransitGatewayRoutes * @see AWS * API Documentation */ @Override public ExportTransitGatewayRoutesResult exportTransitGatewayRoutes(ExportTransitGatewayRoutesRequest request) { request = beforeClientExecution(request); return executeExportTransitGatewayRoutes(request); } @SdkInternalApi final ExportTransitGatewayRoutesResult executeExportTransitGatewayRoutes(ExportTransitGatewayRoutesRequest exportTransitGatewayRoutesRequest) { ExecutionContext executionContext = createExecutionContext(exportTransitGatewayRoutesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ExportTransitGatewayRoutesRequestMarshaller().marshall(super.beforeMarshalling(exportTransitGatewayRoutesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ExportTransitGatewayRoutes"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ExportTransitGatewayRoutesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** * @param getCapacityReservationUsageRequest * @return Result of the GetCapacityReservationUsage operation returned by the service. * @sample AmazonEC2.GetCapacityReservationUsage * @see AWS API Documentation */ @Override public GetCapacityReservationUsageResult getCapacityReservationUsage(GetCapacityReservationUsageRequest request) { request = beforeClientExecution(request); return executeGetCapacityReservationUsage(request); } @SdkInternalApi final GetCapacityReservationUsageResult executeGetCapacityReservationUsage(GetCapacityReservationUsageRequest getCapacityReservationUsageRequest) { ExecutionContext executionContext = createExecutionContext(getCapacityReservationUsageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetCapacityReservationUsageRequestMarshaller().marshall(super.beforeMarshalling(getCapacityReservationUsageRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetCapacityReservationUsage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new GetCapacityReservationUsageResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets the console output for the specified instance. For Linux instances, the instance console output displays the * exact console output that would normally be displayed on a physical monitor attached to a computer. For Windows * instances, the instance console output includes the last three system event log errors. *

*

* By default, the console output returns buffered information that was posted shortly after an instance transition * state (start, stop, reboot, or terminate). This information is available for at least one hour after the most * recent post. Only the most recent 64 KB of console output is available. *

*

* You can optionally retrieve the latest serial console output at any time during the instance lifecycle. This * option is supported on instance types that use the Nitro hypervisor. *

*

* For more information, see Instance Console Output in the Amazon Elastic Compute Cloud User Guide. *

* * @param getConsoleOutputRequest * @return Result of the GetConsoleOutput operation returned by the service. * @sample AmazonEC2.GetConsoleOutput * @see AWS API * Documentation */ @Override public GetConsoleOutputResult getConsoleOutput(GetConsoleOutputRequest request) { request = beforeClientExecution(request); return executeGetConsoleOutput(request); } @SdkInternalApi final GetConsoleOutputResult executeGetConsoleOutput(GetConsoleOutputRequest getConsoleOutputRequest) { ExecutionContext executionContext = createExecutionContext(getConsoleOutputRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetConsoleOutputRequestMarshaller().marshall(super.beforeMarshalling(getConsoleOutputRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetConsoleOutput"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new GetConsoleOutputResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Retrieve a JPG-format screenshot of a running instance to help with troubleshooting. *

*

* The returned content is Base64-encoded. *

* * @param getConsoleScreenshotRequest * @return Result of the GetConsoleScreenshot operation returned by the service. * @sample AmazonEC2.GetConsoleScreenshot * @see AWS API * Documentation */ @Override public GetConsoleScreenshotResult getConsoleScreenshot(GetConsoleScreenshotRequest request) { request = beforeClientExecution(request); return executeGetConsoleScreenshot(request); } @SdkInternalApi final GetConsoleScreenshotResult executeGetConsoleScreenshot(GetConsoleScreenshotRequest getConsoleScreenshotRequest) { ExecutionContext executionContext = createExecutionContext(getConsoleScreenshotRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetConsoleScreenshotRequestMarshaller().marshall(super.beforeMarshalling(getConsoleScreenshotRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetConsoleScreenshot"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new GetConsoleScreenshotResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the default customer master key (CMK) for EBS encryption by default for your account in this Region. * You can change the default CMK for encryption by default using ModifyEbsDefaultKmsKeyId or * ResetEbsDefaultKmsKeyId. *

*

* For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User Guide. *

* * @param getEbsDefaultKmsKeyIdRequest * @return Result of the GetEbsDefaultKmsKeyId operation returned by the service. * @sample AmazonEC2.GetEbsDefaultKmsKeyId * @see AWS API * Documentation */ @Override public GetEbsDefaultKmsKeyIdResult getEbsDefaultKmsKeyId(GetEbsDefaultKmsKeyIdRequest request) { request = beforeClientExecution(request); return executeGetEbsDefaultKmsKeyId(request); } @SdkInternalApi final GetEbsDefaultKmsKeyIdResult executeGetEbsDefaultKmsKeyId(GetEbsDefaultKmsKeyIdRequest getEbsDefaultKmsKeyIdRequest) { ExecutionContext executionContext = createExecutionContext(getEbsDefaultKmsKeyIdRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetEbsDefaultKmsKeyIdRequestMarshaller().marshall(super.beforeMarshalling(getEbsDefaultKmsKeyIdRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetEbsDefaultKmsKeyId"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new GetEbsDefaultKmsKeyIdResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes whether EBS encryption by default is enabled for your account in the current Region. *

*

* For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User Guide. *

* * @param getEbsEncryptionByDefaultRequest * @return Result of the GetEbsEncryptionByDefault operation returned by the service. * @sample AmazonEC2.GetEbsEncryptionByDefault * @see AWS * API Documentation */ @Override public GetEbsEncryptionByDefaultResult getEbsEncryptionByDefault(GetEbsEncryptionByDefaultRequest request) { request = beforeClientExecution(request); return executeGetEbsEncryptionByDefault(request); } @SdkInternalApi final GetEbsEncryptionByDefaultResult executeGetEbsEncryptionByDefault(GetEbsEncryptionByDefaultRequest getEbsEncryptionByDefaultRequest) { ExecutionContext executionContext = createExecutionContext(getEbsEncryptionByDefaultRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetEbsEncryptionByDefaultRequestMarshaller().marshall(super.beforeMarshalling(getEbsEncryptionByDefaultRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetEbsEncryptionByDefault"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new GetEbsEncryptionByDefaultResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Preview a reservation purchase with configurations that match those of your Dedicated Host. You must have active * Dedicated Hosts in your account before you purchase a reservation. *

*

* This is a preview of the PurchaseHostReservation action and does not result in the offering being * purchased. *

* * @param getHostReservationPurchasePreviewRequest * @return Result of the GetHostReservationPurchasePreview operation returned by the service. * @sample AmazonEC2.GetHostReservationPurchasePreview * @see AWS API Documentation */ @Override public GetHostReservationPurchasePreviewResult getHostReservationPurchasePreview(GetHostReservationPurchasePreviewRequest request) { request = beforeClientExecution(request); return executeGetHostReservationPurchasePreview(request); } @SdkInternalApi final GetHostReservationPurchasePreviewResult executeGetHostReservationPurchasePreview( GetHostReservationPurchasePreviewRequest getHostReservationPurchasePreviewRequest) { ExecutionContext executionContext = createExecutionContext(getHostReservationPurchasePreviewRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetHostReservationPurchasePreviewRequestMarshaller().marshall(super.beforeMarshalling(getHostReservationPurchasePreviewRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetHostReservationPurchasePreview"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new GetHostReservationPurchasePreviewResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Retrieves the configuration data of the specified instance. You can use this data to create a launch template. *

* * @param getLaunchTemplateDataRequest * @return Result of the GetLaunchTemplateData operation returned by the service. * @sample AmazonEC2.GetLaunchTemplateData * @see AWS API * Documentation */ @Override public GetLaunchTemplateDataResult getLaunchTemplateData(GetLaunchTemplateDataRequest request) { request = beforeClientExecution(request); return executeGetLaunchTemplateData(request); } @SdkInternalApi final GetLaunchTemplateDataResult executeGetLaunchTemplateData(GetLaunchTemplateDataRequest getLaunchTemplateDataRequest) { ExecutionContext executionContext = createExecutionContext(getLaunchTemplateDataRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetLaunchTemplateDataRequestMarshaller().marshall(super.beforeMarshalling(getLaunchTemplateDataRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetLaunchTemplateData"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new GetLaunchTemplateDataResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Retrieves the encrypted administrator password for a running Windows instance. *

*

* The Windows password is generated at boot by the EC2Config service or EC2Launch scripts * (Windows Server 2016 and later). This usually only happens the first time an instance is launched. For more * information, see EC2Config and EC2Launch in the Amazon Elastic * Compute Cloud User Guide. *

*

* For the EC2Config service, the password is not generated for rebundled AMIs unless * Ec2SetPassword is enabled before bundling. *

*

* The password is encrypted using the key pair that you specified when you launched the instance. You must provide * the corresponding key pair file. *

*

* When you launch an instance, password generation and encryption may take a few minutes. If you try to retrieve * the password before it's available, the output returns an empty string. We recommend that you wait up to 15 * minutes after launching an instance before trying to retrieve the generated password. *

* * @param getPasswordDataRequest * @return Result of the GetPasswordData operation returned by the service. * @sample AmazonEC2.GetPasswordData * @see AWS API * Documentation */ @Override public GetPasswordDataResult getPasswordData(GetPasswordDataRequest request) { request = beforeClientExecution(request); return executeGetPasswordData(request); } @SdkInternalApi final GetPasswordDataResult executeGetPasswordData(GetPasswordDataRequest getPasswordDataRequest) { ExecutionContext executionContext = createExecutionContext(getPasswordDataRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetPasswordDataRequestMarshaller().marshall(super.beforeMarshalling(getPasswordDataRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetPasswordData"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new GetPasswordDataResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns a quote and exchange information for exchanging one or more specified Convertible Reserved Instances for * a new Convertible Reserved Instance. If the exchange cannot be performed, the reason is returned in the response. * Use AcceptReservedInstancesExchangeQuote to perform the exchange. *

* * @param getReservedInstancesExchangeQuoteRequest * Contains the parameters for GetReservedInstanceExchangeQuote. * @return Result of the GetReservedInstancesExchangeQuote operation returned by the service. * @sample AmazonEC2.GetReservedInstancesExchangeQuote * @see AWS API Documentation */ @Override public GetReservedInstancesExchangeQuoteResult getReservedInstancesExchangeQuote(GetReservedInstancesExchangeQuoteRequest request) { request = beforeClientExecution(request); return executeGetReservedInstancesExchangeQuote(request); } @SdkInternalApi final GetReservedInstancesExchangeQuoteResult executeGetReservedInstancesExchangeQuote( GetReservedInstancesExchangeQuoteRequest getReservedInstancesExchangeQuoteRequest) { ExecutionContext executionContext = createExecutionContext(getReservedInstancesExchangeQuoteRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetReservedInstancesExchangeQuoteRequestMarshaller().marshall(super.beforeMarshalling(getReservedInstancesExchangeQuoteRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetReservedInstancesExchangeQuote"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new GetReservedInstancesExchangeQuoteResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the route tables to which the specified resource attachment propagates routes. *

* * @param getTransitGatewayAttachmentPropagationsRequest * @return Result of the GetTransitGatewayAttachmentPropagations operation returned by the service. * @sample AmazonEC2.GetTransitGatewayAttachmentPropagations * @see AWS API Documentation */ @Override public GetTransitGatewayAttachmentPropagationsResult getTransitGatewayAttachmentPropagations(GetTransitGatewayAttachmentPropagationsRequest request) { request = beforeClientExecution(request); return executeGetTransitGatewayAttachmentPropagations(request); } @SdkInternalApi final GetTransitGatewayAttachmentPropagationsResult executeGetTransitGatewayAttachmentPropagations( GetTransitGatewayAttachmentPropagationsRequest getTransitGatewayAttachmentPropagationsRequest) { ExecutionContext executionContext = createExecutionContext(getTransitGatewayAttachmentPropagationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetTransitGatewayAttachmentPropagationsRequestMarshaller().marshall(super .beforeMarshalling(getTransitGatewayAttachmentPropagationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetTransitGatewayAttachmentPropagations"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new GetTransitGatewayAttachmentPropagationsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the associations for the specified transit gateway route table. *

* * @param getTransitGatewayRouteTableAssociationsRequest * @return Result of the GetTransitGatewayRouteTableAssociations operation returned by the service. * @sample AmazonEC2.GetTransitGatewayRouteTableAssociations * @see AWS API Documentation */ @Override public GetTransitGatewayRouteTableAssociationsResult getTransitGatewayRouteTableAssociations(GetTransitGatewayRouteTableAssociationsRequest request) { request = beforeClientExecution(request); return executeGetTransitGatewayRouteTableAssociations(request); } @SdkInternalApi final GetTransitGatewayRouteTableAssociationsResult executeGetTransitGatewayRouteTableAssociations( GetTransitGatewayRouteTableAssociationsRequest getTransitGatewayRouteTableAssociationsRequest) { ExecutionContext executionContext = createExecutionContext(getTransitGatewayRouteTableAssociationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetTransitGatewayRouteTableAssociationsRequestMarshaller().marshall(super .beforeMarshalling(getTransitGatewayRouteTableAssociationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetTransitGatewayRouteTableAssociations"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new GetTransitGatewayRouteTableAssociationsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the route table propagations for the specified transit gateway route table. *

* * @param getTransitGatewayRouteTablePropagationsRequest * @return Result of the GetTransitGatewayRouteTablePropagations operation returned by the service. * @sample AmazonEC2.GetTransitGatewayRouteTablePropagations * @see AWS API Documentation */ @Override public GetTransitGatewayRouteTablePropagationsResult getTransitGatewayRouteTablePropagations(GetTransitGatewayRouteTablePropagationsRequest request) { request = beforeClientExecution(request); return executeGetTransitGatewayRouteTablePropagations(request); } @SdkInternalApi final GetTransitGatewayRouteTablePropagationsResult executeGetTransitGatewayRouteTablePropagations( GetTransitGatewayRouteTablePropagationsRequest getTransitGatewayRouteTablePropagationsRequest) { ExecutionContext executionContext = createExecutionContext(getTransitGatewayRouteTablePropagationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetTransitGatewayRouteTablePropagationsRequestMarshaller().marshall(super .beforeMarshalling(getTransitGatewayRouteTablePropagationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetTransitGatewayRouteTablePropagations"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new GetTransitGatewayRouteTablePropagationsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Uploads a client certificate revocation list to the specified Client VPN endpoint. Uploading a client certificate * revocation list overwrites the existing client certificate revocation list. *

*

* Uploading a client certificate revocation list resets existing client connections. *

* * @param importClientVpnClientCertificateRevocationListRequest * @return Result of the ImportClientVpnClientCertificateRevocationList operation returned by the service. * @sample AmazonEC2.ImportClientVpnClientCertificateRevocationList * @see AWS API Documentation */ @Override public ImportClientVpnClientCertificateRevocationListResult importClientVpnClientCertificateRevocationList( ImportClientVpnClientCertificateRevocationListRequest request) { request = beforeClientExecution(request); return executeImportClientVpnClientCertificateRevocationList(request); } @SdkInternalApi final ImportClientVpnClientCertificateRevocationListResult executeImportClientVpnClientCertificateRevocationList( ImportClientVpnClientCertificateRevocationListRequest importClientVpnClientCertificateRevocationListRequest) { ExecutionContext executionContext = createExecutionContext(importClientVpnClientCertificateRevocationListRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ImportClientVpnClientCertificateRevocationListRequestMarshaller().marshall(super .beforeMarshalling(importClientVpnClientCertificateRevocationListRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ImportClientVpnClientCertificateRevocationList"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ImportClientVpnClientCertificateRevocationListResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Import single or multi-volume disk images or EBS snapshots into an Amazon Machine Image (AMI). For more * information, see Importing a VM as an * Image Using VM Import/Export in the VM Import/Export User Guide. *

* * @param importImageRequest * @return Result of the ImportImage operation returned by the service. * @sample AmazonEC2.ImportImage * @see AWS API * Documentation */ @Override public ImportImageResult importImage(ImportImageRequest request) { request = beforeClientExecution(request); return executeImportImage(request); } @SdkInternalApi final ImportImageResult executeImportImage(ImportImageRequest importImageRequest) { ExecutionContext executionContext = createExecutionContext(importImageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ImportImageRequestMarshaller().marshall(super.beforeMarshalling(importImageRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ImportImage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new ImportImageResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public ImportImageResult importImage() { return importImage(new ImportImageRequest()); } /** *

* Creates an import instance task using metadata from the specified disk image. ImportInstance only * supports single-volume VMs. To import multi-volume VMs, use ImportImage. For more information, see Importing a * Virtual Machine Using the Amazon EC2 CLI. *

*

* For information about the import manifest referenced by this API action, see VM Import Manifest. *

* * @param importInstanceRequest * @return Result of the ImportInstance operation returned by the service. * @sample AmazonEC2.ImportInstance * @see AWS API * Documentation */ @Override public ImportInstanceResult importInstance(ImportInstanceRequest request) { request = beforeClientExecution(request); return executeImportInstance(request); } @SdkInternalApi final ImportInstanceResult executeImportInstance(ImportInstanceRequest importInstanceRequest) { ExecutionContext executionContext = createExecutionContext(importInstanceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ImportInstanceRequestMarshaller().marshall(super.beforeMarshalling(importInstanceRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ImportInstance"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ImportInstanceResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Imports the public key from an RSA key pair that you created with a third-party tool. Compare this with * CreateKeyPair, in which AWS creates the key pair and gives the keys to you (AWS keeps a copy of the public * key). With ImportKeyPair, you create the key pair and give AWS just the public key. The private key is never * transferred between you and AWS. *

*

* For more information about key pairs, see Key Pairs in the Amazon * Elastic Compute Cloud User Guide. *

* * @param importKeyPairRequest * @return Result of the ImportKeyPair operation returned by the service. * @sample AmazonEC2.ImportKeyPair * @see AWS API * Documentation */ @Override public ImportKeyPairResult importKeyPair(ImportKeyPairRequest request) { request = beforeClientExecution(request); return executeImportKeyPair(request); } @SdkInternalApi final ImportKeyPairResult executeImportKeyPair(ImportKeyPairRequest importKeyPairRequest) { ExecutionContext executionContext = createExecutionContext(importKeyPairRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ImportKeyPairRequestMarshaller().marshall(super.beforeMarshalling(importKeyPairRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ImportKeyPair"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new ImportKeyPairResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Imports a disk into an EBS snapshot. *

* * @param importSnapshotRequest * @return Result of the ImportSnapshot operation returned by the service. * @sample AmazonEC2.ImportSnapshot * @see AWS API * Documentation */ @Override public ImportSnapshotResult importSnapshot(ImportSnapshotRequest request) { request = beforeClientExecution(request); return executeImportSnapshot(request); } @SdkInternalApi final ImportSnapshotResult executeImportSnapshot(ImportSnapshotRequest importSnapshotRequest) { ExecutionContext executionContext = createExecutionContext(importSnapshotRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ImportSnapshotRequestMarshaller().marshall(super.beforeMarshalling(importSnapshotRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ImportSnapshot"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ImportSnapshotResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public ImportSnapshotResult importSnapshot() { return importSnapshot(new ImportSnapshotRequest()); } /** *

* Creates an import volume task using metadata from the specified disk image.For more information, see Importing Disks to Amazon EBS. *

*

* For information about the import manifest referenced by this API action, see VM Import Manifest. *

* * @param importVolumeRequest * @return Result of the ImportVolume operation returned by the service. * @sample AmazonEC2.ImportVolume * @see AWS API * Documentation */ @Override public ImportVolumeResult importVolume(ImportVolumeRequest request) { request = beforeClientExecution(request); return executeImportVolume(request); } @SdkInternalApi final ImportVolumeResult executeImportVolume(ImportVolumeRequest importVolumeRequest) { ExecutionContext executionContext = createExecutionContext(importVolumeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ImportVolumeRequestMarshaller().marshall(super.beforeMarshalling(importVolumeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ImportVolume"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new ImportVolumeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies a Capacity Reservation's capacity and the conditions under which it is to be released. You cannot change * a Capacity Reservation's instance type, EBS optimization, instance store settings, platform, Availability Zone, * or instance eligibility. If you need to modify any of these attributes, we recommend that you cancel the Capacity * Reservation, and then create a new one with the required attributes. *

* * @param modifyCapacityReservationRequest * @return Result of the ModifyCapacityReservation operation returned by the service. * @sample AmazonEC2.ModifyCapacityReservation * @see AWS * API Documentation */ @Override public ModifyCapacityReservationResult modifyCapacityReservation(ModifyCapacityReservationRequest request) { request = beforeClientExecution(request); return executeModifyCapacityReservation(request); } @SdkInternalApi final ModifyCapacityReservationResult executeModifyCapacityReservation(ModifyCapacityReservationRequest modifyCapacityReservationRequest) { ExecutionContext executionContext = createExecutionContext(modifyCapacityReservationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyCapacityReservationRequestMarshaller().marshall(super.beforeMarshalling(modifyCapacityReservationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyCapacityReservation"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyCapacityReservationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the specified Client VPN endpoint. You can only modify an endpoint's server certificate information, * client connection logging information, DNS server, and description. Modifying the DNS server resets existing * client connections. *

* * @param modifyClientVpnEndpointRequest * @return Result of the ModifyClientVpnEndpoint operation returned by the service. * @sample AmazonEC2.ModifyClientVpnEndpoint * @see AWS * API Documentation */ @Override public ModifyClientVpnEndpointResult modifyClientVpnEndpoint(ModifyClientVpnEndpointRequest request) { request = beforeClientExecution(request); return executeModifyClientVpnEndpoint(request); } @SdkInternalApi final ModifyClientVpnEndpointResult executeModifyClientVpnEndpoint(ModifyClientVpnEndpointRequest modifyClientVpnEndpointRequest) { ExecutionContext executionContext = createExecutionContext(modifyClientVpnEndpointRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyClientVpnEndpointRequestMarshaller().marshall(super.beforeMarshalling(modifyClientVpnEndpointRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyClientVpnEndpoint"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyClientVpnEndpointResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Changes the default customer master key (CMK) for EBS encryption by default for your account in this Region. *

*

* AWS creates a unique AWS managed CMK in each Region for use with encryption by default. If you change the default * CMK to a customer managed CMK, it is used instead of the AWS managed CMK. To reset the default CMK to the AWS * managed CMK for EBS, use ResetEbsDefaultKmsKeyId. *

*

* If you delete or disable the customer managed CMK that you specified for use with encryption by default, your * instances will fail to launch. *

*

* For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User Guide. *

* * @param modifyEbsDefaultKmsKeyIdRequest * @return Result of the ModifyEbsDefaultKmsKeyId operation returned by the service. * @sample AmazonEC2.ModifyEbsDefaultKmsKeyId * @see AWS * API Documentation */ @Override public ModifyEbsDefaultKmsKeyIdResult modifyEbsDefaultKmsKeyId(ModifyEbsDefaultKmsKeyIdRequest request) { request = beforeClientExecution(request); return executeModifyEbsDefaultKmsKeyId(request); } @SdkInternalApi final ModifyEbsDefaultKmsKeyIdResult executeModifyEbsDefaultKmsKeyId(ModifyEbsDefaultKmsKeyIdRequest modifyEbsDefaultKmsKeyIdRequest) { ExecutionContext executionContext = createExecutionContext(modifyEbsDefaultKmsKeyIdRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyEbsDefaultKmsKeyIdRequestMarshaller().marshall(super.beforeMarshalling(modifyEbsDefaultKmsKeyIdRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyEbsDefaultKmsKeyId"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyEbsDefaultKmsKeyIdResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the specified EC2 Fleet. *

*

* While the EC2 Fleet is being modified, it is in the modifying state. *

* * @param modifyFleetRequest * @return Result of the ModifyFleet operation returned by the service. * @sample AmazonEC2.ModifyFleet * @see AWS API * Documentation */ @Override public ModifyFleetResult modifyFleet(ModifyFleetRequest request) { request = beforeClientExecution(request); return executeModifyFleet(request); } @SdkInternalApi final ModifyFleetResult executeModifyFleet(ModifyFleetRequest modifyFleetRequest) { ExecutionContext executionContext = createExecutionContext(modifyFleetRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyFleetRequestMarshaller().marshall(super.beforeMarshalling(modifyFleetRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyFleet"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new ModifyFleetResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the specified attribute of the specified Amazon FPGA Image (AFI). *

* * @param modifyFpgaImageAttributeRequest * @return Result of the ModifyFpgaImageAttribute operation returned by the service. * @sample AmazonEC2.ModifyFpgaImageAttribute * @see AWS * API Documentation */ @Override public ModifyFpgaImageAttributeResult modifyFpgaImageAttribute(ModifyFpgaImageAttributeRequest request) { request = beforeClientExecution(request); return executeModifyFpgaImageAttribute(request); } @SdkInternalApi final ModifyFpgaImageAttributeResult executeModifyFpgaImageAttribute(ModifyFpgaImageAttributeRequest modifyFpgaImageAttributeRequest) { ExecutionContext executionContext = createExecutionContext(modifyFpgaImageAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyFpgaImageAttributeRequestMarshaller().marshall(super.beforeMarshalling(modifyFpgaImageAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyFpgaImageAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyFpgaImageAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modify the auto-placement setting of a Dedicated Host. When auto-placement is enabled, any instances that you * launch with a tenancy of host but without a specific host ID are placed onto any available Dedicated * Host in your account that has auto-placement enabled. When auto-placement is disabled, you need to provide a host * ID to have the instance launch onto a specific host. If no host ID is provided, the instance is launched onto a * suitable host with auto-placement enabled. *

* * @param modifyHostsRequest * @return Result of the ModifyHosts operation returned by the service. * @sample AmazonEC2.ModifyHosts * @see AWS API * Documentation */ @Override public ModifyHostsResult modifyHosts(ModifyHostsRequest request) { request = beforeClientExecution(request); return executeModifyHosts(request); } @SdkInternalApi final ModifyHostsResult executeModifyHosts(ModifyHostsRequest modifyHostsRequest) { ExecutionContext executionContext = createExecutionContext(modifyHostsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyHostsRequestMarshaller().marshall(super.beforeMarshalling(modifyHostsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyHosts"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new ModifyHostsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the ID format for the specified resource on a per-Region basis. You can specify that resources should * receive longer IDs (17-character IDs) when they are created. *

*

* This request can only be used to modify longer ID settings for resource types that are within the opt-in period. * Resources currently in their opt-in period include: bundle | conversion-task | * customer-gateway | dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | flow-log | image | * import-task | internet-gateway | network-acl | * network-acl-association | network-interface | network-interface-attachment * | prefix-list | route-table | route-table-association | * security-group | subnet | subnet-cidr-block-association | vpc * | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway. *

*

* This setting applies to the IAM user who makes the request; it does not apply to the entire AWS account. By * default, an IAM user defaults to the same settings as the root user. If you're using this action as the root * user, then these settings apply to the entire account, unless an IAM user explicitly overrides these settings for * themselves. For more information, see Resource IDs in the Amazon * Elastic Compute Cloud User Guide. *

*

* Resources created with longer IDs are visible to all IAM roles and users, regardless of these settings and * provided that they have permission to use the relevant Describe command for the resource type. *

* * @param modifyIdFormatRequest * @return Result of the ModifyIdFormat operation returned by the service. * @sample AmazonEC2.ModifyIdFormat * @see AWS API * Documentation */ @Override public ModifyIdFormatResult modifyIdFormat(ModifyIdFormatRequest request) { request = beforeClientExecution(request); return executeModifyIdFormat(request); } @SdkInternalApi final ModifyIdFormatResult executeModifyIdFormat(ModifyIdFormatRequest modifyIdFormatRequest) { ExecutionContext executionContext = createExecutionContext(modifyIdFormatRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyIdFormatRequestMarshaller().marshall(super.beforeMarshalling(modifyIdFormatRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyIdFormat"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyIdFormatResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the ID format of a resource for a specified IAM user, IAM role, or the root user for an account; or all * IAM users, IAM roles, and the root user for an account. You can specify that resources should receive longer IDs * (17-character IDs) when they are created. *

*

* This request can only be used to modify longer ID settings for resource types that are within the opt-in period. * Resources currently in their opt-in period include: bundle | conversion-task | * customer-gateway | dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | flow-log | image | * import-task | internet-gateway | network-acl | * network-acl-association | network-interface | network-interface-attachment * | prefix-list | route-table | route-table-association | * security-group | subnet | subnet-cidr-block-association | vpc * | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway. *

*

* For more information, see Resource IDs in the Amazon * Elastic Compute Cloud User Guide. *

*

* This setting applies to the principal specified in the request; it does not apply to the principal that makes the * request. *

*

* Resources created with longer IDs are visible to all IAM roles and users, regardless of these settings and * provided that they have permission to use the relevant Describe command for the resource type. *

* * @param modifyIdentityIdFormatRequest * @return Result of the ModifyIdentityIdFormat operation returned by the service. * @sample AmazonEC2.ModifyIdentityIdFormat * @see AWS API * Documentation */ @Override public ModifyIdentityIdFormatResult modifyIdentityIdFormat(ModifyIdentityIdFormatRequest request) { request = beforeClientExecution(request); return executeModifyIdentityIdFormat(request); } @SdkInternalApi final ModifyIdentityIdFormatResult executeModifyIdentityIdFormat(ModifyIdentityIdFormatRequest modifyIdentityIdFormatRequest) { ExecutionContext executionContext = createExecutionContext(modifyIdentityIdFormatRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyIdentityIdFormatRequestMarshaller().marshall(super.beforeMarshalling(modifyIdentityIdFormatRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyIdentityIdFormat"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyIdentityIdFormatResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the specified attribute of the specified AMI. You can specify only one attribute at a time. You can use * the Attribute parameter to specify the attribute or one of the following parameters: * Description, LaunchPermission, or ProductCode. *

*

* AWS Marketplace product codes cannot be modified. Images with an AWS Marketplace product code cannot be made * public. *

*

* To enable the SriovNetSupport enhanced networking attribute of an image, enable SriovNetSupport on an instance * and create an AMI from the instance. *

* * @param modifyImageAttributeRequest * Contains the parameters for ModifyImageAttribute. * @return Result of the ModifyImageAttribute operation returned by the service. * @sample AmazonEC2.ModifyImageAttribute * @see AWS API * Documentation */ @Override public ModifyImageAttributeResult modifyImageAttribute(ModifyImageAttributeRequest request) { request = beforeClientExecution(request); return executeModifyImageAttribute(request); } @SdkInternalApi final ModifyImageAttributeResult executeModifyImageAttribute(ModifyImageAttributeRequest modifyImageAttributeRequest) { ExecutionContext executionContext = createExecutionContext(modifyImageAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyImageAttributeRequestMarshaller().marshall(super.beforeMarshalling(modifyImageAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyImageAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyImageAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the specified attribute of the specified instance. You can specify only one attribute at a time. *

*

* Note: Using this action to change the security groups associated with an elastic network interface (ENI) * attached to an instance in a VPC can result in an error if the instance has more than one ENI. To change the * security groups associated with an ENI attached to an instance that has multiple ENIs, we recommend that you use * the ModifyNetworkInterfaceAttribute action. *

*

* To modify some attributes, the instance must be stopped. For more information, see Modifying Attributes of a Stopped Instance in the Amazon Elastic Compute Cloud User Guide. *

* * @param modifyInstanceAttributeRequest * @return Result of the ModifyInstanceAttribute operation returned by the service. * @sample AmazonEC2.ModifyInstanceAttribute * @see AWS * API Documentation */ @Override public ModifyInstanceAttributeResult modifyInstanceAttribute(ModifyInstanceAttributeRequest request) { request = beforeClientExecution(request); return executeModifyInstanceAttribute(request); } @SdkInternalApi final ModifyInstanceAttributeResult executeModifyInstanceAttribute(ModifyInstanceAttributeRequest modifyInstanceAttributeRequest) { ExecutionContext executionContext = createExecutionContext(modifyInstanceAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyInstanceAttributeRequestMarshaller().marshall(super.beforeMarshalling(modifyInstanceAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyInstanceAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyInstanceAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the Capacity Reservation settings for a stopped instance. Use this action to configure an instance to * target a specific Capacity Reservation, run in any open Capacity Reservation with matching * attributes, or run On-Demand Instance capacity. *

* * @param modifyInstanceCapacityReservationAttributesRequest * @return Result of the ModifyInstanceCapacityReservationAttributes operation returned by the service. * @sample AmazonEC2.ModifyInstanceCapacityReservationAttributes * @see AWS API Documentation */ @Override public ModifyInstanceCapacityReservationAttributesResult modifyInstanceCapacityReservationAttributes( ModifyInstanceCapacityReservationAttributesRequest request) { request = beforeClientExecution(request); return executeModifyInstanceCapacityReservationAttributes(request); } @SdkInternalApi final ModifyInstanceCapacityReservationAttributesResult executeModifyInstanceCapacityReservationAttributes( ModifyInstanceCapacityReservationAttributesRequest modifyInstanceCapacityReservationAttributesRequest) { ExecutionContext executionContext = createExecutionContext(modifyInstanceCapacityReservationAttributesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyInstanceCapacityReservationAttributesRequestMarshaller().marshall(super .beforeMarshalling(modifyInstanceCapacityReservationAttributesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyInstanceCapacityReservationAttributes"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyInstanceCapacityReservationAttributesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the credit option for CPU usage on a running or stopped T2 or T3 instance. The credit options are * standard and unlimited. *

*

* For more information, see Burstable * Performance Instances in the Amazon Elastic Compute Cloud User Guide. *

* * @param modifyInstanceCreditSpecificationRequest * @return Result of the ModifyInstanceCreditSpecification operation returned by the service. * @sample AmazonEC2.ModifyInstanceCreditSpecification * @see AWS API Documentation */ @Override public ModifyInstanceCreditSpecificationResult modifyInstanceCreditSpecification(ModifyInstanceCreditSpecificationRequest request) { request = beforeClientExecution(request); return executeModifyInstanceCreditSpecification(request); } @SdkInternalApi final ModifyInstanceCreditSpecificationResult executeModifyInstanceCreditSpecification( ModifyInstanceCreditSpecificationRequest modifyInstanceCreditSpecificationRequest) { ExecutionContext executionContext = createExecutionContext(modifyInstanceCreditSpecificationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyInstanceCreditSpecificationRequestMarshaller().marshall(super.beforeMarshalling(modifyInstanceCreditSpecificationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyInstanceCreditSpecification"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyInstanceCreditSpecificationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the start time for a scheduled Amazon EC2 instance event. *

* * @param modifyInstanceEventStartTimeRequest * @return Result of the ModifyInstanceEventStartTime operation returned by the service. * @sample AmazonEC2.ModifyInstanceEventStartTime * @see AWS API Documentation */ @Override public ModifyInstanceEventStartTimeResult modifyInstanceEventStartTime(ModifyInstanceEventStartTimeRequest request) { request = beforeClientExecution(request); return executeModifyInstanceEventStartTime(request); } @SdkInternalApi final ModifyInstanceEventStartTimeResult executeModifyInstanceEventStartTime(ModifyInstanceEventStartTimeRequest modifyInstanceEventStartTimeRequest) { ExecutionContext executionContext = createExecutionContext(modifyInstanceEventStartTimeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyInstanceEventStartTimeRequestMarshaller().marshall(super.beforeMarshalling(modifyInstanceEventStartTimeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyInstanceEventStartTime"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyInstanceEventStartTimeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the placement attributes for a specified instance. You can do the following: *

*
    *
  • *

    * Modify the affinity between an instance and a Dedicated Host. When * affinity is set to host and the instance is not associated with a specific Dedicated Host, the next * time the instance is launched, it is automatically associated with the host on which it lands. If the instance is * restarted or rebooted, this relationship persists. *

    *
  • *
  • *

    * Change the Dedicated Host with which an instance is associated. *

    *
  • *
  • *

    * Change the instance tenancy of an instance from host to dedicated, or from * dedicated to host. *

    *
  • *
  • *

    * Move an instance to or from a placement group. *

    *
  • *
*

* At least one attribute for affinity, host ID, tenancy, or placement group name must be specified in the request. * Affinity and tenancy can be modified in the same request. *

*

* To modify the host ID, tenancy, placement group, or partition for an instance, the instance must be in the * stopped state. *

* * @param modifyInstancePlacementRequest * @return Result of the ModifyInstancePlacement operation returned by the service. * @sample AmazonEC2.ModifyInstancePlacement * @see AWS * API Documentation */ @Override public ModifyInstancePlacementResult modifyInstancePlacement(ModifyInstancePlacementRequest request) { request = beforeClientExecution(request); return executeModifyInstancePlacement(request); } @SdkInternalApi final ModifyInstancePlacementResult executeModifyInstancePlacement(ModifyInstancePlacementRequest modifyInstancePlacementRequest) { ExecutionContext executionContext = createExecutionContext(modifyInstancePlacementRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyInstancePlacementRequestMarshaller().marshall(super.beforeMarshalling(modifyInstancePlacementRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyInstancePlacement"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyInstancePlacementResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies a launch template. You can specify which version of the launch template to set as the default version. * When launching an instance, the default version applies when a launch template version is not specified. *

* * @param modifyLaunchTemplateRequest * @return Result of the ModifyLaunchTemplate operation returned by the service. * @sample AmazonEC2.ModifyLaunchTemplate * @see AWS API * Documentation */ @Override public ModifyLaunchTemplateResult modifyLaunchTemplate(ModifyLaunchTemplateRequest request) { request = beforeClientExecution(request); return executeModifyLaunchTemplate(request); } @SdkInternalApi final ModifyLaunchTemplateResult executeModifyLaunchTemplate(ModifyLaunchTemplateRequest modifyLaunchTemplateRequest) { ExecutionContext executionContext = createExecutionContext(modifyLaunchTemplateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyLaunchTemplateRequestMarshaller().marshall(super.beforeMarshalling(modifyLaunchTemplateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyLaunchTemplate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyLaunchTemplateResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the specified network interface attribute. You can specify only one attribute at a time. You can use * this action to attach and detach security groups from an existing EC2 instance. *

* * @param modifyNetworkInterfaceAttributeRequest * Contains the parameters for ModifyNetworkInterfaceAttribute. * @return Result of the ModifyNetworkInterfaceAttribute operation returned by the service. * @sample AmazonEC2.ModifyNetworkInterfaceAttribute * @see AWS API Documentation */ @Override public ModifyNetworkInterfaceAttributeResult modifyNetworkInterfaceAttribute(ModifyNetworkInterfaceAttributeRequest request) { request = beforeClientExecution(request); return executeModifyNetworkInterfaceAttribute(request); } @SdkInternalApi final ModifyNetworkInterfaceAttributeResult executeModifyNetworkInterfaceAttribute( ModifyNetworkInterfaceAttributeRequest modifyNetworkInterfaceAttributeRequest) { ExecutionContext executionContext = createExecutionContext(modifyNetworkInterfaceAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyNetworkInterfaceAttributeRequestMarshaller().marshall(super.beforeMarshalling(modifyNetworkInterfaceAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyNetworkInterfaceAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyNetworkInterfaceAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the Availability Zone, instance count, instance type, or network platform (EC2-Classic or EC2-VPC) of * your Reserved Instances. The Reserved Instances to be modified must be identical, except for Availability Zone, * network platform, and instance type. *

*

* For more information, see Modifying Reserved Instances in * the Amazon Elastic Compute Cloud User Guide. *

* * @param modifyReservedInstancesRequest * Contains the parameters for ModifyReservedInstances. * @return Result of the ModifyReservedInstances operation returned by the service. * @sample AmazonEC2.ModifyReservedInstances * @see AWS * API Documentation */ @Override public ModifyReservedInstancesResult modifyReservedInstances(ModifyReservedInstancesRequest request) { request = beforeClientExecution(request); return executeModifyReservedInstances(request); } @SdkInternalApi final ModifyReservedInstancesResult executeModifyReservedInstances(ModifyReservedInstancesRequest modifyReservedInstancesRequest) { ExecutionContext executionContext = createExecutionContext(modifyReservedInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyReservedInstancesRequestMarshaller().marshall(super.beforeMarshalling(modifyReservedInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyReservedInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyReservedInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Adds or removes permission settings for the specified snapshot. You may add or remove specified AWS account IDs * from a snapshot's list of create volume permissions, but you cannot do both in a single operation. If you need to * both add and remove account IDs for a snapshot, you must use multiple operations. *

*

* Encrypted snapshots and snapshots with AWS Marketplace product codes cannot be made public. Snapshots encrypted * with your default CMK cannot be shared with other accounts. *

*

* For more information about modifying snapshot permissions, see Sharing * Snapshots in the Amazon Elastic Compute Cloud User Guide. *

* * @param modifySnapshotAttributeRequest * Contains the parameters for ModifySnapshotAttribute. * @return Result of the ModifySnapshotAttribute operation returned by the service. * @sample AmazonEC2.ModifySnapshotAttribute * @see AWS * API Documentation */ @Override public ModifySnapshotAttributeResult modifySnapshotAttribute(ModifySnapshotAttributeRequest request) { request = beforeClientExecution(request); return executeModifySnapshotAttribute(request); } @SdkInternalApi final ModifySnapshotAttributeResult executeModifySnapshotAttribute(ModifySnapshotAttributeRequest modifySnapshotAttributeRequest) { ExecutionContext executionContext = createExecutionContext(modifySnapshotAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifySnapshotAttributeRequestMarshaller().marshall(super.beforeMarshalling(modifySnapshotAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifySnapshotAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifySnapshotAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the specified Spot Fleet request. *

*

* You can only modify a Spot Fleet request of type maintain. *

*

* While the Spot Fleet request is being modified, it is in the modifying state. *

*

* To scale up your Spot Fleet, increase its target capacity. The Spot Fleet launches the additional Spot Instances * according to the allocation strategy for the Spot Fleet request. If the allocation strategy is * lowestPrice, the Spot Fleet launches instances using the Spot pool with the lowest price. If the * allocation strategy is diversified, the Spot Fleet distributes the instances across the Spot pools. *

*

* To scale down your Spot Fleet, decrease its target capacity. First, the Spot Fleet cancels any open requests that * exceed the new target capacity. You can request that the Spot Fleet terminate Spot Instances until the size of * the fleet no longer exceeds the new target capacity. If the allocation strategy is lowestPrice, the * Spot Fleet terminates the instances with the highest price per unit. If the allocation strategy is * diversified, the Spot Fleet terminates instances across the Spot pools. Alternatively, you can * request that the Spot Fleet keep the fleet at its current size, but not replace any Spot Instances that are * interrupted or that you terminate manually. *

*

* If you are finished with your Spot Fleet for now, but will use it again later, you can set the target capacity to * 0. *

* * @param modifySpotFleetRequestRequest * Contains the parameters for ModifySpotFleetRequest. * @return Result of the ModifySpotFleetRequest operation returned by the service. * @sample AmazonEC2.ModifySpotFleetRequest * @see AWS API * Documentation */ @Override public ModifySpotFleetRequestResult modifySpotFleetRequest(ModifySpotFleetRequestRequest request) { request = beforeClientExecution(request); return executeModifySpotFleetRequest(request); } @SdkInternalApi final ModifySpotFleetRequestResult executeModifySpotFleetRequest(ModifySpotFleetRequestRequest modifySpotFleetRequestRequest) { ExecutionContext executionContext = createExecutionContext(modifySpotFleetRequestRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifySpotFleetRequestRequestMarshaller().marshall(super.beforeMarshalling(modifySpotFleetRequestRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifySpotFleetRequest"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifySpotFleetRequestResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies a subnet attribute. You can only modify one attribute at a time. *

* * @param modifySubnetAttributeRequest * @return Result of the ModifySubnetAttribute operation returned by the service. * @sample AmazonEC2.ModifySubnetAttribute * @see AWS API * Documentation */ @Override public ModifySubnetAttributeResult modifySubnetAttribute(ModifySubnetAttributeRequest request) { request = beforeClientExecution(request); return executeModifySubnetAttribute(request); } @SdkInternalApi final ModifySubnetAttributeResult executeModifySubnetAttribute(ModifySubnetAttributeRequest modifySubnetAttributeRequest) { ExecutionContext executionContext = createExecutionContext(modifySubnetAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifySubnetAttributeRequestMarshaller().marshall(super.beforeMarshalling(modifySubnetAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifySubnetAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifySubnetAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Allows or restricts mirroring network services. *

*

* By default, Amazon DNS network services are not eligible for Traffic Mirror. Use AddNetworkServices * to add network services to a Traffic Mirror filter. When a network service is added to the Traffic Mirror filter, * all traffic related to that network service will be mirrored. When you no longer want to mirror network services, * use RemoveNetworkServices to remove the network services from the Traffic Mirror filter. *

*

* FFor information about filter rule properties, see Network Services in the Traffic Mirroring User Guide . *

* * @param modifyTrafficMirrorFilterNetworkServicesRequest * @return Result of the ModifyTrafficMirrorFilterNetworkServices operation returned by the service. * @sample AmazonEC2.ModifyTrafficMirrorFilterNetworkServices * @see AWS API Documentation */ @Override public ModifyTrafficMirrorFilterNetworkServicesResult modifyTrafficMirrorFilterNetworkServices(ModifyTrafficMirrorFilterNetworkServicesRequest request) { request = beforeClientExecution(request); return executeModifyTrafficMirrorFilterNetworkServices(request); } @SdkInternalApi final ModifyTrafficMirrorFilterNetworkServicesResult executeModifyTrafficMirrorFilterNetworkServices( ModifyTrafficMirrorFilterNetworkServicesRequest modifyTrafficMirrorFilterNetworkServicesRequest) { ExecutionContext executionContext = createExecutionContext(modifyTrafficMirrorFilterNetworkServicesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyTrafficMirrorFilterNetworkServicesRequestMarshaller().marshall(super .beforeMarshalling(modifyTrafficMirrorFilterNetworkServicesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyTrafficMirrorFilterNetworkServices"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyTrafficMirrorFilterNetworkServicesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the specified Traffic Mirror rule. *

*

* DestinationCidrBlock and SourceCidrBlock must both be an IPv4 range or an IPv6 range. *

* * @param modifyTrafficMirrorFilterRuleRequest * @return Result of the ModifyTrafficMirrorFilterRule operation returned by the service. * @sample AmazonEC2.ModifyTrafficMirrorFilterRule * @see AWS API Documentation */ @Override public ModifyTrafficMirrorFilterRuleResult modifyTrafficMirrorFilterRule(ModifyTrafficMirrorFilterRuleRequest request) { request = beforeClientExecution(request); return executeModifyTrafficMirrorFilterRule(request); } @SdkInternalApi final ModifyTrafficMirrorFilterRuleResult executeModifyTrafficMirrorFilterRule(ModifyTrafficMirrorFilterRuleRequest modifyTrafficMirrorFilterRuleRequest) { ExecutionContext executionContext = createExecutionContext(modifyTrafficMirrorFilterRuleRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyTrafficMirrorFilterRuleRequestMarshaller().marshall(super.beforeMarshalling(modifyTrafficMirrorFilterRuleRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyTrafficMirrorFilterRule"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyTrafficMirrorFilterRuleResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies a Traffic Mirror session. *

* * @param modifyTrafficMirrorSessionRequest * @return Result of the ModifyTrafficMirrorSession operation returned by the service. * @sample AmazonEC2.ModifyTrafficMirrorSession * @see AWS * API Documentation */ @Override public ModifyTrafficMirrorSessionResult modifyTrafficMirrorSession(ModifyTrafficMirrorSessionRequest request) { request = beforeClientExecution(request); return executeModifyTrafficMirrorSession(request); } @SdkInternalApi final ModifyTrafficMirrorSessionResult executeModifyTrafficMirrorSession(ModifyTrafficMirrorSessionRequest modifyTrafficMirrorSessionRequest) { ExecutionContext executionContext = createExecutionContext(modifyTrafficMirrorSessionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyTrafficMirrorSessionRequestMarshaller().marshall(super.beforeMarshalling(modifyTrafficMirrorSessionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyTrafficMirrorSession"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyTrafficMirrorSessionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the specified VPC attachment. *

* * @param modifyTransitGatewayVpcAttachmentRequest * @return Result of the ModifyTransitGatewayVpcAttachment operation returned by the service. * @sample AmazonEC2.ModifyTransitGatewayVpcAttachment * @see AWS API Documentation */ @Override public ModifyTransitGatewayVpcAttachmentResult modifyTransitGatewayVpcAttachment(ModifyTransitGatewayVpcAttachmentRequest request) { request = beforeClientExecution(request); return executeModifyTransitGatewayVpcAttachment(request); } @SdkInternalApi final ModifyTransitGatewayVpcAttachmentResult executeModifyTransitGatewayVpcAttachment( ModifyTransitGatewayVpcAttachmentRequest modifyTransitGatewayVpcAttachmentRequest) { ExecutionContext executionContext = createExecutionContext(modifyTransitGatewayVpcAttachmentRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyTransitGatewayVpcAttachmentRequestMarshaller().marshall(super.beforeMarshalling(modifyTransitGatewayVpcAttachmentRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyTransitGatewayVpcAttachment"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyTransitGatewayVpcAttachmentResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* You can modify several parameters of an existing EBS volume, including volume size, volume type, and IOPS * capacity. If your EBS volume is attached to a current-generation EC2 instance type, you may be able to apply * these changes without stopping the instance or detaching the volume from it. For more information about modifying * an EBS volume running Linux, see Modifying the Size, IOPS, or * Type of an EBS Volume on Linux. For more information about modifying an EBS volume running Windows, see Modifying the Size, IOPS, or * Type of an EBS Volume on Windows. *

*

* When you complete a resize operation on your volume, you need to extend the volume's file-system size to take * advantage of the new storage capacity. For information about extending a Linux file system, see Extending a Linux File System. For information about extending a Windows file system, see Extending a Windows File System. *

*

* You can use CloudWatch Events to check the status of a modification to an EBS volume. For information about * CloudWatch Events, see the Amazon * CloudWatch Events User Guide. You can also track the status of a modification using * DescribeVolumesModifications. For information about tracking status changes using either method, see Monitoring * Volume Modifications. *

*

* With previous-generation instance types, resizing an EBS volume may require detaching and reattaching the volume * or stopping and restarting the instance. For more information, see Modifying the Size, IOPS, or * Type of an EBS Volume on Linux and Modifying the Size, IOPS, or * Type of an EBS Volume on Windows. *

*

* If you reach the maximum volume modification rate per volume limit, you will need to wait at least six hours * before applying further modifications to the affected EBS volume. *

* * @param modifyVolumeRequest * @return Result of the ModifyVolume operation returned by the service. * @sample AmazonEC2.ModifyVolume * @see AWS API * Documentation */ @Override public ModifyVolumeResult modifyVolume(ModifyVolumeRequest request) { request = beforeClientExecution(request); return executeModifyVolume(request); } @SdkInternalApi final ModifyVolumeResult executeModifyVolume(ModifyVolumeRequest modifyVolumeRequest) { ExecutionContext executionContext = createExecutionContext(modifyVolumeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyVolumeRequestMarshaller().marshall(super.beforeMarshalling(modifyVolumeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyVolume"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new ModifyVolumeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies a volume attribute. *

*

* By default, all I/O operations for the volume are suspended when the data on the volume is determined to be * potentially inconsistent, to prevent undetectable, latent data corruption. The I/O access to the volume can be * resumed by first enabling I/O access and then checking the data consistency on your volume. *

*

* You can change the default behavior to resume I/O operations. We recommend that you change this only for boot * volumes or for volumes that are stateless or disposable. *

* * @param modifyVolumeAttributeRequest * Contains the parameters for ModifyVolumeAttribute. * @return Result of the ModifyVolumeAttribute operation returned by the service. * @sample AmazonEC2.ModifyVolumeAttribute * @see AWS API * Documentation */ @Override public ModifyVolumeAttributeResult modifyVolumeAttribute(ModifyVolumeAttributeRequest request) { request = beforeClientExecution(request); return executeModifyVolumeAttribute(request); } @SdkInternalApi final ModifyVolumeAttributeResult executeModifyVolumeAttribute(ModifyVolumeAttributeRequest modifyVolumeAttributeRequest) { ExecutionContext executionContext = createExecutionContext(modifyVolumeAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyVolumeAttributeRequestMarshaller().marshall(super.beforeMarshalling(modifyVolumeAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyVolumeAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyVolumeAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the specified attribute of the specified VPC. *

* * @param modifyVpcAttributeRequest * @return Result of the ModifyVpcAttribute operation returned by the service. * @sample AmazonEC2.ModifyVpcAttribute * @see AWS API * Documentation */ @Override public ModifyVpcAttributeResult modifyVpcAttribute(ModifyVpcAttributeRequest request) { request = beforeClientExecution(request); return executeModifyVpcAttribute(request); } @SdkInternalApi final ModifyVpcAttributeResult executeModifyVpcAttribute(ModifyVpcAttributeRequest modifyVpcAttributeRequest) { ExecutionContext executionContext = createExecutionContext(modifyVpcAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyVpcAttributeRequestMarshaller().marshall(super.beforeMarshalling(modifyVpcAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyVpcAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyVpcAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies attributes of a specified VPC endpoint. The attributes that you can modify depend on the type of VPC * endpoint (interface or gateway). For more information, see VPC Endpoints in the Amazon * Virtual Private Cloud User Guide. *

* * @param modifyVpcEndpointRequest * Contains the parameters for ModifyVpcEndpoint. * @return Result of the ModifyVpcEndpoint operation returned by the service. * @sample AmazonEC2.ModifyVpcEndpoint * @see AWS API * Documentation */ @Override public ModifyVpcEndpointResult modifyVpcEndpoint(ModifyVpcEndpointRequest request) { request = beforeClientExecution(request); return executeModifyVpcEndpoint(request); } @SdkInternalApi final ModifyVpcEndpointResult executeModifyVpcEndpoint(ModifyVpcEndpointRequest modifyVpcEndpointRequest) { ExecutionContext executionContext = createExecutionContext(modifyVpcEndpointRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyVpcEndpointRequestMarshaller().marshall(super.beforeMarshalling(modifyVpcEndpointRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyVpcEndpoint"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyVpcEndpointResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies a connection notification for VPC endpoint or VPC endpoint service. You can change the SNS topic for the * notification, or the events for which to be notified. *

* * @param modifyVpcEndpointConnectionNotificationRequest * @return Result of the ModifyVpcEndpointConnectionNotification operation returned by the service. * @sample AmazonEC2.ModifyVpcEndpointConnectionNotification * @see AWS API Documentation */ @Override public ModifyVpcEndpointConnectionNotificationResult modifyVpcEndpointConnectionNotification(ModifyVpcEndpointConnectionNotificationRequest request) { request = beforeClientExecution(request); return executeModifyVpcEndpointConnectionNotification(request); } @SdkInternalApi final ModifyVpcEndpointConnectionNotificationResult executeModifyVpcEndpointConnectionNotification( ModifyVpcEndpointConnectionNotificationRequest modifyVpcEndpointConnectionNotificationRequest) { ExecutionContext executionContext = createExecutionContext(modifyVpcEndpointConnectionNotificationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyVpcEndpointConnectionNotificationRequestMarshaller().marshall(super .beforeMarshalling(modifyVpcEndpointConnectionNotificationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyVpcEndpointConnectionNotification"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyVpcEndpointConnectionNotificationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the attributes of your VPC endpoint service configuration. You can change the Network Load Balancers for * your service, and you can specify whether acceptance is required for requests to connect to your endpoint service * through an interface VPC endpoint. *

* * @param modifyVpcEndpointServiceConfigurationRequest * @return Result of the ModifyVpcEndpointServiceConfiguration operation returned by the service. * @sample AmazonEC2.ModifyVpcEndpointServiceConfiguration * @see AWS API Documentation */ @Override public ModifyVpcEndpointServiceConfigurationResult modifyVpcEndpointServiceConfiguration(ModifyVpcEndpointServiceConfigurationRequest request) { request = beforeClientExecution(request); return executeModifyVpcEndpointServiceConfiguration(request); } @SdkInternalApi final ModifyVpcEndpointServiceConfigurationResult executeModifyVpcEndpointServiceConfiguration( ModifyVpcEndpointServiceConfigurationRequest modifyVpcEndpointServiceConfigurationRequest) { ExecutionContext executionContext = createExecutionContext(modifyVpcEndpointServiceConfigurationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyVpcEndpointServiceConfigurationRequestMarshaller().marshall(super .beforeMarshalling(modifyVpcEndpointServiceConfigurationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyVpcEndpointServiceConfiguration"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyVpcEndpointServiceConfigurationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the permissions for your VPC endpoint service. You can * add or remove permissions for service consumers (IAM users, IAM roles, and AWS accounts) to connect to your * endpoint service. *

*

* If you grant permissions to all principals, the service is public. Any users who know the name of a public * service can send a request to attach an endpoint. If the service does not require manual approval, attachments * are automatically approved. *

* * @param modifyVpcEndpointServicePermissionsRequest * @return Result of the ModifyVpcEndpointServicePermissions operation returned by the service. * @sample AmazonEC2.ModifyVpcEndpointServicePermissions * @see AWS API Documentation */ @Override public ModifyVpcEndpointServicePermissionsResult modifyVpcEndpointServicePermissions(ModifyVpcEndpointServicePermissionsRequest request) { request = beforeClientExecution(request); return executeModifyVpcEndpointServicePermissions(request); } @SdkInternalApi final ModifyVpcEndpointServicePermissionsResult executeModifyVpcEndpointServicePermissions( ModifyVpcEndpointServicePermissionsRequest modifyVpcEndpointServicePermissionsRequest) { ExecutionContext executionContext = createExecutionContext(modifyVpcEndpointServicePermissionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyVpcEndpointServicePermissionsRequestMarshaller().marshall(super .beforeMarshalling(modifyVpcEndpointServicePermissionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyVpcEndpointServicePermissions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyVpcEndpointServicePermissionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the VPC peering connection options on one side of a VPC peering connection. You can do the following: *

*
    *
  • *

    * Enable/disable communication over the peering connection between an EC2-Classic instance that's linked to your * VPC (using ClassicLink) and instances in the peer VPC. *

    *
  • *
  • *

    * Enable/disable communication over the peering connection between instances in your VPC and an EC2-Classic * instance that's linked to the peer VPC. *

    *
  • *
  • *

    * Enable/disable the ability to resolve public DNS hostnames to private IP addresses when queried from instances in * the peer VPC. *

    *
  • *
*

* If the peered VPCs are in the same AWS account, you can enable DNS resolution for queries from the local VPC. * This ensures that queries from the local VPC resolve to private IP addresses in the peer VPC. This option is not * available if the peered VPCs are in different AWS accounts or different Regions. For peered VPCs in different AWS * accounts, each AWS account owner must initiate a separate request to modify the peering connection options. For * inter-region peering connections, you must use the Region for the requester VPC to modify the requester VPC * peering options and the Region for the accepter VPC to modify the accepter VPC peering options. To verify which * VPCs are the accepter and the requester for a VPC peering connection, use the * DescribeVpcPeeringConnections command. *

* * @param modifyVpcPeeringConnectionOptionsRequest * @return Result of the ModifyVpcPeeringConnectionOptions operation returned by the service. * @sample AmazonEC2.ModifyVpcPeeringConnectionOptions * @see AWS API Documentation */ @Override public ModifyVpcPeeringConnectionOptionsResult modifyVpcPeeringConnectionOptions(ModifyVpcPeeringConnectionOptionsRequest request) { request = beforeClientExecution(request); return executeModifyVpcPeeringConnectionOptions(request); } @SdkInternalApi final ModifyVpcPeeringConnectionOptionsResult executeModifyVpcPeeringConnectionOptions( ModifyVpcPeeringConnectionOptionsRequest modifyVpcPeeringConnectionOptionsRequest) { ExecutionContext executionContext = createExecutionContext(modifyVpcPeeringConnectionOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyVpcPeeringConnectionOptionsRequestMarshaller().marshall(super.beforeMarshalling(modifyVpcPeeringConnectionOptionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyVpcPeeringConnectionOptions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyVpcPeeringConnectionOptionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the instance tenancy attribute of the specified VPC. You can change the instance tenancy attribute of a * VPC to default only. You cannot change the instance tenancy attribute to dedicated. *

*

* After you modify the tenancy of the VPC, any new instances that you launch into the VPC have a tenancy of * default, unless you specify otherwise during launch. The tenancy of any existing instances in the * VPC is not affected. *

*

* For more information, see Dedicated Instances in the * Amazon Elastic Compute Cloud User Guide. *

* * @param modifyVpcTenancyRequest * @return Result of the ModifyVpcTenancy operation returned by the service. * @sample AmazonEC2.ModifyVpcTenancy * @see AWS API * Documentation */ @Override public ModifyVpcTenancyResult modifyVpcTenancy(ModifyVpcTenancyRequest request) { request = beforeClientExecution(request); return executeModifyVpcTenancy(request); } @SdkInternalApi final ModifyVpcTenancyResult executeModifyVpcTenancy(ModifyVpcTenancyRequest modifyVpcTenancyRequest) { ExecutionContext executionContext = createExecutionContext(modifyVpcTenancyRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyVpcTenancyRequestMarshaller().marshall(super.beforeMarshalling(modifyVpcTenancyRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyVpcTenancy"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyVpcTenancyResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Modifies the target gateway of a AWS Site-to-Site VPN connection. The following migration options are available: *

*
    *
  • *

    * An existing virtual private gateway to a new virtual private gateway *

    *
  • *
  • *

    * An existing virtual private gateway to a transit gateway *

    *
  • *
  • *

    * An existing transit gateway to a new transit gateway *

    *
  • *
  • *

    * An existing transit gateway to a virtual private gateway *

    *
  • *
*

* Before you perform the migration to the new gateway, you must configure the new gateway. Use * CreateVpnGateway to create a virtual private gateway, or CreateTransitGateway to create a transit * gateway. *

*

* This step is required when you migrate from a virtual private gateway with static routes to a transit gateway. *

*

* You must delete the static routes before you migrate to the new gateway. *

*

* Keep a copy of the static route before you delete it. You will need to add back these routes to the transit * gateway after the VPN connection migration is complete. *

*

* After you migrate to the new gateway, you might need to modify your VPC route table. Use CreateRoute and * DeleteRoute to make the changes described in VPN Gateway * Target Modification Required VPC Route Table Updates in the AWS Site-to-Site VPN User Guide. *

*

* When the new gateway is a transit gateway, modify the transit gateway route table to allow traffic between the * VPC and the AWS Site-to-Site VPN connection. Use CreateTransitGatewayRoute to add the routes. *

*

* If you deleted VPN static routes, you must add the static routes to the transit gateway route table. *

*

* After you perform this operation, the AWS VPN endpoint's IP addresses on the AWS side and the tunnel options * remain intact. Your s2slong; connection will be temporarily unavailable for approximately 10 minutes while we * provision the new endpoints *

* * @param modifyVpnConnectionRequest * @return Result of the ModifyVpnConnection operation returned by the service. * @sample AmazonEC2.ModifyVpnConnection * @see AWS API * Documentation */ @Override public ModifyVpnConnectionResult modifyVpnConnection(ModifyVpnConnectionRequest request) { request = beforeClientExecution(request); return executeModifyVpnConnection(request); } @SdkInternalApi final ModifyVpnConnectionResult executeModifyVpnConnection(ModifyVpnConnectionRequest modifyVpnConnectionRequest) { ExecutionContext executionContext = createExecutionContext(modifyVpnConnectionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ModifyVpnConnectionRequestMarshaller().marshall(super.beforeMarshalling(modifyVpnConnectionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ModifyVpnConnection"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ModifyVpnConnectionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Enables detailed monitoring for a running instance. Otherwise, basic monitoring is enabled. For more information, * see Monitoring Your Instances * and Volumes in the Amazon Elastic Compute Cloud User Guide. *

*

* To disable detailed monitoring, see . *

* * @param monitorInstancesRequest * @return Result of the MonitorInstances operation returned by the service. * @sample AmazonEC2.MonitorInstances * @see AWS API * Documentation */ @Override public MonitorInstancesResult monitorInstances(MonitorInstancesRequest request) { request = beforeClientExecution(request); return executeMonitorInstances(request); } @SdkInternalApi final MonitorInstancesResult executeMonitorInstances(MonitorInstancesRequest monitorInstancesRequest) { ExecutionContext executionContext = createExecutionContext(monitorInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new MonitorInstancesRequestMarshaller().marshall(super.beforeMarshalling(monitorInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "MonitorInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new MonitorInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Moves an Elastic IP address from the EC2-Classic platform to the EC2-VPC platform. The Elastic IP address must be * allocated to your account for more than 24 hours, and it must not be associated with an instance. After the * Elastic IP address is moved, it is no longer available for use in the EC2-Classic platform, unless you move it * back using the RestoreAddressToClassic request. You cannot move an Elastic IP address that was originally * allocated for use in the EC2-VPC platform to the EC2-Classic platform. *

* * @param moveAddressToVpcRequest * @return Result of the MoveAddressToVpc operation returned by the service. * @sample AmazonEC2.MoveAddressToVpc * @see AWS API * Documentation */ @Override public MoveAddressToVpcResult moveAddressToVpc(MoveAddressToVpcRequest request) { request = beforeClientExecution(request); return executeMoveAddressToVpc(request); } @SdkInternalApi final MoveAddressToVpcResult executeMoveAddressToVpc(MoveAddressToVpcRequest moveAddressToVpcRequest) { ExecutionContext executionContext = createExecutionContext(moveAddressToVpcRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new MoveAddressToVpcRequestMarshaller().marshall(super.beforeMarshalling(moveAddressToVpcRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "MoveAddressToVpc"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new MoveAddressToVpcResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Provisions an address range for use with your AWS resources through bring your own IP addresses (BYOIP) and * creates a corresponding address pool. After the address range is provisioned, it is ready to be advertised using * AdvertiseByoipCidr. *

*

* AWS verifies that you own the address range and are authorized to advertise it. You must ensure that the address * range is registered to you and that you created an RPKI ROA to authorize Amazon ASNs 16509 and 14618 to advertise * the address range. For more information, see Bring Your Own IP Addresses (BYOIP) * in the Amazon Elastic Compute Cloud User Guide. *

*

* Provisioning an address range is an asynchronous operation, so the call returns immediately, but the address * range is not ready to use until its status changes from pending-provision to * provisioned. To monitor the status of an address range, use DescribeByoipCidrs. To allocate * an Elastic IP address from your address pool, use AllocateAddress with either the specific address from * the address pool or the ID of the address pool. *

* * @param provisionByoipCidrRequest * @return Result of the ProvisionByoipCidr operation returned by the service. * @sample AmazonEC2.ProvisionByoipCidr * @see AWS API * Documentation */ @Override public ProvisionByoipCidrResult provisionByoipCidr(ProvisionByoipCidrRequest request) { request = beforeClientExecution(request); return executeProvisionByoipCidr(request); } @SdkInternalApi final ProvisionByoipCidrResult executeProvisionByoipCidr(ProvisionByoipCidrRequest provisionByoipCidrRequest) { ExecutionContext executionContext = createExecutionContext(provisionByoipCidrRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ProvisionByoipCidrRequestMarshaller().marshall(super.beforeMarshalling(provisionByoipCidrRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ProvisionByoipCidr"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ProvisionByoipCidrResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Purchase a reservation with configurations that match those of your Dedicated Host. You must have active * Dedicated Hosts in your account before you purchase a reservation. This action results in the specified * reservation being purchased and charged to your account. *

* * @param purchaseHostReservationRequest * @return Result of the PurchaseHostReservation operation returned by the service. * @sample AmazonEC2.PurchaseHostReservation * @see AWS * API Documentation */ @Override public PurchaseHostReservationResult purchaseHostReservation(PurchaseHostReservationRequest request) { request = beforeClientExecution(request); return executePurchaseHostReservation(request); } @SdkInternalApi final PurchaseHostReservationResult executePurchaseHostReservation(PurchaseHostReservationRequest purchaseHostReservationRequest) { ExecutionContext executionContext = createExecutionContext(purchaseHostReservationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new PurchaseHostReservationRequestMarshaller().marshall(super.beforeMarshalling(purchaseHostReservationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "PurchaseHostReservation"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new PurchaseHostReservationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Purchases a Reserved Instance for use with your account. With Reserved Instances, you pay a lower hourly rate * compared to On-Demand instance pricing. *

*

* Use DescribeReservedInstancesOfferings to get a list of Reserved Instance offerings that match your * specifications. After you've purchased a Reserved Instance, you can check for your new Reserved Instance with * DescribeReservedInstances. *

*

* For more information, see Reserved * Instances and Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User Guide. *

* * @param purchaseReservedInstancesOfferingRequest * Contains the parameters for PurchaseReservedInstancesOffering. * @return Result of the PurchaseReservedInstancesOffering operation returned by the service. * @sample AmazonEC2.PurchaseReservedInstancesOffering * @see AWS API Documentation */ @Override public PurchaseReservedInstancesOfferingResult purchaseReservedInstancesOffering(PurchaseReservedInstancesOfferingRequest request) { request = beforeClientExecution(request); return executePurchaseReservedInstancesOffering(request); } @SdkInternalApi final PurchaseReservedInstancesOfferingResult executePurchaseReservedInstancesOffering( PurchaseReservedInstancesOfferingRequest purchaseReservedInstancesOfferingRequest) { ExecutionContext executionContext = createExecutionContext(purchaseReservedInstancesOfferingRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new PurchaseReservedInstancesOfferingRequestMarshaller().marshall(super.beforeMarshalling(purchaseReservedInstancesOfferingRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "PurchaseReservedInstancesOffering"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new PurchaseReservedInstancesOfferingResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Purchases the Scheduled Instances with the specified schedule. *

*

* Scheduled Instances enable you to purchase Amazon EC2 compute capacity by the hour for a one-year term. Before * you can purchase a Scheduled Instance, you must call DescribeScheduledInstanceAvailability to check for * available schedules and obtain a purchase token. After you purchase a Scheduled Instance, you must call * RunScheduledInstances during each scheduled time period. *

*

* After you purchase a Scheduled Instance, you can't cancel, modify, or resell your purchase. *

* * @param purchaseScheduledInstancesRequest * Contains the parameters for PurchaseScheduledInstances. * @return Result of the PurchaseScheduledInstances operation returned by the service. * @sample AmazonEC2.PurchaseScheduledInstances * @see AWS * API Documentation */ @Override public PurchaseScheduledInstancesResult purchaseScheduledInstances(PurchaseScheduledInstancesRequest request) { request = beforeClientExecution(request); return executePurchaseScheduledInstances(request); } @SdkInternalApi final PurchaseScheduledInstancesResult executePurchaseScheduledInstances(PurchaseScheduledInstancesRequest purchaseScheduledInstancesRequest) { ExecutionContext executionContext = createExecutionContext(purchaseScheduledInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new PurchaseScheduledInstancesRequestMarshaller().marshall(super.beforeMarshalling(purchaseScheduledInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "PurchaseScheduledInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new PurchaseScheduledInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Requests a reboot of the specified instances. This operation is asynchronous; it only queues a request to reboot * the specified instances. The operation succeeds if the instances are valid and belong to you. Requests to reboot * terminated instances are ignored. *

*

* If an instance does not cleanly shut down within four minutes, Amazon EC2 performs a hard reboot. *

*

* For more information about troubleshooting, see Getting Console Output and * Rebooting Instances in the Amazon Elastic Compute Cloud User Guide. *

* * @param rebootInstancesRequest * @return Result of the RebootInstances operation returned by the service. * @sample AmazonEC2.RebootInstances * @see AWS API * Documentation */ @Override public RebootInstancesResult rebootInstances(RebootInstancesRequest request) { request = beforeClientExecution(request); return executeRebootInstances(request); } @SdkInternalApi final RebootInstancesResult executeRebootInstances(RebootInstancesRequest rebootInstancesRequest) { ExecutionContext executionContext = createExecutionContext(rebootInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RebootInstancesRequestMarshaller().marshall(super.beforeMarshalling(rebootInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RebootInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new RebootInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Registers an AMI. When you're creating an AMI, this is the final step you must complete before you can launch an * instance from the AMI. For more information about creating AMIs, see Creating Your Own AMIs in the * Amazon Elastic Compute Cloud User Guide. *

* *

* For Amazon EBS-backed instances, CreateImage creates and registers the AMI in a single request, so you * don't have to register the AMI yourself. *

*
*

* You can also use RegisterImage to create an Amazon EBS-backed Linux AMI from a snapshot of a root * device volume. You specify the snapshot using the block device mapping. For more information, see Launching a Linux * Instance from a Backup in the Amazon Elastic Compute Cloud User Guide. *

*

* You can't register an image where a secondary (non-root) snapshot has AWS Marketplace product codes. *

*

* Some Linux distributions, such as Red Hat Enterprise Linux (RHEL) and SUSE Linux Enterprise Server (SLES), use * the EC2 billing product code associated with an AMI to verify the subscription status for package updates. * Creating an AMI from an EBS snapshot does not maintain this billing code, and instances launched from such an AMI * are not able to connect to package update infrastructure. If you purchase a Reserved Instance offering for one of * these Linux distributions and launch instances using an AMI that does not contain the required billing code, your * Reserved Instance is not applied to these instances. *

*

* To create an AMI for operating systems that require a billing code, see CreateImage. *

*

* If needed, you can deregister an AMI at any time. Any modifications you make to an AMI backed by an instance * store volume invalidates its registration. If you make changes to an image, deregister the previous image and * register the new image. *

* * @param registerImageRequest * Contains the parameters for RegisterImage. * @return Result of the RegisterImage operation returned by the service. * @sample AmazonEC2.RegisterImage * @see AWS API * Documentation */ @Override public RegisterImageResult registerImage(RegisterImageRequest request) { request = beforeClientExecution(request); return executeRegisterImage(request); } @SdkInternalApi final RegisterImageResult executeRegisterImage(RegisterImageRequest registerImageRequest) { ExecutionContext executionContext = createExecutionContext(registerImageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RegisterImageRequestMarshaller().marshall(super.beforeMarshalling(registerImageRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RegisterImage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new RegisterImageResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Rejects a request to attach a VPC to a transit gateway. *

*

* The VPC attachment must be in the pendingAcceptance state. Use * DescribeTransitGatewayVpcAttachments to view your pending VPC attachment requests. Use * AcceptTransitGatewayVpcAttachment to accept a VPC attachment request. *

* * @param rejectTransitGatewayVpcAttachmentRequest * @return Result of the RejectTransitGatewayVpcAttachment operation returned by the service. * @sample AmazonEC2.RejectTransitGatewayVpcAttachment * @see AWS API Documentation */ @Override public RejectTransitGatewayVpcAttachmentResult rejectTransitGatewayVpcAttachment(RejectTransitGatewayVpcAttachmentRequest request) { request = beforeClientExecution(request); return executeRejectTransitGatewayVpcAttachment(request); } @SdkInternalApi final RejectTransitGatewayVpcAttachmentResult executeRejectTransitGatewayVpcAttachment( RejectTransitGatewayVpcAttachmentRequest rejectTransitGatewayVpcAttachmentRequest) { ExecutionContext executionContext = createExecutionContext(rejectTransitGatewayVpcAttachmentRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RejectTransitGatewayVpcAttachmentRequestMarshaller().marshall(super.beforeMarshalling(rejectTransitGatewayVpcAttachmentRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RejectTransitGatewayVpcAttachment"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new RejectTransitGatewayVpcAttachmentResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Rejects one or more VPC endpoint connection requests to your VPC endpoint service. *

* * @param rejectVpcEndpointConnectionsRequest * @return Result of the RejectVpcEndpointConnections operation returned by the service. * @sample AmazonEC2.RejectVpcEndpointConnections * @see AWS API Documentation */ @Override public RejectVpcEndpointConnectionsResult rejectVpcEndpointConnections(RejectVpcEndpointConnectionsRequest request) { request = beforeClientExecution(request); return executeRejectVpcEndpointConnections(request); } @SdkInternalApi final RejectVpcEndpointConnectionsResult executeRejectVpcEndpointConnections(RejectVpcEndpointConnectionsRequest rejectVpcEndpointConnectionsRequest) { ExecutionContext executionContext = createExecutionContext(rejectVpcEndpointConnectionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RejectVpcEndpointConnectionsRequestMarshaller().marshall(super.beforeMarshalling(rejectVpcEndpointConnectionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RejectVpcEndpointConnections"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new RejectVpcEndpointConnectionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Rejects a VPC peering connection request. The VPC peering connection must be in the * pending-acceptance state. Use the DescribeVpcPeeringConnections request to view your * outstanding VPC peering connection requests. To delete an active VPC peering connection, or to delete a VPC * peering connection request that you initiated, use DeleteVpcPeeringConnection. *

* * @param rejectVpcPeeringConnectionRequest * @return Result of the RejectVpcPeeringConnection operation returned by the service. * @sample AmazonEC2.RejectVpcPeeringConnection * @see AWS * API Documentation */ @Override public RejectVpcPeeringConnectionResult rejectVpcPeeringConnection(RejectVpcPeeringConnectionRequest request) { request = beforeClientExecution(request); return executeRejectVpcPeeringConnection(request); } @SdkInternalApi final RejectVpcPeeringConnectionResult executeRejectVpcPeeringConnection(RejectVpcPeeringConnectionRequest rejectVpcPeeringConnectionRequest) { ExecutionContext executionContext = createExecutionContext(rejectVpcPeeringConnectionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RejectVpcPeeringConnectionRequestMarshaller().marshall(super.beforeMarshalling(rejectVpcPeeringConnectionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RejectVpcPeeringConnection"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new RejectVpcPeeringConnectionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Releases the specified Elastic IP address. *

*

* [EC2-Classic, default VPC] Releasing an Elastic IP address automatically disassociates it from any instance that * it's associated with. To disassociate an Elastic IP address without releasing it, use DisassociateAddress. *

*

* [Nondefault VPC] You must use DisassociateAddress to disassociate the Elastic IP address before you can * release it. Otherwise, Amazon EC2 returns an error (InvalidIPAddress.InUse). *

*

* After releasing an Elastic IP address, it is released to the IP address pool. Be sure to update your DNS records * and any servers or devices that communicate with the address. If you attempt to release an Elastic IP address * that you already released, you'll get an AuthFailure error if the address is already allocated to * another AWS account. *

*

* [EC2-VPC] After you release an Elastic IP address for use in a VPC, you might be able to recover it. For more * information, see AllocateAddress. *

* * @param releaseAddressRequest * @return Result of the ReleaseAddress operation returned by the service. * @sample AmazonEC2.ReleaseAddress * @see AWS API * Documentation */ @Override public ReleaseAddressResult releaseAddress(ReleaseAddressRequest request) { request = beforeClientExecution(request); return executeReleaseAddress(request); } @SdkInternalApi final ReleaseAddressResult executeReleaseAddress(ReleaseAddressRequest releaseAddressRequest) { ExecutionContext executionContext = createExecutionContext(releaseAddressRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ReleaseAddressRequestMarshaller().marshall(super.beforeMarshalling(releaseAddressRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ReleaseAddress"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ReleaseAddressResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* When you no longer want to use an On-Demand Dedicated Host it can be released. On-Demand billing is stopped and * the host goes into released state. The host ID of Dedicated Hosts that have been released can no * longer be specified in another request, for example, to modify the host. You must stop or terminate all instances * on a host before it can be released. *

*

* When Dedicated Hosts are released, it may take some time for them to stop counting toward your limit and you may * receive capacity errors when trying to allocate new Dedicated Hosts. Wait a few minutes and then try again. *

*

* Released hosts still appear in a DescribeHosts response. *

* * @param releaseHostsRequest * @return Result of the ReleaseHosts operation returned by the service. * @sample AmazonEC2.ReleaseHosts * @see AWS API * Documentation */ @Override public ReleaseHostsResult releaseHosts(ReleaseHostsRequest request) { request = beforeClientExecution(request); return executeReleaseHosts(request); } @SdkInternalApi final ReleaseHostsResult executeReleaseHosts(ReleaseHostsRequest releaseHostsRequest) { ExecutionContext executionContext = createExecutionContext(releaseHostsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ReleaseHostsRequestMarshaller().marshall(super.beforeMarshalling(releaseHostsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ReleaseHosts"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new ReleaseHostsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Replaces an IAM instance profile for the specified running instance. You can use this action to change the IAM * instance profile that's associated with an instance without having to disassociate the existing IAM instance * profile first. *

*

* Use DescribeIamInstanceProfileAssociations to get the association ID. *

* * @param replaceIamInstanceProfileAssociationRequest * @return Result of the ReplaceIamInstanceProfileAssociation operation returned by the service. * @sample AmazonEC2.ReplaceIamInstanceProfileAssociation * @see AWS API Documentation */ @Override public ReplaceIamInstanceProfileAssociationResult replaceIamInstanceProfileAssociation(ReplaceIamInstanceProfileAssociationRequest request) { request = beforeClientExecution(request); return executeReplaceIamInstanceProfileAssociation(request); } @SdkInternalApi final ReplaceIamInstanceProfileAssociationResult executeReplaceIamInstanceProfileAssociation( ReplaceIamInstanceProfileAssociationRequest replaceIamInstanceProfileAssociationRequest) { ExecutionContext executionContext = createExecutionContext(replaceIamInstanceProfileAssociationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ReplaceIamInstanceProfileAssociationRequestMarshaller().marshall(super .beforeMarshalling(replaceIamInstanceProfileAssociationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ReplaceIamInstanceProfileAssociation"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ReplaceIamInstanceProfileAssociationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Changes which network ACL a subnet is associated with. By default when you create a subnet, it's automatically * associated with the default network ACL. For more information, see Network ACLs in the Amazon Virtual * Private Cloud User Guide. *

*

* This is an idempotent operation. *

* * @param replaceNetworkAclAssociationRequest * @return Result of the ReplaceNetworkAclAssociation operation returned by the service. * @sample AmazonEC2.ReplaceNetworkAclAssociation * @see AWS API Documentation */ @Override public ReplaceNetworkAclAssociationResult replaceNetworkAclAssociation(ReplaceNetworkAclAssociationRequest request) { request = beforeClientExecution(request); return executeReplaceNetworkAclAssociation(request); } @SdkInternalApi final ReplaceNetworkAclAssociationResult executeReplaceNetworkAclAssociation(ReplaceNetworkAclAssociationRequest replaceNetworkAclAssociationRequest) { ExecutionContext executionContext = createExecutionContext(replaceNetworkAclAssociationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ReplaceNetworkAclAssociationRequestMarshaller().marshall(super.beforeMarshalling(replaceNetworkAclAssociationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ReplaceNetworkAclAssociation"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ReplaceNetworkAclAssociationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Replaces an entry (rule) in a network ACL. For more information, see Network ACLs in the Amazon Virtual * Private Cloud User Guide. *

* * @param replaceNetworkAclEntryRequest * @return Result of the ReplaceNetworkAclEntry operation returned by the service. * @sample AmazonEC2.ReplaceNetworkAclEntry * @see AWS API * Documentation */ @Override public ReplaceNetworkAclEntryResult replaceNetworkAclEntry(ReplaceNetworkAclEntryRequest request) { request = beforeClientExecution(request); return executeReplaceNetworkAclEntry(request); } @SdkInternalApi final ReplaceNetworkAclEntryResult executeReplaceNetworkAclEntry(ReplaceNetworkAclEntryRequest replaceNetworkAclEntryRequest) { ExecutionContext executionContext = createExecutionContext(replaceNetworkAclEntryRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ReplaceNetworkAclEntryRequestMarshaller().marshall(super.beforeMarshalling(replaceNetworkAclEntryRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ReplaceNetworkAclEntry"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ReplaceNetworkAclEntryResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Replaces an existing route within a route table in a VPC. You must provide only one of the following: internet * gateway or virtual private gateway, NAT instance, NAT gateway, VPC peering connection, network interface, or * egress-only internet gateway. *

*

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

* * @param replaceRouteRequest * @return Result of the ReplaceRoute operation returned by the service. * @sample AmazonEC2.ReplaceRoute * @see AWS API * Documentation */ @Override public ReplaceRouteResult replaceRoute(ReplaceRouteRequest request) { request = beforeClientExecution(request); return executeReplaceRoute(request); } @SdkInternalApi final ReplaceRouteResult executeReplaceRoute(ReplaceRouteRequest replaceRouteRequest) { ExecutionContext executionContext = createExecutionContext(replaceRouteRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ReplaceRouteRequestMarshaller().marshall(super.beforeMarshalling(replaceRouteRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ReplaceRoute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new ReplaceRouteResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Changes the route table associated with a given subnet in a VPC. After the operation completes, the subnet uses * the routes in the new route table it's associated with. For more information about route tables, see Route Tables in the Amazon * Virtual Private Cloud User Guide. *

*

* You can also use ReplaceRouteTableAssociation to change which table is the main route table in the VPC. You just * specify the main route table's association ID and the route table to be the new main route table. *

* * @param replaceRouteTableAssociationRequest * @return Result of the ReplaceRouteTableAssociation operation returned by the service. * @sample AmazonEC2.ReplaceRouteTableAssociation * @see AWS API Documentation */ @Override public ReplaceRouteTableAssociationResult replaceRouteTableAssociation(ReplaceRouteTableAssociationRequest request) { request = beforeClientExecution(request); return executeReplaceRouteTableAssociation(request); } @SdkInternalApi final ReplaceRouteTableAssociationResult executeReplaceRouteTableAssociation(ReplaceRouteTableAssociationRequest replaceRouteTableAssociationRequest) { ExecutionContext executionContext = createExecutionContext(replaceRouteTableAssociationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ReplaceRouteTableAssociationRequestMarshaller().marshall(super.beforeMarshalling(replaceRouteTableAssociationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ReplaceRouteTableAssociation"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ReplaceRouteTableAssociationResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Replaces the specified route in the specified transit gateway route table. *

* * @param replaceTransitGatewayRouteRequest * @return Result of the ReplaceTransitGatewayRoute operation returned by the service. * @sample AmazonEC2.ReplaceTransitGatewayRoute * @see AWS * API Documentation */ @Override public ReplaceTransitGatewayRouteResult replaceTransitGatewayRoute(ReplaceTransitGatewayRouteRequest request) { request = beforeClientExecution(request); return executeReplaceTransitGatewayRoute(request); } @SdkInternalApi final ReplaceTransitGatewayRouteResult executeReplaceTransitGatewayRoute(ReplaceTransitGatewayRouteRequest replaceTransitGatewayRouteRequest) { ExecutionContext executionContext = createExecutionContext(replaceTransitGatewayRouteRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ReplaceTransitGatewayRouteRequestMarshaller().marshall(super.beforeMarshalling(replaceTransitGatewayRouteRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ReplaceTransitGatewayRoute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ReplaceTransitGatewayRouteResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Submits feedback about the status of an instance. The instance must be in the running state. If your * experience with the instance differs from the instance status returned by DescribeInstanceStatus, use * ReportInstanceStatus to report your experience with the instance. Amazon EC2 collects this information to * improve the accuracy of status checks. *

*

* Use of this action does not change the value returned by DescribeInstanceStatus. *

* * @param reportInstanceStatusRequest * @return Result of the ReportInstanceStatus operation returned by the service. * @sample AmazonEC2.ReportInstanceStatus * @see AWS API * Documentation */ @Override public ReportInstanceStatusResult reportInstanceStatus(ReportInstanceStatusRequest request) { request = beforeClientExecution(request); return executeReportInstanceStatus(request); } @SdkInternalApi final ReportInstanceStatusResult executeReportInstanceStatus(ReportInstanceStatusRequest reportInstanceStatusRequest) { ExecutionContext executionContext = createExecutionContext(reportInstanceStatusRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ReportInstanceStatusRequestMarshaller().marshall(super.beforeMarshalling(reportInstanceStatusRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ReportInstanceStatus"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ReportInstanceStatusResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a Spot Fleet request. *

*

* The Spot Fleet request specifies the total target capacity and the On-Demand target capacity. Amazon EC2 * calculates the difference between the total capacity and On-Demand capacity, and launches the difference as Spot * capacity. *

*

* You can submit a single request that includes multiple launch specifications that vary by instance type, AMI, * Availability Zone, or subnet. *

*

* By default, the Spot Fleet requests Spot Instances in the Spot pool where the price per unit is the lowest. Each * launch specification can include its own instance weighting that reflects the value of the instance type to your * application workload. *

*

* Alternatively, you can specify that the Spot Fleet distribute the target capacity across the Spot pools included * in its launch specifications. By ensuring that the Spot Instances in your Spot Fleet are in different Spot pools, * you can improve the availability of your fleet. *

*

* You can specify tags for the Spot Instances. You cannot tag other resource types in a Spot Fleet request because * only the instance resource type is supported. *

*

* For more information, see Spot Fleet Requests in * the Amazon EC2 User Guide for Linux Instances. *

* * @param requestSpotFleetRequest * Contains the parameters for RequestSpotFleet. * @return Result of the RequestSpotFleet operation returned by the service. * @sample AmazonEC2.RequestSpotFleet * @see AWS API * Documentation */ @Override public RequestSpotFleetResult requestSpotFleet(RequestSpotFleetRequest request) { request = beforeClientExecution(request); return executeRequestSpotFleet(request); } @SdkInternalApi final RequestSpotFleetResult executeRequestSpotFleet(RequestSpotFleetRequest requestSpotFleetRequest) { ExecutionContext executionContext = createExecutionContext(requestSpotFleetRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RequestSpotFleetRequestMarshaller().marshall(super.beforeMarshalling(requestSpotFleetRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RequestSpotFleet"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new RequestSpotFleetResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a Spot Instance request. *

*

* For more information, see Spot * Instance Requests in the Amazon EC2 User Guide for Linux Instances. *

* * @param requestSpotInstancesRequest * Contains the parameters for RequestSpotInstances. * @return Result of the RequestSpotInstances operation returned by the service. * @sample AmazonEC2.RequestSpotInstances * @see AWS API * Documentation */ @Override public RequestSpotInstancesResult requestSpotInstances(RequestSpotInstancesRequest request) { request = beforeClientExecution(request); return executeRequestSpotInstances(request); } @SdkInternalApi final RequestSpotInstancesResult executeRequestSpotInstances(RequestSpotInstancesRequest requestSpotInstancesRequest) { ExecutionContext executionContext = createExecutionContext(requestSpotInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RequestSpotInstancesRequestMarshaller().marshall(super.beforeMarshalling(requestSpotInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RequestSpotInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new RequestSpotInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Resets the default customer master key (CMK) for EBS encryption for your account in this Region to the AWS * managed CMK for EBS. *

*

* After resetting the default CMK to the AWS managed CMK, you can continue to encrypt by a customer managed CMK by * specifying it when you create the volume. For more information, see Amazon EBS Encryption in the * Amazon Elastic Compute Cloud User Guide. *

* * @param resetEbsDefaultKmsKeyIdRequest * @return Result of the ResetEbsDefaultKmsKeyId operation returned by the service. * @sample AmazonEC2.ResetEbsDefaultKmsKeyId * @see AWS * API Documentation */ @Override public ResetEbsDefaultKmsKeyIdResult resetEbsDefaultKmsKeyId(ResetEbsDefaultKmsKeyIdRequest request) { request = beforeClientExecution(request); return executeResetEbsDefaultKmsKeyId(request); } @SdkInternalApi final ResetEbsDefaultKmsKeyIdResult executeResetEbsDefaultKmsKeyId(ResetEbsDefaultKmsKeyIdRequest resetEbsDefaultKmsKeyIdRequest) { ExecutionContext executionContext = createExecutionContext(resetEbsDefaultKmsKeyIdRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ResetEbsDefaultKmsKeyIdRequestMarshaller().marshall(super.beforeMarshalling(resetEbsDefaultKmsKeyIdRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ResetEbsDefaultKmsKeyId"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ResetEbsDefaultKmsKeyIdResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Resets the specified attribute of the specified Amazon FPGA Image (AFI) to its default value. You can only reset * the load permission attribute. *

* * @param resetFpgaImageAttributeRequest * @return Result of the ResetFpgaImageAttribute operation returned by the service. * @sample AmazonEC2.ResetFpgaImageAttribute * @see AWS * API Documentation */ @Override public ResetFpgaImageAttributeResult resetFpgaImageAttribute(ResetFpgaImageAttributeRequest request) { request = beforeClientExecution(request); return executeResetFpgaImageAttribute(request); } @SdkInternalApi final ResetFpgaImageAttributeResult executeResetFpgaImageAttribute(ResetFpgaImageAttributeRequest resetFpgaImageAttributeRequest) { ExecutionContext executionContext = createExecutionContext(resetFpgaImageAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ResetFpgaImageAttributeRequestMarshaller().marshall(super.beforeMarshalling(resetFpgaImageAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ResetFpgaImageAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ResetFpgaImageAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Resets an attribute of an AMI to its default value. *

* *

* The productCodes attribute can't be reset. *

*
* * @param resetImageAttributeRequest * Contains the parameters for ResetImageAttribute. * @return Result of the ResetImageAttribute operation returned by the service. * @sample AmazonEC2.ResetImageAttribute * @see AWS API * Documentation */ @Override public ResetImageAttributeResult resetImageAttribute(ResetImageAttributeRequest request) { request = beforeClientExecution(request); return executeResetImageAttribute(request); } @SdkInternalApi final ResetImageAttributeResult executeResetImageAttribute(ResetImageAttributeRequest resetImageAttributeRequest) { ExecutionContext executionContext = createExecutionContext(resetImageAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ResetImageAttributeRequestMarshaller().marshall(super.beforeMarshalling(resetImageAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ResetImageAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ResetImageAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Resets an attribute of an instance to its default value. To reset the kernel or ramdisk * , the instance must be in a stopped state. To reset the sourceDestCheck, the instance can be either * running or stopped. *

*

* The sourceDestCheck attribute controls whether source/destination checking is enabled. The default * value is true, which means checking is enabled. This value must be false for a NAT * instance to perform NAT. For more information, see NAT Instances in the * Amazon Virtual Private Cloud User Guide. *

* * @param resetInstanceAttributeRequest * @return Result of the ResetInstanceAttribute operation returned by the service. * @sample AmazonEC2.ResetInstanceAttribute * @see AWS API * Documentation */ @Override public ResetInstanceAttributeResult resetInstanceAttribute(ResetInstanceAttributeRequest request) { request = beforeClientExecution(request); return executeResetInstanceAttribute(request); } @SdkInternalApi final ResetInstanceAttributeResult executeResetInstanceAttribute(ResetInstanceAttributeRequest resetInstanceAttributeRequest) { ExecutionContext executionContext = createExecutionContext(resetInstanceAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ResetInstanceAttributeRequestMarshaller().marshall(super.beforeMarshalling(resetInstanceAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ResetInstanceAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ResetInstanceAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Resets a network interface attribute. You can specify only one attribute at a time. *

* * @param resetNetworkInterfaceAttributeRequest * Contains the parameters for ResetNetworkInterfaceAttribute. * @return Result of the ResetNetworkInterfaceAttribute operation returned by the service. * @sample AmazonEC2.ResetNetworkInterfaceAttribute * @see AWS API Documentation */ @Override public ResetNetworkInterfaceAttributeResult resetNetworkInterfaceAttribute(ResetNetworkInterfaceAttributeRequest request) { request = beforeClientExecution(request); return executeResetNetworkInterfaceAttribute(request); } @SdkInternalApi final ResetNetworkInterfaceAttributeResult executeResetNetworkInterfaceAttribute(ResetNetworkInterfaceAttributeRequest resetNetworkInterfaceAttributeRequest) { ExecutionContext executionContext = createExecutionContext(resetNetworkInterfaceAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ResetNetworkInterfaceAttributeRequestMarshaller().marshall(super.beforeMarshalling(resetNetworkInterfaceAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ResetNetworkInterfaceAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ResetNetworkInterfaceAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Resets permission settings for the specified snapshot. *

*

* For more information about modifying snapshot permissions, see Sharing * Snapshots in the Amazon Elastic Compute Cloud User Guide. *

* * @param resetSnapshotAttributeRequest * Contains the parameters for ResetSnapshotAttribute. * @return Result of the ResetSnapshotAttribute operation returned by the service. * @sample AmazonEC2.ResetSnapshotAttribute * @see AWS API * Documentation */ @Override public ResetSnapshotAttributeResult resetSnapshotAttribute(ResetSnapshotAttributeRequest request) { request = beforeClientExecution(request); return executeResetSnapshotAttribute(request); } @SdkInternalApi final ResetSnapshotAttributeResult executeResetSnapshotAttribute(ResetSnapshotAttributeRequest resetSnapshotAttributeRequest) { ExecutionContext executionContext = createExecutionContext(resetSnapshotAttributeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ResetSnapshotAttributeRequestMarshaller().marshall(super.beforeMarshalling(resetSnapshotAttributeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ResetSnapshotAttribute"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ResetSnapshotAttributeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Restores an Elastic IP address that was previously moved to the EC2-VPC platform back to the EC2-Classic * platform. You cannot move an Elastic IP address that was originally allocated for use in EC2-VPC. The Elastic IP * address must not be associated with an instance or network interface. *

* * @param restoreAddressToClassicRequest * @return Result of the RestoreAddressToClassic operation returned by the service. * @sample AmazonEC2.RestoreAddressToClassic * @see AWS * API Documentation */ @Override public RestoreAddressToClassicResult restoreAddressToClassic(RestoreAddressToClassicRequest request) { request = beforeClientExecution(request); return executeRestoreAddressToClassic(request); } @SdkInternalApi final RestoreAddressToClassicResult executeRestoreAddressToClassic(RestoreAddressToClassicRequest restoreAddressToClassicRequest) { ExecutionContext executionContext = createExecutionContext(restoreAddressToClassicRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RestoreAddressToClassicRequestMarshaller().marshall(super.beforeMarshalling(restoreAddressToClassicRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RestoreAddressToClassic"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new RestoreAddressToClassicResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Removes an ingress authorization rule from a Client VPN endpoint. *

* * @param revokeClientVpnIngressRequest * @return Result of the RevokeClientVpnIngress operation returned by the service. * @sample AmazonEC2.RevokeClientVpnIngress * @see AWS API * Documentation */ @Override public RevokeClientVpnIngressResult revokeClientVpnIngress(RevokeClientVpnIngressRequest request) { request = beforeClientExecution(request); return executeRevokeClientVpnIngress(request); } @SdkInternalApi final RevokeClientVpnIngressResult executeRevokeClientVpnIngress(RevokeClientVpnIngressRequest revokeClientVpnIngressRequest) { ExecutionContext executionContext = createExecutionContext(revokeClientVpnIngressRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RevokeClientVpnIngressRequestMarshaller().marshall(super.beforeMarshalling(revokeClientVpnIngressRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RevokeClientVpnIngress"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new RevokeClientVpnIngressResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* [VPC only] Removes the specified egress rules from a security group for EC2-VPC. This action doesn't apply to * security groups for use in EC2-Classic. To remove a rule, the values that you specify (for example, ports) must * match the existing rule's values exactly. *

*

* Each rule consists of the protocol and the IPv4 or IPv6 CIDR range or source security group. For the TCP and UDP * protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also * specify the ICMP type and code. If the security group rule has a description, you do not have to specify the * description to revoke the rule. *

*

* Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay * might occur. *

* * @param revokeSecurityGroupEgressRequest * @return Result of the RevokeSecurityGroupEgress operation returned by the service. * @sample AmazonEC2.RevokeSecurityGroupEgress * @see AWS * API Documentation */ @Override public RevokeSecurityGroupEgressResult revokeSecurityGroupEgress(RevokeSecurityGroupEgressRequest request) { request = beforeClientExecution(request); return executeRevokeSecurityGroupEgress(request); } @SdkInternalApi final RevokeSecurityGroupEgressResult executeRevokeSecurityGroupEgress(RevokeSecurityGroupEgressRequest revokeSecurityGroupEgressRequest) { ExecutionContext executionContext = createExecutionContext(revokeSecurityGroupEgressRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RevokeSecurityGroupEgressRequestMarshaller().marshall(super.beforeMarshalling(revokeSecurityGroupEgressRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RevokeSecurityGroupEgress"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new RevokeSecurityGroupEgressResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Removes the specified ingress rules from a security group. To remove a rule, the values that you specify (for * example, ports) must match the existing rule's values exactly. *

* *

* [EC2-Classic only] If the values you specify do not match the existing rule's values, no error is returned. Use * DescribeSecurityGroups to verify that the rule has been removed. *

*
*

* Each rule consists of the protocol and the CIDR range or source security group. For the TCP and UDP protocols, * you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the * ICMP type and code. If the security group rule has a description, you do not have to specify the description to * revoke the rule. *

*

* Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay * might occur. *

* * @param revokeSecurityGroupIngressRequest * @return Result of the RevokeSecurityGroupIngress operation returned by the service. * @sample AmazonEC2.RevokeSecurityGroupIngress * @see AWS * API Documentation */ @Override public RevokeSecurityGroupIngressResult revokeSecurityGroupIngress(RevokeSecurityGroupIngressRequest request) { request = beforeClientExecution(request); return executeRevokeSecurityGroupIngress(request); } @SdkInternalApi final RevokeSecurityGroupIngressResult executeRevokeSecurityGroupIngress(RevokeSecurityGroupIngressRequest revokeSecurityGroupIngressRequest) { ExecutionContext executionContext = createExecutionContext(revokeSecurityGroupIngressRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RevokeSecurityGroupIngressRequestMarshaller().marshall(super.beforeMarshalling(revokeSecurityGroupIngressRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RevokeSecurityGroupIngress"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new RevokeSecurityGroupIngressResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override @Deprecated public RevokeSecurityGroupIngressResult revokeSecurityGroupIngress() { return revokeSecurityGroupIngress(new RevokeSecurityGroupIngressRequest()); } /** *

* Launches the specified number of instances using an AMI for which you have permissions. *

*

* You can specify a number of options, or leave the default options. The following rules apply: *

*
    *
  • *

    * [EC2-VPC] If you don't specify a subnet ID, we choose a default subnet from your default VPC for you. If you * don't have a default VPC, you must specify a subnet ID in the request. *

    *
  • *
  • *

    * [EC2-Classic] If don't specify an Availability Zone, we choose one for you. *

    *
  • *
  • *

    * Some instance types must be launched into a VPC. If you do not have a default VPC, or if you do not specify a * subnet ID, the request fails. For more information, see Instance Types * Available Only in a VPC. *

    *
  • *
  • *

    * [EC2-VPC] All instances have a network interface with a primary private IPv4 address. If you don't specify this * address, we choose one from the IPv4 range of your subnet. *

    *
  • *
  • *

    * Not all instance types support IPv6 addresses. For more information, see Instance Types. *

    *
  • *
  • *

    * If you don't specify a security group ID, we use the default security group. For more information, see Security Groups. *

    *
  • *
  • *

    * If any of the AMIs have a product code attached for which the user has not subscribed, the request fails. *

    *
  • *
*

* You can create a launch * template, which is a resource that contains the parameters to launch an instance. When you launch an instance * using RunInstances, you can specify the launch template instead of specifying the launch parameters. *

*

* To ensure faster instance launches, break up large requests into smaller batches. For example, create five * separate launch requests for 100 instances each instead of one launch request for 500 instances. *

*

* An instance is ready for you to use when it's in the running state. You can check the state of your * instance using DescribeInstances. You can tag instances and EBS volumes during launch, after launch, or * both. For more information, see CreateTags and Tagging Your Amazon EC2 Resources. *

*

* Linux instances have access to the public key of the key pair at boot. You can use this key to provide secure * access to the instance. Amazon EC2 public images use this feature to provide secure access without passwords. For * more information, see Key * Pairs in the Amazon Elastic Compute Cloud User Guide. *

*

* For troubleshooting, see What To Do If * An Instance Immediately Terminates, and Troubleshooting Connecting to Your Instance in the Amazon Elastic Compute Cloud User Guide. *

* * @param runInstancesRequest * @return Result of the RunInstances operation returned by the service. * @sample AmazonEC2.RunInstances * @see AWS API * Documentation */ @Override public RunInstancesResult runInstances(RunInstancesRequest request) { request = beforeClientExecution(request); return executeRunInstances(request); } @SdkInternalApi final RunInstancesResult executeRunInstances(RunInstancesRequest runInstancesRequest) { ExecutionContext executionContext = createExecutionContext(runInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RunInstancesRequestMarshaller().marshall(super.beforeMarshalling(runInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RunInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new RunInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Launches the specified Scheduled Instances. *

*

* Before you can launch a Scheduled Instance, you must purchase it and obtain an identifier using * PurchaseScheduledInstances. *

*

* You must launch a Scheduled Instance during its scheduled time period. You can't stop or reboot a Scheduled * Instance, but you can terminate it as needed. If you terminate a Scheduled Instance before the current scheduled * time period ends, you can launch it again after a few minutes. For more information, see Scheduled Instances * in the Amazon Elastic Compute Cloud User Guide. *

* * @param runScheduledInstancesRequest * Contains the parameters for RunScheduledInstances. * @return Result of the RunScheduledInstances operation returned by the service. * @sample AmazonEC2.RunScheduledInstances * @see AWS API * Documentation */ @Override public RunScheduledInstancesResult runScheduledInstances(RunScheduledInstancesRequest request) { request = beforeClientExecution(request); return executeRunScheduledInstances(request); } @SdkInternalApi final RunScheduledInstancesResult executeRunScheduledInstances(RunScheduledInstancesRequest runScheduledInstancesRequest) { ExecutionContext executionContext = createExecutionContext(runScheduledInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RunScheduledInstancesRequestMarshaller().marshall(super.beforeMarshalling(runScheduledInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RunScheduledInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new RunScheduledInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Searches for routes in the specified transit gateway route table. *

* * @param searchTransitGatewayRoutesRequest * @return Result of the SearchTransitGatewayRoutes operation returned by the service. * @sample AmazonEC2.SearchTransitGatewayRoutes * @see AWS * API Documentation */ @Override public SearchTransitGatewayRoutesResult searchTransitGatewayRoutes(SearchTransitGatewayRoutesRequest request) { request = beforeClientExecution(request); return executeSearchTransitGatewayRoutes(request); } @SdkInternalApi final SearchTransitGatewayRoutesResult executeSearchTransitGatewayRoutes(SearchTransitGatewayRoutesRequest searchTransitGatewayRoutesRequest) { ExecutionContext executionContext = createExecutionContext(searchTransitGatewayRoutesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new SearchTransitGatewayRoutesRequestMarshaller().marshall(super.beforeMarshalling(searchTransitGatewayRoutesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "SearchTransitGatewayRoutes"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new SearchTransitGatewayRoutesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Starts an Amazon EBS-backed instance that you've previously stopped. *

*

* Instances that use Amazon EBS volumes as their root devices can be quickly stopped and started. When an instance * is stopped, the compute resources are released and you are not billed for instance usage. However, your root * partition Amazon EBS volume remains and continues to persist your data, and you are charged for Amazon EBS volume * usage. You can restart your instance at any time. Every time you start your Windows instance, Amazon EC2 charges * you for a full instance hour. If you stop and restart your Windows instance, a new instance hour begins and * Amazon EC2 charges you for another full instance hour even if you are still within the same 60-minute period when * it was stopped. Every time you start your Linux instance, Amazon EC2 charges a one-minute minimum for instance * usage, and thereafter charges per second for instance usage. *

*

* Before stopping an instance, make sure it is in a state from which it can be restarted. Stopping an instance does * not preserve data stored in RAM. *

*

* Performing this operation on an instance that uses an instance store as its root device returns an error. *

*

* For more information, see Stopping * Instances in the Amazon Elastic Compute Cloud User Guide. *

* * @param startInstancesRequest * @return Result of the StartInstances operation returned by the service. * @sample AmazonEC2.StartInstances * @see AWS API * Documentation */ @Override public StartInstancesResult startInstances(StartInstancesRequest request) { request = beforeClientExecution(request); return executeStartInstances(request); } @SdkInternalApi final StartInstancesResult executeStartInstances(StartInstancesRequest startInstancesRequest) { ExecutionContext executionContext = createExecutionContext(startInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new StartInstancesRequestMarshaller().marshall(super.beforeMarshalling(startInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "StartInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new StartInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Stops an Amazon EBS-backed instance. *

*

* You can use the Stop action to hibernate an instance if the instance is enabled for * hibernation and it meets the hibernation * prerequisites. For more information, see Hibernate Your Instance in the * Amazon Elastic Compute Cloud User Guide. *

*

* We don't charge usage for a stopped instance, or data transfer fees; however, your root partition Amazon EBS * volume remains and continues to persist your data, and you are charged for Amazon EBS volume usage. Every time * you start your Windows instance, Amazon EC2 charges you for a full instance hour. If you stop and restart your * Windows instance, a new instance hour begins and Amazon EC2 charges you for another full instance hour even if * you are still within the same 60-minute period when it was stopped. Every time you start your Linux instance, * Amazon EC2 charges a one-minute minimum for instance usage, and thereafter charges per second for instance usage. *

*

* You can't start, stop, or hibernate Spot Instances, and you can't stop or hibernate instance store-backed * instances. For information about using hibernation for Spot Instances, see Hibernating Interrupted Spot Instances in the Amazon Elastic Compute Cloud User Guide. *

*

* When you stop or hibernate an instance, we shut it down. You can restart your instance at any time. Before * stopping or hibernating an instance, make sure it is in a state from which it can be restarted. Stopping an * instance does not preserve data stored in RAM, but hibernating an instance does preserve data stored in RAM. If * an instance cannot hibernate successfully, a normal shutdown occurs. *

*

* Stopping and hibernating an instance is different to rebooting or terminating it. For example, when you stop or * hibernate an instance, the root device and any other devices attached to the instance persist. When you terminate * an instance, the root device and any other devices attached during the instance launch are automatically deleted. * For more information about the differences between rebooting, stopping, hibernating, and terminating instances, * see Instance * Lifecycle in the Amazon Elastic Compute Cloud User Guide. *

*

* When you stop an instance, we attempt to shut it down forcibly after a short while. If your instance appears * stuck in the stopping state after a period of time, there may be an issue with the underlying host computer. For * more information, see Troubleshooting * Stopping Your Instance in the Amazon Elastic Compute Cloud User Guide. *

* * @param stopInstancesRequest * @return Result of the StopInstances operation returned by the service. * @sample AmazonEC2.StopInstances * @see AWS API * Documentation */ @Override public StopInstancesResult stopInstances(StopInstancesRequest request) { request = beforeClientExecution(request); return executeStopInstances(request); } @SdkInternalApi final StopInstancesResult executeStopInstances(StopInstancesRequest stopInstancesRequest) { ExecutionContext executionContext = createExecutionContext(stopInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new StopInstancesRequestMarshaller().marshall(super.beforeMarshalling(stopInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "StopInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler(new StopInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Terminates active Client VPN endpoint connections. This action can be used to terminate a specific client * connection, or up to five connections established by a specific user. *

* * @param terminateClientVpnConnectionsRequest * @return Result of the TerminateClientVpnConnections operation returned by the service. * @sample AmazonEC2.TerminateClientVpnConnections * @see AWS API Documentation */ @Override public TerminateClientVpnConnectionsResult terminateClientVpnConnections(TerminateClientVpnConnectionsRequest request) { request = beforeClientExecution(request); return executeTerminateClientVpnConnections(request); } @SdkInternalApi final TerminateClientVpnConnectionsResult executeTerminateClientVpnConnections(TerminateClientVpnConnectionsRequest terminateClientVpnConnectionsRequest) { ExecutionContext executionContext = createExecutionContext(terminateClientVpnConnectionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new TerminateClientVpnConnectionsRequestMarshaller().marshall(super.beforeMarshalling(terminateClientVpnConnectionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "TerminateClientVpnConnections"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new TerminateClientVpnConnectionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Shuts down the specified instances. This operation is idempotent; if you terminate an instance more than once, * each call succeeds. *

*

* If you specify multiple instances and the request fails (for example, because of a single incorrect instance ID), * none of the instances are terminated. *

*

* Terminated instances remain visible after termination (for approximately one hour). *

*

* By default, Amazon EC2 deletes all EBS volumes that were attached when the instance launched. Volumes attached * after instance launch continue running. *

*

* You can stop, start, and terminate EBS-backed instances. You can only terminate instance store-backed instances. * What happens to an instance differs if you stop it or terminate it. For example, when you stop an instance, the * root device and any other devices attached to the instance persist. When you terminate an instance, any attached * EBS volumes with the DeleteOnTermination block device mapping parameter set to true are * automatically deleted. For more information about the differences between stopping and terminating instances, see * Instance Lifecycle * in the Amazon Elastic Compute Cloud User Guide. *

*

* For more information about troubleshooting, see Troubleshooting Terminating Your Instance in the Amazon Elastic Compute Cloud User Guide. *

* * @param terminateInstancesRequest * @return Result of the TerminateInstances operation returned by the service. * @sample AmazonEC2.TerminateInstances * @see AWS API * Documentation */ @Override public TerminateInstancesResult terminateInstances(TerminateInstancesRequest request) { request = beforeClientExecution(request); return executeTerminateInstances(request); } @SdkInternalApi final TerminateInstancesResult executeTerminateInstances(TerminateInstancesRequest terminateInstancesRequest) { ExecutionContext executionContext = createExecutionContext(terminateInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new TerminateInstancesRequestMarshaller().marshall(super.beforeMarshalling(terminateInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "TerminateInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new TerminateInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Unassigns one or more IPv6 addresses from a network interface. *

* * @param unassignIpv6AddressesRequest * @return Result of the UnassignIpv6Addresses operation returned by the service. * @sample AmazonEC2.UnassignIpv6Addresses * @see AWS API * Documentation */ @Override public UnassignIpv6AddressesResult unassignIpv6Addresses(UnassignIpv6AddressesRequest request) { request = beforeClientExecution(request); return executeUnassignIpv6Addresses(request); } @SdkInternalApi final UnassignIpv6AddressesResult executeUnassignIpv6Addresses(UnassignIpv6AddressesRequest unassignIpv6AddressesRequest) { ExecutionContext executionContext = createExecutionContext(unassignIpv6AddressesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UnassignIpv6AddressesRequestMarshaller().marshall(super.beforeMarshalling(unassignIpv6AddressesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UnassignIpv6Addresses"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new UnassignIpv6AddressesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Unassigns one or more secondary private IP addresses from a network interface. *

* * @param unassignPrivateIpAddressesRequest * Contains the parameters for UnassignPrivateIpAddresses. * @return Result of the UnassignPrivateIpAddresses operation returned by the service. * @sample AmazonEC2.UnassignPrivateIpAddresses * @see AWS * API Documentation */ @Override public UnassignPrivateIpAddressesResult unassignPrivateIpAddresses(UnassignPrivateIpAddressesRequest request) { request = beforeClientExecution(request); return executeUnassignPrivateIpAddresses(request); } @SdkInternalApi final UnassignPrivateIpAddressesResult executeUnassignPrivateIpAddresses(UnassignPrivateIpAddressesRequest unassignPrivateIpAddressesRequest) { ExecutionContext executionContext = createExecutionContext(unassignPrivateIpAddressesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UnassignPrivateIpAddressesRequestMarshaller().marshall(super.beforeMarshalling(unassignPrivateIpAddressesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UnassignPrivateIpAddresses"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new UnassignPrivateIpAddressesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disables detailed monitoring for a running instance. For more information, see Monitoring Your Instances and * Volumes in the Amazon Elastic Compute Cloud User Guide. *

* * @param unmonitorInstancesRequest * @return Result of the UnmonitorInstances operation returned by the service. * @sample AmazonEC2.UnmonitorInstances * @see AWS API * Documentation */ @Override public UnmonitorInstancesResult unmonitorInstances(UnmonitorInstancesRequest request) { request = beforeClientExecution(request); return executeUnmonitorInstances(request); } @SdkInternalApi final UnmonitorInstancesResult executeUnmonitorInstances(UnmonitorInstancesRequest unmonitorInstancesRequest) { ExecutionContext executionContext = createExecutionContext(unmonitorInstancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UnmonitorInstancesRequestMarshaller().marshall(super.beforeMarshalling(unmonitorInstancesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UnmonitorInstances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new UnmonitorInstancesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* [VPC only] Updates the description of an egress (outbound) security group rule. You can replace an existing * description, or add a description to a rule that did not have one previously. *

*

* You specify the description as part of the IP permissions structure. You can remove a description for a security * group rule by omitting the description parameter in the request. *

* * @param updateSecurityGroupRuleDescriptionsEgressRequest * @return Result of the UpdateSecurityGroupRuleDescriptionsEgress operation returned by the service. * @sample AmazonEC2.UpdateSecurityGroupRuleDescriptionsEgress * @see AWS API Documentation */ @Override public UpdateSecurityGroupRuleDescriptionsEgressResult updateSecurityGroupRuleDescriptionsEgress(UpdateSecurityGroupRuleDescriptionsEgressRequest request) { request = beforeClientExecution(request); return executeUpdateSecurityGroupRuleDescriptionsEgress(request); } @SdkInternalApi final UpdateSecurityGroupRuleDescriptionsEgressResult executeUpdateSecurityGroupRuleDescriptionsEgress( UpdateSecurityGroupRuleDescriptionsEgressRequest updateSecurityGroupRuleDescriptionsEgressRequest) { ExecutionContext executionContext = createExecutionContext(updateSecurityGroupRuleDescriptionsEgressRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateSecurityGroupRuleDescriptionsEgressRequestMarshaller().marshall(super .beforeMarshalling(updateSecurityGroupRuleDescriptionsEgressRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateSecurityGroupRuleDescriptionsEgress"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new UpdateSecurityGroupRuleDescriptionsEgressResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates the description of an ingress (inbound) security group rule. You can replace an existing description, or * add a description to a rule that did not have one previously. *

*

* You specify the description as part of the IP permissions structure. You can remove a description for a security * group rule by omitting the description parameter in the request. *

* * @param updateSecurityGroupRuleDescriptionsIngressRequest * @return Result of the UpdateSecurityGroupRuleDescriptionsIngress operation returned by the service. * @sample AmazonEC2.UpdateSecurityGroupRuleDescriptionsIngress * @see AWS API Documentation */ @Override public UpdateSecurityGroupRuleDescriptionsIngressResult updateSecurityGroupRuleDescriptionsIngress(UpdateSecurityGroupRuleDescriptionsIngressRequest request) { request = beforeClientExecution(request); return executeUpdateSecurityGroupRuleDescriptionsIngress(request); } @SdkInternalApi final UpdateSecurityGroupRuleDescriptionsIngressResult executeUpdateSecurityGroupRuleDescriptionsIngress( UpdateSecurityGroupRuleDescriptionsIngressRequest updateSecurityGroupRuleDescriptionsIngressRequest) { ExecutionContext executionContext = createExecutionContext(updateSecurityGroupRuleDescriptionsIngressRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateSecurityGroupRuleDescriptionsIngressRequestMarshaller().marshall(super .beforeMarshalling(updateSecurityGroupRuleDescriptionsIngressRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateSecurityGroupRuleDescriptionsIngress"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new UpdateSecurityGroupRuleDescriptionsIngressResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Stops advertising an IPv4 address range that is provisioned as an address pool. *

*

* You can perform this operation at most once every 10 seconds, even if you specify different address ranges each * time. *

*

* It can take a few minutes before traffic to the specified addresses stops routing to AWS because of BGP * propagation delays. *

* * @param withdrawByoipCidrRequest * @return Result of the WithdrawByoipCidr operation returned by the service. * @sample AmazonEC2.WithdrawByoipCidr * @see AWS API * Documentation */ @Override public WithdrawByoipCidrResult withdrawByoipCidr(WithdrawByoipCidrRequest request) { request = beforeClientExecution(request); return executeWithdrawByoipCidr(request); } @SdkInternalApi final WithdrawByoipCidrResult executeWithdrawByoipCidr(WithdrawByoipCidrRequest withdrawByoipCidrRequest) { ExecutionContext executionContext = createExecutionContext(withdrawByoipCidrRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new WithdrawByoipCidrRequestMarshaller().marshall(super.beforeMarshalling(withdrawByoipCidrRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "EC2"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "WithdrawByoipCidr"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new WithdrawByoipCidrResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** * Checks whether you have the required permissions for the provided Amazon EC2 operation, without actually running * it. The returned DryRunResult object contains the information of whether the dry-run was successful. This method * will throw exception when the service response does not clearly indicate whether you have the permission. * * @param request * The request object for any Amazon EC2 operation supported with dry-run. * * @return A DryRunResult object that contains the information of whether the dry-run was successful. * * @throws AmazonClientException * If any internal errors are encountered inside the client while attempting to make the request or handle * the response. Or if the service response does not clearly indicate whether you have the permission. * @throws AmazonServiceException * If an error response is returned by Amazon EC2 indicating either a problem with the data in the request, * or a server side issue. */ public DryRunResult dryRun(DryRunSupportedRequest request) throws AmazonServiceException, AmazonClientException { Request dryRunRequest = request.getDryRunRequest(); ExecutionContext executionContext = createExecutionContext(dryRunRequest); try { invoke(dryRunRequest, new StaxResponseHandler(new VoidStaxUnmarshaller()), executionContext); throw new AmazonClientException("Unrecognized service response for the dry-run request."); } catch (AmazonServiceException ase) { if (ase.getErrorCode().equals("DryRunOperation") && ase.getStatusCode() == 412) { return new DryRunResult(true, request, ase.getMessage(), ase); } else if (ase.getErrorCode().equals("UnauthorizedOperation") && ase.getStatusCode() == 403) { return new DryRunResult(false, request, ase.getMessage(), ase); } else if (ase.getErrorCode().equals("AuthFailure")) { return new DryRunResult(false, request, ase.getMessage(), ase); } throw new AmazonClientException("Unrecognized service response for the dry-run request.", ase); } } /** * Returns additional metadata for a previously executed successful, request, typically used for debugging issues * where a service isn't acting as expected. This data isn't considered part of the result data returned by an * operation, so it's available through this separate, diagnostic interface. *

* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic * information for an executed request, you should use this method to retrieve it as soon as possible after * executing the request. * * @param request * The originally executed request * * @return The response metadata for the specified request, or null if none is available. */ public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request) { return client.getResponseMetadataForRequest(request); } /** * Normal invoke with authentication. Credentials are required and may be overriden at the request level. **/ private Response invoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext) { return invoke(request, responseHandler, executionContext, null, null); } /** * Normal invoke with authentication. Credentials are required and may be overriden at the request level. **/ private Response invoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext, URI cachedEndpoint, URI uriFromEndpointTrait) { executionContext.setCredentialsProvider(CredentialUtils.getCredentialsProvider(request.getOriginalRequest(), awsCredentialsProvider)); return doInvoke(request, responseHandler, executionContext, cachedEndpoint, uriFromEndpointTrait); } /** * Invoke with no authentication. Credentials are not required and any credentials set on the client or request will * be ignored for this operation. **/ private Response anonymousInvoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext) { return doInvoke(request, responseHandler, executionContext, null, null); } /** * Invoke the request using the http client. Assumes credentials (or lack thereof) have been configured in the * ExecutionContext beforehand. **/ private Response doInvoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext, URI discoveredEndpoint, URI uriFromEndpointTrait) { if (discoveredEndpoint != null) { request.setEndpoint(discoveredEndpoint); request.getOriginalRequest().getRequestClientOptions().appendUserAgent("endpoint-discovery"); } else if (uriFromEndpointTrait != null) { request.setEndpoint(uriFromEndpointTrait); } else { request.setEndpoint(endpoint); } request.setTimeOffset(timeOffset); DefaultErrorResponseHandler errorResponseHandler = new DefaultErrorResponseHandler(exceptionUnmarshallers); return client.execute(request, responseHandler, errorResponseHandler, executionContext); } @Override public AmazonEC2Waiters waiters() { if (waiters == null) { synchronized (this) { if (waiters == null) { waiters = new AmazonEC2Waiters(this); } } } return waiters; } @Override public void shutdown() { super.shutdown(); if (waiters != null) { waiters.shutdown(); } } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy