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

com.amazonaws.services.apigateway.AmazonApiGatewayClient Maven / Gradle / Ivy

Go to download

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

There is a newer version: 1.11.78
Show newest version
/*
 * 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 back ends. 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) .withSupportsIon(false) .withContentTypeOverride("") .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("LimitExceededException").withModeledClass( com.amazonaws.services.apigateway.model.LimitExceededException.class)) .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("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(DefaultAWSCredentialsProviderChain.getInstance(), 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(DefaultAWSCredentialsProviderChain.getInstance(), 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 * @throws ConflictException * @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); } } /** *

* Creates a usage plan with the throttle and quota limits, as well as the associated API stages, specified in the * payload. *

* * @param createUsagePlanRequest * The POST request to create a usage plan with the name, description, throttle limits and quota limits, as * well as the associated API stages, specified in the payload. * @return Result of the CreateUsagePlan operation returned by the service. * @throws BadRequestException * @throws UnauthorizedException * @throws TooManyRequestsException * @throws LimitExceededException * @throws ConflictException * @sample AmazonApiGateway.CreateUsagePlan */ @Override public CreateUsagePlanResult createUsagePlan(CreateUsagePlanRequest createUsagePlanRequest) { ExecutionContext executionContext = createExecutionContext(createUsagePlanRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateUsagePlanRequestMarshaller(protocolFactory).marshall(super.beforeMarshalling(createUsagePlanRequest)); // 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 CreateUsagePlanResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a usage plan key for adding an existing API key to a usage plan. *

* * @param createUsagePlanKeyRequest * The POST request to create a usage plan key for adding an existing API key to a usage plan. * @return Result of the CreateUsagePlanKey operation returned by the service. * @throws BadRequestException * @throws ConflictException * @throws UnauthorizedException * @throws NotFoundException * @throws TooManyRequestsException * @sample AmazonApiGateway.CreateUsagePlanKey */ @Override public CreateUsagePlanKeyResult createUsagePlanKey(CreateUsagePlanKeyRequest createUsagePlanKeyRequest) { ExecutionContext executionContext = createExecutionContext(createUsagePlanKeyRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateUsagePlanKeyRequestMarshaller(protocolFactory).marshall(super.beforeMarshalling(createUsagePlanKeyRequest)); // 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 CreateUsagePlanKeyResultJsonUnmarshaller()); 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 * @throws ConflictException * @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 * @throws BadRequestException * @throws ConflictException * @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 * @throws ConflictException * @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 * @throws BadRequestException * @throws ConflictException * @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); } } /** *

* Deletes a usage plan of a given plan Id. *

* * @param deleteUsagePlanRequest * The DELETE request to delete a uasge plan of a given plan Id. * @return Result of the DeleteUsagePlan operation returned by the service. * @throws UnauthorizedException * @throws TooManyRequestsException * @throws BadRequestException * @throws NotFoundException * @sample AmazonApiGateway.DeleteUsagePlan */ @Override public DeleteUsagePlanResult deleteUsagePlan(DeleteUsagePlanRequest deleteUsagePlanRequest) { ExecutionContext executionContext = createExecutionContext(deleteUsagePlanRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteUsagePlanRequestMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteUsagePlanRequest)); // 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 DeleteUsagePlanResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a usage plan key and remove the underlying API key from the associated usage plan. *

* * @param deleteUsagePlanKeyRequest * The DELETE request to delete a usage plan key and remove the underlying API key from the associated usage * plan. * @return Result of the DeleteUsagePlanKey operation returned by the service. * @throws BadRequestException * @throws ConflictException * @throws UnauthorizedException * @throws NotFoundException * @throws TooManyRequestsException * @sample AmazonApiGateway.DeleteUsagePlanKey */ @Override public DeleteUsagePlanKeyResult deleteUsagePlanKey(DeleteUsagePlanKeyRequest deleteUsagePlanKeyRequest) { ExecutionContext executionContext = createExecutionContext(deleteUsagePlanKeyRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteUsagePlanKeyRequestMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteUsagePlanKeyRequest)); // 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 DeleteUsagePlanKeyResultJsonUnmarshaller()); 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); } } /** *

* Gets the usage data of a usage plan in a specified time interval. *

* * @param getUsageRequest * The GET request to get the usage data of a usage plan in a specified time interval. * @return Result of the GetUsage operation returned by the service. * @throws BadRequestException * @throws UnauthorizedException * @throws NotFoundException * @throws TooManyRequestsException * @sample AmazonApiGateway.GetUsage */ @Override public GetUsageResult getUsage(GetUsageRequest getUsageRequest) { ExecutionContext executionContext = createExecutionContext(getUsageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetUsageRequestMarshaller(protocolFactory).marshall(super.beforeMarshalling(getUsageRequest)); // 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 GetUsageResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets a usage plan of a given plan identifier. *

* * @param getUsagePlanRequest * The GET request to get a usage plan of a given plan identifier. * @return Result of the GetUsagePlan operation returned by the service. * @throws BadRequestException * @throws UnauthorizedException * @throws NotFoundException * @throws TooManyRequestsException * @sample AmazonApiGateway.GetUsagePlan */ @Override public GetUsagePlanResult getUsagePlan(GetUsagePlanRequest getUsagePlanRequest) { ExecutionContext executionContext = createExecutionContext(getUsagePlanRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetUsagePlanRequestMarshaller(protocolFactory).marshall(super.beforeMarshalling(getUsagePlanRequest)); // 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 GetUsagePlanResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets a usage plan key of a given key identifier. *

* * @param getUsagePlanKeyRequest * The GET request to get a usage plan key of a given key identifier. * @return Result of the GetUsagePlanKey operation returned by the service. * @throws BadRequestException * @throws UnauthorizedException * @throws NotFoundException * @throws TooManyRequestsException * @sample AmazonApiGateway.GetUsagePlanKey */ @Override public GetUsagePlanKeyResult getUsagePlanKey(GetUsagePlanKeyRequest getUsagePlanKeyRequest) { ExecutionContext executionContext = createExecutionContext(getUsagePlanKeyRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetUsagePlanKeyRequestMarshaller(protocolFactory).marshall(super.beforeMarshalling(getUsagePlanKeyRequest)); // 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 GetUsagePlanKeyResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets all the usage plan keys representing the API keys added to a specified usage plan. *

* * @param getUsagePlanKeysRequest * The GET request to get all the usage plan keys representing the API keys added to a specified usage plan. * @return Result of the GetUsagePlanKeys operation returned by the service. * @throws BadRequestException * @throws UnauthorizedException * @throws NotFoundException * @throws TooManyRequestsException * @sample AmazonApiGateway.GetUsagePlanKeys */ @Override public GetUsagePlanKeysResult getUsagePlanKeys(GetUsagePlanKeysRequest getUsagePlanKeysRequest) { ExecutionContext executionContext = createExecutionContext(getUsagePlanKeysRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetUsagePlanKeysRequestMarshaller(protocolFactory).marshall(super.beforeMarshalling(getUsagePlanKeysRequest)); // 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 GetUsagePlanKeysResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets all the usage plans of the caller's account. *

* * @param getUsagePlansRequest * The GET request to get all the usage plans of the caller's account. * @return Result of the GetUsagePlans operation returned by the service. * @throws BadRequestException * @throws UnauthorizedException * @throws TooManyRequestsException * @throws ConflictException * @sample AmazonApiGateway.GetUsagePlans */ @Override public GetUsagePlansResult getUsagePlans(GetUsagePlansRequest getUsagePlansRequest) { ExecutionContext executionContext = createExecutionContext(getUsagePlansRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetUsagePlansRequestMarshaller(protocolFactory).marshall(super.beforeMarshalling(getUsagePlansRequest)); // 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 GetUsagePlansResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Import API keys from an external source, such as a CSV-formatted file. *

* * @param importApiKeysRequest * The POST request to import API keys from an external source, such as a CSV-formatted file. * @return Result of the ImportApiKeys operation returned by the service. * @throws UnauthorizedException * @throws NotFoundException * @throws TooManyRequestsException * @throws LimitExceededException * @throws BadRequestException * @throws ConflictException * @sample AmazonApiGateway.ImportApiKeys */ @Override public ImportApiKeysResult importApiKeys(ImportApiKeysRequest importApiKeysRequest) { ExecutionContext executionContext = createExecutionContext(importApiKeysRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ImportApiKeysRequestMarshaller(protocolFactory).marshall(super.beforeMarshalling(importApiKeysRequest)); // 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 ImportApiKeysResultJsonUnmarshaller()); 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 * @throws ConflictException * @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 * @throws ConflictException * @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 * @throws ConflictException * @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); } } /** *

* Grants a temporary extension to the reamining quota of a usage plan associated with a specified API key. *

* * @param updateUsageRequest * The PATCH request to grant a temporary extension to the reamining quota of a usage plan associated with a * specified API key. * @return Result of the UpdateUsage operation returned by the service. * @throws UnauthorizedException * @throws TooManyRequestsException * @throws BadRequestException * @throws NotFoundException * @sample AmazonApiGateway.UpdateUsage */ @Override public UpdateUsageResult updateUsage(UpdateUsageRequest updateUsageRequest) { ExecutionContext executionContext = createExecutionContext(updateUsageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateUsageRequestMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateUsageRequest)); // 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 UpdateUsageResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates a usage plan of a given plan Id. *

* * @param updateUsagePlanRequest * The PATCH request to update a usage plan of a given plan Id. * @return Result of the UpdateUsagePlan operation returned by the service. * @throws UnauthorizedException * @throws TooManyRequestsException * @throws BadRequestException * @throws NotFoundException * @throws ConflictException * @sample AmazonApiGateway.UpdateUsagePlan */ @Override public UpdateUsagePlanResult updateUsagePlan(UpdateUsagePlanRequest updateUsagePlanRequest) { ExecutionContext executionContext = createExecutionContext(updateUsagePlanRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateUsagePlanRequestMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateUsagePlanRequest)); // 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 UpdateUsagePlanResultJsonUnmarshaller()); 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); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy