Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * Copyright 2010-2015 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.handlers;
Interface for addition request handling in clients. A request handler is executed on a request object before it is sent to the client runtime to be executed.

This interface deprecates RequestHandler by providing access to not only the AWS response, but also the associated http response via com.amazonaws.Response.

Note com.amazonaws.util.TimingInfo is accessible via com.amazonaws.Request.getAWSRequestMetrics() and hence is omitted from the interface to reduce duplication by design.

public abstract class RequestHandler2 {

    
Runs any additional processing logic on the specified request object before it is marshaled into an HTTP request.

If you're going to modify the request, make sure to clone it first, modify the clone, and return it from this method. Otherwise your changes will leak out to the user, who might reuse the request object without realizing that it was modified as part of sending it the first time.

Parameters:
request the request passed in by the user
Returns:
the (possibly different) request to marshal
            AmazonWebServiceRequest request) {
        return request;
    }

    
Runs any additional processing logic on the specified request (before it is executed by the client runtime).

Parameters:
request The low level request being processed.
    public abstract void beforeRequest(Request<?> request);

    
Runs any additional processing logic on the specified request (after is has been executed by the client runtime).

Parameters:
request The low level request being processed.
response The response generated from the specified request.
    public abstract void afterResponse(Request<?> requestResponse<?> response);

    
Runs any additional processing logic on a request after it has failed.

Parameters:
request The request that generated an error.
response the response or null if the failure occurred before the response is made available
e The error that resulted from executing the request.
    public abstract void afterError(Request<?> requestResponse<?> response,
            Exception e);

    
Returns an instance of request handler adapted to the RequestHandler2 interface from the given request handler implementing the deprecated RequestHandler interface.
    public static RequestHandler2 adapt(
            @SuppressWarnings("deprecation"RequestHandler old) {
        return new RequestHandler2Adaptor(old);
    }
New to GrepCode? Check out our FAQ X