
com.amazonaws.services.apigateway.AmazonApiGatewayClient Maven / Gradle / Ivy
Show all versions of aws-java-sdk-osgi Show documentation
/*
* Copyright 2011-2016 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.apigateway;
import org.w3c.dom.*;
import java.net.*;
import java.util.*;
import java.util.Map.Entry;
import org.apache.commons.logging.*;
import com.amazonaws.*;
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.AmazonServiceException;
import com.amazonaws.services.apigateway.model.*;
import com.amazonaws.services.apigateway.model.transform.*;
/**
* Client for accessing Amazon API Gateway. All service calls made using this
* client are blocking, and will not return until the service call completes.
*
* Amazon API Gateway
*
* Amazon API Gateway helps developers deliver robust, secure and scalable
* mobile and web application backends. Amazon API Gateway allows developers to
* securely connect mobile and web applications to APIs that run on AWS Lambda,
* Amazon EC2, or other publicly addressable web services that are hosted
* outside of AWS.
*
*/
@ThreadSafe
public class AmazonApiGatewayClient extends AmazonWebServiceClient implements
AmazonApiGateway {
/** Provider for AWS credentials. */
private final AWSCredentialsProvider awsCredentialsProvider;
private static final Log log = LogFactory.getLog(AmazonApiGateway.class);
/** Default signing name for the service. */
private static final String DEFAULT_SIGNING_NAME = "apigateway";
/**
* Client configuration factory providing ClientConfigurations tailored to
* this client
*/
protected static final ClientConfigurationFactory configFactory = new ClientConfigurationFactory();
private final SdkJsonProtocolFactory protocolFactory = new SdkJsonProtocolFactory(
new JsonClientMetadata()
.withProtocolVersion("1.1")
.withSupportsCbor(false)
.withContentTypeOverride("")
.addErrorMetadata(
new JsonErrorShapeMetadata()
.withErrorCode("NotFoundException")
.withModeledClass(
com.amazonaws.services.apigateway.model.NotFoundException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata()
.withErrorCode("UnauthorizedException")
.withModeledClass(
com.amazonaws.services.apigateway.model.UnauthorizedException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata()
.withErrorCode("LimitExceededException")
.withModeledClass(
com.amazonaws.services.apigateway.model.LimitExceededException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata()
.withErrorCode("ConflictException")
.withModeledClass(
com.amazonaws.services.apigateway.model.ConflictException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata()
.withErrorCode(
"ServiceUnavailableException")
.withModeledClass(
com.amazonaws.services.apigateway.model.ServiceUnavailableException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata()
.withErrorCode("TooManyRequestsException")
.withModeledClass(
com.amazonaws.services.apigateway.model.TooManyRequestsException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata()
.withErrorCode("BadRequestException")
.withModeledClass(
com.amazonaws.services.apigateway.model.BadRequestException.class))
.withBaseServiceExceptionClass(
com.amazonaws.services.apigateway.model.AmazonApiGatewayException.class));
/**
* Constructs a new client to invoke service methods on Amazon API Gateway.
* 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
*/
public AmazonApiGatewayClient() {
this(new DefaultAWSCredentialsProviderChain(), configFactory
.getConfig());
}
/**
* Constructs a new client to invoke service methods on Amazon API Gateway.
* 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 API Gateway (ex: proxy settings, retry counts,
* etc.).
*
* @see DefaultAWSCredentialsProviderChain
*/
public AmazonApiGatewayClient(ClientConfiguration clientConfiguration) {
this(new DefaultAWSCredentialsProviderChain(), clientConfiguration);
}
/**
* Constructs a new client to invoke service methods on Amazon API Gateway
* 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.
*/
public AmazonApiGatewayClient(AWSCredentials awsCredentials) {
this(awsCredentials, configFactory.getConfig());
}
/**
* Constructs a new client to invoke service methods on Amazon API Gateway
* 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 API Gateway (ex: proxy settings, retry counts,
* etc.).
*/
public AmazonApiGatewayClient(AWSCredentials awsCredentials,
ClientConfiguration clientConfiguration) {
super(clientConfiguration);
this.awsCredentialsProvider = new StaticCredentialsProvider(
awsCredentials);
init();
}
/**
* Constructs a new client to invoke service methods on Amazon API Gateway
* 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.
*/
public AmazonApiGatewayClient(AWSCredentialsProvider awsCredentialsProvider) {
this(awsCredentialsProvider, configFactory.getConfig());
}
/**
* Constructs a new client to invoke service methods on Amazon API Gateway
* 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 API Gateway (ex: proxy settings, retry counts,
* etc.).
*/
public AmazonApiGatewayClient(
AWSCredentialsProvider awsCredentialsProvider,
ClientConfiguration clientConfiguration) {
this(awsCredentialsProvider, clientConfiguration, null);
}
/**
* Constructs a new client to invoke service methods on Amazon API Gateway
* 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 API Gateway (ex: proxy settings, retry counts,
* etc.).
* @param requestMetricCollector
* optional request metric collector
*/
public AmazonApiGatewayClient(
AWSCredentialsProvider awsCredentialsProvider,
ClientConfiguration clientConfiguration,
RequestMetricCollector requestMetricCollector) {
super(clientConfiguration, requestMetricCollector);
this.awsCredentialsProvider = awsCredentialsProvider;
init();
}
/**
* Constructs a new client to invoke service methods on Amazon API Gateway
* 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.
*/
AmazonApiGatewayClient(AwsSyncClientParams clientParams) {
super(clientParams);
this.awsCredentialsProvider = clientParams.getCredentialsProvider();
init();
}
private void init() {
setServiceNameIntern(DEFAULT_SIGNING_NAME);
setEndpointPrefix(ENDPOINT_PREFIX);
// calling this.setEndPoint(...) will also modify the signer accordingly
setEndpoint("https://apigateway.us-east-1.amazonaws.com");
HandlerChainFactory chainFactory = new HandlerChainFactory();
requestHandler2s
.addAll(chainFactory
.newRequestHandlerChain("/com/amazonaws/services/apigateway/request.handlers"));
requestHandler2s
.addAll(chainFactory
.newRequestHandler2Chain("/com/amazonaws/services/apigateway/request.handler2s"));
}
/**
*
* Create an ApiKey resource.
*
*
* @param createApiKeyRequest
* Request to create an ApiKey resource.
* @return Result of the CreateApiKey operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @throws LimitExceededException
* @throws BadRequestException
* @sample AmazonApiGateway.CreateApiKey
*/
@Override
public CreateApiKeyResult createApiKey(
CreateApiKeyRequest createApiKeyRequest) {
ExecutionContext executionContext = createExecutionContext(createApiKeyRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new CreateApiKeyRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(createApiKeyRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new CreateApiKeyResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Adds a new Authorizer resource to an existing RestApi
* resource.
*
*
* @param createAuthorizerRequest
* Request to add a new Authorizer to an existing
* RestApi resource.
* @return Result of the CreateAuthorizer operation returned by the service.
* @throws BadRequestException
* @throws UnauthorizedException
* @throws NotFoundException
* @throws LimitExceededException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.CreateAuthorizer
*/
@Override
public CreateAuthorizerResult createAuthorizer(
CreateAuthorizerRequest createAuthorizerRequest) {
ExecutionContext executionContext = createExecutionContext(createAuthorizerRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new CreateAuthorizerRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(createAuthorizerRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new CreateAuthorizerResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Creates a new BasePathMapping resource.
*
*
* @param createBasePathMappingRequest
* Requests Amazon API Gateway to create a new BasePathMapping
* resource.
* @return Result of the CreateBasePathMapping operation returned by the
* service.
* @throws UnauthorizedException
* @throws ConflictException
* @throws BadRequestException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.CreateBasePathMapping
*/
@Override
public CreateBasePathMappingResult createBasePathMapping(
CreateBasePathMappingRequest createBasePathMappingRequest) {
ExecutionContext executionContext = createExecutionContext(createBasePathMappingRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new CreateBasePathMappingRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(createBasePathMappingRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new CreateBasePathMappingResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Creates a Deployment resource, which makes a specified
* RestApi callable over the internet.
*
*
* @param createDeploymentRequest
* Requests Amazon API Gateway to create a Deployment
* resource.
* @return Result of the CreateDeployment operation returned by the service.
* @throws UnauthorizedException
* @throws BadRequestException
* @throws NotFoundException
* @throws ConflictException
* @throws LimitExceededException
* @throws TooManyRequestsException
* @throws ServiceUnavailableException
* @sample AmazonApiGateway.CreateDeployment
*/
@Override
public CreateDeploymentResult createDeployment(
CreateDeploymentRequest createDeploymentRequest) {
ExecutionContext executionContext = createExecutionContext(createDeploymentRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new CreateDeploymentRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(createDeploymentRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new CreateDeploymentResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Creates a new domain name.
*
*
* @param createDomainNameRequest
* A request to create a new domain name.
* @return Result of the CreateDomainName operation returned by the service.
* @throws UnauthorizedException
* @throws BadRequestException
* @throws ConflictException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.CreateDomainName
*/
@Override
public CreateDomainNameResult createDomainName(
CreateDomainNameRequest createDomainNameRequest) {
ExecutionContext executionContext = createExecutionContext(createDomainNameRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new CreateDomainNameRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(createDomainNameRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new CreateDomainNameResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Adds a new Model resource to an existing RestApi resource.
*
*
* @param createModelRequest
* Request to add a new Model to an existing RestApi
* resource.
* @return Result of the CreateModel operation returned by the service.
* @throws BadRequestException
* @throws UnauthorizedException
* @throws NotFoundException
* @throws ConflictException
* @throws LimitExceededException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.CreateModel
*/
@Override
public CreateModelResult createModel(CreateModelRequest createModelRequest) {
ExecutionContext executionContext = createExecutionContext(createModelRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new CreateModelRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(createModelRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new CreateModelResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Creates a Resource resource.
*
*
* @param createResourceRequest
* Requests Amazon API Gateway to create a Resource resource.
* @return Result of the CreateResource operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws ConflictException
* @throws LimitExceededException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.CreateResource
*/
@Override
public CreateResourceResult createResource(
CreateResourceRequest createResourceRequest) {
ExecutionContext executionContext = createExecutionContext(createResourceRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new CreateResourceRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(createResourceRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new CreateResourceResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Creates a new RestApi resource.
*
*
* @param createRestApiRequest
* The POST Request to add a new RestApi resource to your
* collection.
* @return Result of the CreateRestApi operation returned by the service.
* @throws UnauthorizedException
* @throws LimitExceededException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.CreateRestApi
*/
@Override
public CreateRestApiResult createRestApi(
CreateRestApiRequest createRestApiRequest) {
ExecutionContext executionContext = createExecutionContext(createRestApiRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new CreateRestApiRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(createRestApiRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new CreateRestApiResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Creates a new Stage resource that references a pre-existing
* Deployment for the API.
*
*
* @param createStageRequest
* Requests Amazon API Gateway to create a Stage resource.
* @return Result of the CreateStage operation returned by the service.
* @throws UnauthorizedException
* @throws BadRequestException
* @throws NotFoundException
* @throws ConflictException
* @throws LimitExceededException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.CreateStage
*/
@Override
public CreateStageResult createStage(CreateStageRequest createStageRequest) {
ExecutionContext executionContext = createExecutionContext(createStageRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new CreateStageRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(createStageRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new CreateStageResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Deletes the ApiKey resource.
*
*
* @param deleteApiKeyRequest
* A request to delete the ApiKey resource.
* @return Result of the DeleteApiKey operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.DeleteApiKey
*/
@Override
public DeleteApiKeyResult deleteApiKey(
DeleteApiKeyRequest deleteApiKeyRequest) {
ExecutionContext executionContext = createExecutionContext(deleteApiKeyRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new DeleteApiKeyRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(deleteApiKeyRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new DeleteApiKeyResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Deletes an existing Authorizer resource.
*
*
* @param deleteAuthorizerRequest
* Request to delete an existing Authorizer resource.
* @return Result of the DeleteAuthorizer operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @throws BadRequestException
* @throws ConflictException
* @sample AmazonApiGateway.DeleteAuthorizer
*/
@Override
public DeleteAuthorizerResult deleteAuthorizer(
DeleteAuthorizerRequest deleteAuthorizerRequest) {
ExecutionContext executionContext = createExecutionContext(deleteAuthorizerRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new DeleteAuthorizerRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(deleteAuthorizerRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new DeleteAuthorizerResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Deletes the BasePathMapping resource.
*
*
* @param deleteBasePathMappingRequest
* A request to delete the BasePathMapping resource.
* @return Result of the DeleteBasePathMapping operation returned by the
* service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.DeleteBasePathMapping
*/
@Override
public DeleteBasePathMappingResult deleteBasePathMapping(
DeleteBasePathMappingRequest deleteBasePathMappingRequest) {
ExecutionContext executionContext = createExecutionContext(deleteBasePathMappingRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new DeleteBasePathMappingRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(deleteBasePathMappingRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new DeleteBasePathMappingResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Deletes the ClientCertificate resource.
*
*
* @param deleteClientCertificateRequest
* A request to delete the ClientCertificate resource.
* @return Result of the DeleteClientCertificate operation returned by the
* service.
* @throws UnauthorizedException
* @throws TooManyRequestsException
* @throws BadRequestException
* @throws NotFoundException
* @sample AmazonApiGateway.DeleteClientCertificate
*/
@Override
public DeleteClientCertificateResult deleteClientCertificate(
DeleteClientCertificateRequest deleteClientCertificateRequest) {
ExecutionContext executionContext = createExecutionContext(deleteClientCertificateRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new DeleteClientCertificateRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(deleteClientCertificateRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new DeleteClientCertificateResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Deletes a Deployment resource. Deleting a deployment will only
* succeed if there are no Stage resources associated with it.
*
*
* @param deleteDeploymentRequest
* Requests Amazon API Gateway to delete a Deployment
* resource.
* @return Result of the DeleteDeployment operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.DeleteDeployment
*/
@Override
public DeleteDeploymentResult deleteDeployment(
DeleteDeploymentRequest deleteDeploymentRequest) {
ExecutionContext executionContext = createExecutionContext(deleteDeploymentRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new DeleteDeploymentRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(deleteDeploymentRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new DeleteDeploymentResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Deletes the DomainName resource.
*
*
* @param deleteDomainNameRequest
* A request to delete the DomainName resource.
* @return Result of the DeleteDomainName operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.DeleteDomainName
*/
@Override
public DeleteDomainNameResult deleteDomainName(
DeleteDomainNameRequest deleteDomainNameRequest) {
ExecutionContext executionContext = createExecutionContext(deleteDomainNameRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new DeleteDomainNameRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(deleteDomainNameRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new DeleteDomainNameResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Represents a delete integration.
*
*
* @param deleteIntegrationRequest
* Represents a delete integration request.
* @return Result of the DeleteIntegration operation returned by the
* service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.DeleteIntegration
*/
@Override
public DeleteIntegrationResult deleteIntegration(
DeleteIntegrationRequest deleteIntegrationRequest) {
ExecutionContext executionContext = createExecutionContext(deleteIntegrationRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new DeleteIntegrationRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(deleteIntegrationRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new DeleteIntegrationResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Represents a delete integration response.
*
*
* @param deleteIntegrationResponseRequest
* Represents a delete integration response request.
* @return Result of the DeleteIntegrationResponse operation returned by the
* service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.DeleteIntegrationResponse
*/
@Override
public DeleteIntegrationResponseResult deleteIntegrationResponse(
DeleteIntegrationResponseRequest deleteIntegrationResponseRequest) {
ExecutionContext executionContext = createExecutionContext(deleteIntegrationResponseRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new DeleteIntegrationResponseRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(deleteIntegrationResponseRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new DeleteIntegrationResponseResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Deletes an existing Method resource.
*
*
* @param deleteMethodRequest
* Request to delete an existing Method resource.
* @return Result of the DeleteMethod operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.DeleteMethod
*/
@Override
public DeleteMethodResult deleteMethod(
DeleteMethodRequest deleteMethodRequest) {
ExecutionContext executionContext = createExecutionContext(deleteMethodRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new DeleteMethodRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(deleteMethodRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new DeleteMethodResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Deletes an existing MethodResponse resource.
*
*
* @param deleteMethodResponseRequest
* A request to delete an existing MethodResponse resource.
* @return Result of the DeleteMethodResponse operation returned by the
* service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.DeleteMethodResponse
*/
@Override
public DeleteMethodResponseResult deleteMethodResponse(
DeleteMethodResponseRequest deleteMethodResponseRequest) {
ExecutionContext executionContext = createExecutionContext(deleteMethodResponseRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new DeleteMethodResponseRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(deleteMethodResponseRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new DeleteMethodResponseResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Deletes a model.
*
*
* @param deleteModelRequest
* Request to delete an existing model in an existing RestApi
* resource.
* @return Result of the DeleteModel operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @throws BadRequestException
* @throws ConflictException
* @sample AmazonApiGateway.DeleteModel
*/
@Override
public DeleteModelResult deleteModel(DeleteModelRequest deleteModelRequest) {
ExecutionContext executionContext = createExecutionContext(deleteModelRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new DeleteModelRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(deleteModelRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new DeleteModelResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Deletes a Resource resource.
*
*
* @param deleteResourceRequest
* Request to delete a Resource.
* @return Result of the DeleteResource operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws BadRequestException
* @throws ConflictException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.DeleteResource
*/
@Override
public DeleteResourceResult deleteResource(
DeleteResourceRequest deleteResourceRequest) {
ExecutionContext executionContext = createExecutionContext(deleteResourceRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new DeleteResourceRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(deleteResourceRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new DeleteResourceResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Deletes the specified API.
*
*
* @param deleteRestApiRequest
* Request to delete the specified API from your collection.
* @return Result of the DeleteRestApi operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @throws BadRequestException
* @sample AmazonApiGateway.DeleteRestApi
*/
@Override
public DeleteRestApiResult deleteRestApi(
DeleteRestApiRequest deleteRestApiRequest) {
ExecutionContext executionContext = createExecutionContext(deleteRestApiRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new DeleteRestApiRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(deleteRestApiRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new DeleteRestApiResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Deletes a Stage resource.
*
*
* @param deleteStageRequest
* Requests Amazon API Gateway to delete a Stage resource.
* @return Result of the DeleteStage operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @throws BadRequestException
* @sample AmazonApiGateway.DeleteStage
*/
@Override
public DeleteStageResult deleteStage(DeleteStageRequest deleteStageRequest) {
ExecutionContext executionContext = createExecutionContext(deleteStageRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new DeleteStageRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(deleteStageRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new DeleteStageResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Flushes all authorizer cache entries on a stage.
*
*
* @param flushStageAuthorizersCacheRequest
* Request to flush authorizer cache entries on a specified stage.
* @return Result of the FlushStageAuthorizersCache operation returned by
* the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.FlushStageAuthorizersCache
*/
@Override
public FlushStageAuthorizersCacheResult flushStageAuthorizersCache(
FlushStageAuthorizersCacheRequest flushStageAuthorizersCacheRequest) {
ExecutionContext executionContext = createExecutionContext(flushStageAuthorizersCacheRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new FlushStageAuthorizersCacheRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(flushStageAuthorizersCacheRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new FlushStageAuthorizersCacheResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Flushes a stage's cache.
*
*
* @param flushStageCacheRequest
* Requests Amazon API Gateway to flush a stage's cache.
* @return Result of the FlushStageCache operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.FlushStageCache
*/
@Override
public FlushStageCacheResult flushStageCache(
FlushStageCacheRequest flushStageCacheRequest) {
ExecutionContext executionContext = createExecutionContext(flushStageCacheRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new FlushStageCacheRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(flushStageCacheRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new FlushStageCacheResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Generates a ClientCertificate resource.
*
*
* @param generateClientCertificateRequest
* A request to generate a ClientCertificate resource.
* @return Result of the GenerateClientCertificate operation returned by the
* service.
* @throws UnauthorizedException
* @throws TooManyRequestsException
* @throws LimitExceededException
* @sample AmazonApiGateway.GenerateClientCertificate
*/
@Override
public GenerateClientCertificateResult generateClientCertificate(
GenerateClientCertificateRequest generateClientCertificateRequest) {
ExecutionContext executionContext = createExecutionContext(generateClientCertificateRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GenerateClientCertificateRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(generateClientCertificateRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GenerateClientCertificateResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Gets information about the current Account resource.
*
*
* @param getAccountRequest
* Requests Amazon API Gateway to get information about the current
* Account resource.
* @return Result of the GetAccount operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetAccount
*/
@Override
public GetAccountResult getAccount(GetAccountRequest getAccountRequest) {
ExecutionContext executionContext = createExecutionContext(getAccountRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetAccountRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getAccountRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetAccountResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Gets information about the current ApiKey resource.
*
*
* @param getApiKeyRequest
* A request to get information about the current ApiKey
* resource.
* @return Result of the GetApiKey operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetApiKey
*/
@Override
public GetApiKeyResult getApiKey(GetApiKeyRequest getApiKeyRequest) {
ExecutionContext executionContext = createExecutionContext(getApiKeyRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetApiKeyRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getApiKeyRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetApiKeyResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Gets information about the current ApiKeys resource.
*
*
* @param getApiKeysRequest
* A request to get information about the current ApiKeys
* resource.
* @return Result of the GetApiKeys operation returned by the service.
* @throws BadRequestException
* @throws UnauthorizedException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetApiKeys
*/
@Override
public GetApiKeysResult getApiKeys(GetApiKeysRequest getApiKeysRequest) {
ExecutionContext executionContext = createExecutionContext(getApiKeysRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetApiKeysRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getApiKeysRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetApiKeysResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Describe an existing Authorizer resource.
*
*
* @param getAuthorizerRequest
* Request to describe an existing Authorizer resource.
* @return Result of the GetAuthorizer operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetAuthorizer
*/
@Override
public GetAuthorizerResult getAuthorizer(
GetAuthorizerRequest getAuthorizerRequest) {
ExecutionContext executionContext = createExecutionContext(getAuthorizerRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetAuthorizerRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getAuthorizerRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetAuthorizerResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Describe an existing Authorizers resource.
*
*
* @param getAuthorizersRequest
* Request to describe an existing Authorizers resource.
* @return Result of the GetAuthorizers operation returned by the service.
* @throws BadRequestException
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetAuthorizers
*/
@Override
public GetAuthorizersResult getAuthorizers(
GetAuthorizersRequest getAuthorizersRequest) {
ExecutionContext executionContext = createExecutionContext(getAuthorizersRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetAuthorizersRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(getAuthorizersRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetAuthorizersResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Describe a BasePathMapping resource.
*
*
* @param getBasePathMappingRequest
* Request to describe a BasePathMapping resource.
* @return Result of the GetBasePathMapping operation returned by the
* service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetBasePathMapping
*/
@Override
public GetBasePathMappingResult getBasePathMapping(
GetBasePathMappingRequest getBasePathMappingRequest) {
ExecutionContext executionContext = createExecutionContext(getBasePathMappingRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetBasePathMappingRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(getBasePathMappingRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetBasePathMappingResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Represents a collection of BasePathMapping resources.
*
*
* @param getBasePathMappingsRequest
* A request to get information about a collection of
* BasePathMapping resources.
* @return Result of the GetBasePathMappings operation returned by the
* service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetBasePathMappings
*/
@Override
public GetBasePathMappingsResult getBasePathMappings(
GetBasePathMappingsRequest getBasePathMappingsRequest) {
ExecutionContext executionContext = createExecutionContext(getBasePathMappingsRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetBasePathMappingsRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(getBasePathMappingsRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetBasePathMappingsResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Gets information about the current ClientCertificate resource.
*
*
* @param getClientCertificateRequest
* A request to get information about the current
* ClientCertificate resource.
* @return Result of the GetClientCertificate operation returned by the
* service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetClientCertificate
*/
@Override
public GetClientCertificateResult getClientCertificate(
GetClientCertificateRequest getClientCertificateRequest) {
ExecutionContext executionContext = createExecutionContext(getClientCertificateRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetClientCertificateRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(getClientCertificateRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetClientCertificateResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Gets a collection of ClientCertificate resources.
*
*
* @param getClientCertificatesRequest
* A request to get information about a collection of
* ClientCertificate resources.
* @return Result of the GetClientCertificates operation returned by the
* service.
* @throws BadRequestException
* @throws UnauthorizedException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetClientCertificates
*/
@Override
public GetClientCertificatesResult getClientCertificates(
GetClientCertificatesRequest getClientCertificatesRequest) {
ExecutionContext executionContext = createExecutionContext(getClientCertificatesRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetClientCertificatesRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(getClientCertificatesRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetClientCertificatesResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Gets information about a Deployment resource.
*
*
* @param getDeploymentRequest
* Requests Amazon API Gateway to get information about a
* Deployment resource.
* @return Result of the GetDeployment operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @throws ServiceUnavailableException
* @sample AmazonApiGateway.GetDeployment
*/
@Override
public GetDeploymentResult getDeployment(
GetDeploymentRequest getDeploymentRequest) {
ExecutionContext executionContext = createExecutionContext(getDeploymentRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetDeploymentRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getDeploymentRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetDeploymentResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Gets information about a Deployments collection.
*
*
* @param getDeploymentsRequest
* Requests Amazon API Gateway to get information about a
* Deployments collection.
* @return Result of the GetDeployments operation returned by the service.
* @throws BadRequestException
* @throws UnauthorizedException
* @throws TooManyRequestsException
* @throws ServiceUnavailableException
* @sample AmazonApiGateway.GetDeployments
*/
@Override
public GetDeploymentsResult getDeployments(
GetDeploymentsRequest getDeploymentsRequest) {
ExecutionContext executionContext = createExecutionContext(getDeploymentsRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetDeploymentsRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(getDeploymentsRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetDeploymentsResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Represents a domain name that is contained in a simpler, more intuitive
* URL that can be called.
*
*
* @param getDomainNameRequest
* Request to get the name of a DomainName resource.
* @return Result of the GetDomainName operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws ServiceUnavailableException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetDomainName
*/
@Override
public GetDomainNameResult getDomainName(
GetDomainNameRequest getDomainNameRequest) {
ExecutionContext executionContext = createExecutionContext(getDomainNameRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetDomainNameRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getDomainNameRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetDomainNameResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Represents a collection of DomainName resources.
*
*
* @param getDomainNamesRequest
* Request to describe a collection of DomainName resources.
* @return Result of the GetDomainNames operation returned by the service.
* @throws BadRequestException
* @throws UnauthorizedException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetDomainNames
*/
@Override
public GetDomainNamesResult getDomainNames(
GetDomainNamesRequest getDomainNamesRequest) {
ExecutionContext executionContext = createExecutionContext(getDomainNamesRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetDomainNamesRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(getDomainNamesRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetDomainNamesResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Exports a deployed version of a RestApi in a specified format.
*
*
* @param getExportRequest
* Request a new export of a RestApi for a particular
* Stage.
* @return Result of the GetExport operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetExport
*/
@Override
public GetExportResult getExport(GetExportRequest getExportRequest) {
ExecutionContext executionContext = createExecutionContext(getExportRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetExportRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getExportRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(false)
.withHasStreamingSuccessResponse(false),
new GetExportResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Represents a get integration.
*
*
* @param getIntegrationRequest
* Represents a get integration request.
* @return Result of the GetIntegration operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetIntegration
*/
@Override
public GetIntegrationResult getIntegration(
GetIntegrationRequest getIntegrationRequest) {
ExecutionContext executionContext = createExecutionContext(getIntegrationRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetIntegrationRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(getIntegrationRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetIntegrationResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Represents a get integration response.
*
*
* @param getIntegrationResponseRequest
* Represents a get integration response request.
* @return Result of the GetIntegrationResponse operation returned by the
* service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetIntegrationResponse
*/
@Override
public GetIntegrationResponseResult getIntegrationResponse(
GetIntegrationResponseRequest getIntegrationResponseRequest) {
ExecutionContext executionContext = createExecutionContext(getIntegrationResponseRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetIntegrationResponseRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(getIntegrationResponseRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetIntegrationResponseResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Describe an existing Method resource.
*
*
* @param getMethodRequest
* Request to describe an existing Method resource.
* @return Result of the GetMethod operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetMethod
*/
@Override
public GetMethodResult getMethod(GetMethodRequest getMethodRequest) {
ExecutionContext executionContext = createExecutionContext(getMethodRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetMethodRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getMethodRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetMethodResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Describes a MethodResponse resource.
*
*
* @param getMethodResponseRequest
* Request to describe a MethodResponse resource.
* @return Result of the GetMethodResponse operation returned by the
* service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetMethodResponse
*/
@Override
public GetMethodResponseResult getMethodResponse(
GetMethodResponseRequest getMethodResponseRequest) {
ExecutionContext executionContext = createExecutionContext(getMethodResponseRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetMethodResponseRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(getMethodResponseRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetMethodResponseResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Describes an existing model defined for a RestApi resource.
*
*
* @param getModelRequest
* Request to list information about a model in an existing
* RestApi resource.
* @return Result of the GetModel operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetModel
*/
@Override
public GetModelResult getModel(GetModelRequest getModelRequest) {
ExecutionContext executionContext = createExecutionContext(getModelRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetModelRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getModelRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetModelResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Generates a sample mapping template that can be used to transform a
* payload into the structure of a model.
*
*
* @param getModelTemplateRequest
* Request to generate a sample mapping template used to transform
* the payload.
* @return Result of the GetModelTemplate operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetModelTemplate
*/
@Override
public GetModelTemplateResult getModelTemplate(
GetModelTemplateRequest getModelTemplateRequest) {
ExecutionContext executionContext = createExecutionContext(getModelTemplateRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetModelTemplateRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(getModelTemplateRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetModelTemplateResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Describes existing Models defined for a RestApi resource.
*
*
* @param getModelsRequest
* Request to list existing Models defined for a
* RestApi resource.
* @return Result of the GetModels operation returned by the service.
* @throws BadRequestException
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetModels
*/
@Override
public GetModelsResult getModels(GetModelsRequest getModelsRequest) {
ExecutionContext executionContext = createExecutionContext(getModelsRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetModelsRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getModelsRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetModelsResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Lists information about a resource.
*
*
* @param getResourceRequest
* Request to list information about a resource.
* @return Result of the GetResource operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetResource
*/
@Override
public GetResourceResult getResource(GetResourceRequest getResourceRequest) {
ExecutionContext executionContext = createExecutionContext(getResourceRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetResourceRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getResourceRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetResourceResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Lists information about a collection of Resource resources.
*
*
* @param getResourcesRequest
* Request to list information about a collection of resources.
* @return Result of the GetResources operation returned by the service.
* @throws BadRequestException
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetResources
*/
@Override
public GetResourcesResult getResources(
GetResourcesRequest getResourcesRequest) {
ExecutionContext executionContext = createExecutionContext(getResourcesRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetResourcesRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getResourcesRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetResourcesResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Lists the RestApi resource in the collection.
*
*
* @param getRestApiRequest
* The GET request to list an existing RestApi defined for
* your collection.
* @return Result of the GetRestApi operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetRestApi
*/
@Override
public GetRestApiResult getRestApi(GetRestApiRequest getRestApiRequest) {
ExecutionContext executionContext = createExecutionContext(getRestApiRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetRestApiRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getRestApiRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetRestApiResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Lists the RestApis resources for your collection.
*
*
* @param getRestApisRequest
* The GET request to list existing RestApis defined for your
* collection.
* @return Result of the GetRestApis operation returned by the service.
* @throws BadRequestException
* @throws UnauthorizedException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetRestApis
*/
@Override
public GetRestApisResult getRestApis(GetRestApisRequest getRestApisRequest) {
ExecutionContext executionContext = createExecutionContext(getRestApisRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetRestApisRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getRestApisRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetRestApisResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Generates a client SDK for a RestApi and Stage.
*
*
* @param getSdkRequest
* Request a new generated client SDK for a RestApi and
* Stage.
* @return Result of the GetSdk operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetSdk
*/
@Override
public GetSdkResult getSdk(GetSdkRequest getSdkRequest) {
ExecutionContext executionContext = createExecutionContext(getSdkRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetSdkRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getSdkRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(false)
.withHasStreamingSuccessResponse(false),
new GetSdkResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Gets information about a Stage resource.
*
*
* @param getStageRequest
* Requests Amazon API Gateway to get information about a
* Stage resource.
* @return Result of the GetStage operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetStage
*/
@Override
public GetStageResult getStage(GetStageRequest getStageRequest) {
ExecutionContext executionContext = createExecutionContext(getStageRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetStageRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getStageRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetStageResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Gets information about one or more Stage resources.
*
*
* @param getStagesRequest
* Requests Amazon API Gateway to get information about one or more
* Stage resources.
* @return Result of the GetStages operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.GetStages
*/
@Override
public GetStagesResult getStages(GetStagesRequest getStagesRequest) {
ExecutionContext executionContext = createExecutionContext(getStagesRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new GetStagesRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(getStagesRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new GetStagesResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* A feature of the Amazon API Gateway control service for creating a new
* API from an external API definition file.
*
*
* @param importRestApiRequest
* A POST request to import an API to Amazon API Gateway using an
* input of an API definition file.
* @return Result of the ImportRestApi operation returned by the service.
* @throws UnauthorizedException
* @throws LimitExceededException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.ImportRestApi
*/
@Override
public ImportRestApiResult importRestApi(
ImportRestApiRequest importRestApiRequest) {
ExecutionContext executionContext = createExecutionContext(importRestApiRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new ImportRestApiRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(importRestApiRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new ImportRestApiResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Represents a put integration.
*
*
* @param putIntegrationRequest
* Represents a put integration request.
* @return Result of the PutIntegration operation returned by the service.
* @throws UnauthorizedException
* @throws BadRequestException
* @throws ConflictException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.PutIntegration
*/
@Override
public PutIntegrationResult putIntegration(
PutIntegrationRequest putIntegrationRequest) {
ExecutionContext executionContext = createExecutionContext(putIntegrationRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new PutIntegrationRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(putIntegrationRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new PutIntegrationResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Represents a put integration.
*
*
* @param putIntegrationResponseRequest
* Represents a put integration response request.
* @return Result of the PutIntegrationResponse operation returned by the
* service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws LimitExceededException
* @throws BadRequestException
* @throws TooManyRequestsException
* @throws ConflictException
* @sample AmazonApiGateway.PutIntegrationResponse
*/
@Override
public PutIntegrationResponseResult putIntegrationResponse(
PutIntegrationResponseRequest putIntegrationResponseRequest) {
ExecutionContext executionContext = createExecutionContext(putIntegrationResponseRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new PutIntegrationResponseRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(putIntegrationResponseRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new PutIntegrationResponseResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Add a method to an existing Resource resource.
*
*
* @param putMethodRequest
* Request to add a method to an existing Resource resource.
* @return Result of the PutMethod operation returned by the service.
* @throws BadRequestException
* @throws UnauthorizedException
* @throws NotFoundException
* @throws ConflictException
* @throws LimitExceededException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.PutMethod
*/
@Override
public PutMethodResult putMethod(PutMethodRequest putMethodRequest) {
ExecutionContext executionContext = createExecutionContext(putMethodRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new PutMethodRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(putMethodRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new PutMethodResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Adds a MethodResponse to an existing Method resource.
*
*
* @param putMethodResponseRequest
* Request to add a MethodResponse to an existing
* Method resource.
* @return Result of the PutMethodResponse operation returned by the
* service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws ConflictException
* @throws LimitExceededException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.PutMethodResponse
*/
@Override
public PutMethodResponseResult putMethodResponse(
PutMethodResponseRequest putMethodResponseRequest) {
ExecutionContext executionContext = createExecutionContext(putMethodResponseRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new PutMethodResponseRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(putMethodResponseRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new PutMethodResponseResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* A feature of the Amazon API Gateway control service for updating an
* existing API with an input of external API definitions. The update can
* take the form of merging the supplied definition into the existing API or
* overwriting the existing API.
*
*
* @param putRestApiRequest
* A PUT request to update an existing API, with external API
* definitions specified as the request body.
* @return Result of the PutRestApi operation returned by the service.
* @throws UnauthorizedException
* @throws LimitExceededException
* @throws NotFoundException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.PutRestApi
*/
@Override
public PutRestApiResult putRestApi(PutRestApiRequest putRestApiRequest) {
ExecutionContext executionContext = createExecutionContext(putRestApiRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new PutRestApiRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(putRestApiRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new PutRestApiResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Simulate the execution of an Authorizer in your RestApi
* with headers, parameters, and an incoming request body.
*
*
* @param testInvokeAuthorizerRequest
* Make a request to simulate the execution of an Authorizer.
* @return Result of the TestInvokeAuthorizer operation returned by the
* service.
* @throws BadRequestException
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.TestInvokeAuthorizer
*/
@Override
public TestInvokeAuthorizerResult testInvokeAuthorizer(
TestInvokeAuthorizerRequest testInvokeAuthorizerRequest) {
ExecutionContext executionContext = createExecutionContext(testInvokeAuthorizerRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new TestInvokeAuthorizerRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(testInvokeAuthorizerRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new TestInvokeAuthorizerResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Simulate the execution of a Method in your RestApi with
* headers, parameters, and an incoming request body.
*
*
* @param testInvokeMethodRequest
* Make a request to simulate the execution of a Method.
* @return Result of the TestInvokeMethod operation returned by the service.
* @throws BadRequestException
* @throws UnauthorizedException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.TestInvokeMethod
*/
@Override
public TestInvokeMethodResult testInvokeMethod(
TestInvokeMethodRequest testInvokeMethodRequest) {
ExecutionContext executionContext = createExecutionContext(testInvokeMethodRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new TestInvokeMethodRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(testInvokeMethodRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new TestInvokeMethodResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Changes information about the current Account resource.
*
*
* @param updateAccountRequest
* Requests Amazon API Gateway to change information about the
* current Account resource.
* @return Result of the UpdateAccount operation returned by the service.
* @throws UnauthorizedException
* @throws BadRequestException
* @throws NotFoundException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.UpdateAccount
*/
@Override
public UpdateAccountResult updateAccount(
UpdateAccountRequest updateAccountRequest) {
ExecutionContext executionContext = createExecutionContext(updateAccountRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new UpdateAccountRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(updateAccountRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new UpdateAccountResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Changes information about an ApiKey resource.
*
*
* @param updateApiKeyRequest
* A request to change information about an ApiKey resource.
* @return Result of the UpdateApiKey operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.UpdateApiKey
*/
@Override
public UpdateApiKeyResult updateApiKey(
UpdateApiKeyRequest updateApiKeyRequest) {
ExecutionContext executionContext = createExecutionContext(updateApiKeyRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new UpdateApiKeyRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(updateApiKeyRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new UpdateApiKeyResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Updates an existing Authorizer resource.
*
*
* @param updateAuthorizerRequest
* Request to update an existing Authorizer resource.
* @return Result of the UpdateAuthorizer operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.UpdateAuthorizer
*/
@Override
public UpdateAuthorizerResult updateAuthorizer(
UpdateAuthorizerRequest updateAuthorizerRequest) {
ExecutionContext executionContext = createExecutionContext(updateAuthorizerRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new UpdateAuthorizerRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(updateAuthorizerRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new UpdateAuthorizerResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Changes information about the BasePathMapping resource.
*
*
* @param updateBasePathMappingRequest
* A request to change information about the BasePathMapping
* resource.
* @return Result of the UpdateBasePathMapping operation returned by the
* service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws ConflictException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.UpdateBasePathMapping
*/
@Override
public UpdateBasePathMappingResult updateBasePathMapping(
UpdateBasePathMappingRequest updateBasePathMappingRequest) {
ExecutionContext executionContext = createExecutionContext(updateBasePathMappingRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new UpdateBasePathMappingRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(updateBasePathMappingRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new UpdateBasePathMappingResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Changes information about an ClientCertificate resource.
*
*
* @param updateClientCertificateRequest
* A request to change information about an ClientCertificate
* resource.
* @return Result of the UpdateClientCertificate operation returned by the
* service.
* @throws UnauthorizedException
* @throws TooManyRequestsException
* @throws BadRequestException
* @throws NotFoundException
* @sample AmazonApiGateway.UpdateClientCertificate
*/
@Override
public UpdateClientCertificateResult updateClientCertificate(
UpdateClientCertificateRequest updateClientCertificateRequest) {
ExecutionContext executionContext = createExecutionContext(updateClientCertificateRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new UpdateClientCertificateRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(updateClientCertificateRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new UpdateClientCertificateResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Changes information about a Deployment resource.
*
*
* @param updateDeploymentRequest
* Requests Amazon API Gateway to change information about a
* Deployment resource.
* @return Result of the UpdateDeployment operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws BadRequestException
* @throws TooManyRequestsException
* @throws ServiceUnavailableException
* @sample AmazonApiGateway.UpdateDeployment
*/
@Override
public UpdateDeploymentResult updateDeployment(
UpdateDeploymentRequest updateDeploymentRequest) {
ExecutionContext executionContext = createExecutionContext(updateDeploymentRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new UpdateDeploymentRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(updateDeploymentRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new UpdateDeploymentResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Changes information about the DomainName resource.
*
*
* @param updateDomainNameRequest
* A request to change information about the DomainName
* resource.
* @return Result of the UpdateDomainName operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws BadRequestException
* @throws ConflictException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.UpdateDomainName
*/
@Override
public UpdateDomainNameResult updateDomainName(
UpdateDomainNameRequest updateDomainNameRequest) {
ExecutionContext executionContext = createExecutionContext(updateDomainNameRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new UpdateDomainNameRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(updateDomainNameRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new UpdateDomainNameResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Represents an update integration.
*
*
* @param updateIntegrationRequest
* Represents an update integration request.
* @return Result of the UpdateIntegration operation returned by the
* service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws BadRequestException
* @throws TooManyRequestsException
* @throws ConflictException
* @sample AmazonApiGateway.UpdateIntegration
*/
@Override
public UpdateIntegrationResult updateIntegration(
UpdateIntegrationRequest updateIntegrationRequest) {
ExecutionContext executionContext = createExecutionContext(updateIntegrationRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new UpdateIntegrationRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(updateIntegrationRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new UpdateIntegrationResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Represents an update integration response.
*
*
* @param updateIntegrationResponseRequest
* Represents an update integration response request.
* @return Result of the UpdateIntegrationResponse operation returned by the
* service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws ConflictException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.UpdateIntegrationResponse
*/
@Override
public UpdateIntegrationResponseResult updateIntegrationResponse(
UpdateIntegrationResponseRequest updateIntegrationResponseRequest) {
ExecutionContext executionContext = createExecutionContext(updateIntegrationResponseRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new UpdateIntegrationResponseRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(updateIntegrationResponseRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new UpdateIntegrationResponseResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Updates an existing Method resource.
*
*
* @param updateMethodRequest
* Request to update an existing Method resource.
* @return Result of the UpdateMethod operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws BadRequestException
* @throws ConflictException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.UpdateMethod
*/
@Override
public UpdateMethodResult updateMethod(
UpdateMethodRequest updateMethodRequest) {
ExecutionContext executionContext = createExecutionContext(updateMethodRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new UpdateMethodRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(updateMethodRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new UpdateMethodResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Updates an existing MethodResponse resource.
*
*
* @param updateMethodResponseRequest
* A request to update an existing MethodResponse resource.
* @return Result of the UpdateMethodResponse operation returned by the
* service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws ConflictException
* @throws LimitExceededException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.UpdateMethodResponse
*/
@Override
public UpdateMethodResponseResult updateMethodResponse(
UpdateMethodResponseRequest updateMethodResponseRequest) {
ExecutionContext executionContext = createExecutionContext(updateMethodResponseRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new UpdateMethodResponseRequestMarshaller(
protocolFactory).marshall(super
.beforeMarshalling(updateMethodResponseRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new UpdateMethodResponseResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Changes information about a model.
*
*
* @param updateModelRequest
* Request to update an existing model in an existing RestApi
* resource.
* @return Result of the UpdateModel operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws BadRequestException
* @throws ConflictException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.UpdateModel
*/
@Override
public UpdateModelResult updateModel(UpdateModelRequest updateModelRequest) {
ExecutionContext executionContext = createExecutionContext(updateModelRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new UpdateModelRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(updateModelRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new UpdateModelResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Changes information about a Resource resource.
*
*
* @param updateResourceRequest
* Request to change information about a Resource resource.
* @return Result of the UpdateResource operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws ConflictException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.UpdateResource
*/
@Override
public UpdateResourceResult updateResource(
UpdateResourceRequest updateResourceRequest) {
ExecutionContext executionContext = createExecutionContext(updateResourceRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new UpdateResourceRequestMarshaller(protocolFactory)
.marshall(super
.beforeMarshalling(updateResourceRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new UpdateResourceResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Changes information about the specified API.
*
*
* @param updateRestApiRequest
* Request to update an existing RestApi resource in your
* collection.
* @return Result of the UpdateRestApi operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws ConflictException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.UpdateRestApi
*/
@Override
public UpdateRestApiResult updateRestApi(
UpdateRestApiRequest updateRestApiRequest) {
ExecutionContext executionContext = createExecutionContext(updateRestApiRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new UpdateRestApiRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(updateRestApiRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new UpdateRestApiResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
*
* Changes information about a Stage resource.
*
*
* @param updateStageRequest
* Requests Amazon API Gateway to change information about a
* Stage resource.
* @return Result of the UpdateStage operation returned by the service.
* @throws UnauthorizedException
* @throws NotFoundException
* @throws ConflictException
* @throws BadRequestException
* @throws TooManyRequestsException
* @sample AmazonApiGateway.UpdateStage
*/
@Override
public UpdateStageResult updateStage(UpdateStageRequest updateStageRequest) {
ExecutionContext executionContext = createExecutionContext(updateStageRequest);
AWSRequestMetrics awsRequestMetrics = executionContext
.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request request = null;
Response response = null;
try {
awsRequestMetrics.startEvent(Field.RequestMarshallTime);
try {
request = new UpdateStageRequestMarshaller(protocolFactory)
.marshall(super.beforeMarshalling(updateStageRequest));
// Binds the request metrics to the current request.
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(Field.RequestMarshallTime);
}
HttpResponseHandler> responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata()
.withPayloadJson(true)
.withHasStreamingSuccessResponse(false),
new UpdateStageResultJsonUnmarshaller());
response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics, request, response);
}
}
/**
* 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) {
executionContext.setCredentialsProvider(CredentialUtils
.getCredentialsProvider(request.getOriginalRequest(),
awsCredentialsProvider));
return doInvoke(request, responseHandler, executionContext);
}
/**
* 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);
}
/**
* 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) {
request.setEndpoint(endpoint);
request.setTimeOffset(timeOffset);
HttpResponseHandler errorResponseHandler = protocolFactory
.createErrorResponseHandler(new JsonErrorResponseMetadata());
return client.execute(request, responseHandler, errorResponseHandler,
executionContext);
}
}