Package com.amazonaws.handlers
Interface IRequestHandler2
-
- All Known Implementing Classes:
CredentialsRequestHandler
,RequestHandler2
,StackedRequestHandler
public interface IRequestHandler2
Interface forRequestHandler2
. Do not use this outside the core SDK. We can and will add methods to this interface in the future. ExtendsRequestHandler2
to implement a custom request handler.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
afterError(Request<?> request, Response<?> response, Exception e)
Runs any additional processing logic on a request after it has failed.void
afterResponse(Request<?> request, Response<?> response)
Runs any additional processing logic on the specified request (after is has been executed by the client runtime).AmazonWebServiceRequest
beforeMarshalling(AmazonWebServiceRequest request)
Runs any additional processing logic on the specified request object before it is marshaled into an HTTP request.void
beforeRequest(Request<?> request)
Runs any additional processing logic on the specified request (before it is executed by the client runtime).HttpResponse
beforeUnmarshalling(Request<?> request, HttpResponse httpResponse)
Runs any additional processing logic on the specified response before it's unmarshalled.
-
-
-
Method Detail
-
beforeMarshalling
AmazonWebServiceRequest beforeMarshalling(AmazonWebServiceRequest request)
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
-
beforeRequest
void beforeRequest(Request<?> 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.
-
beforeUnmarshalling
HttpResponse beforeUnmarshalling(Request<?> request, HttpResponse httpResponse)
Runs any additional processing logic on the specified response before it's unmarshalled. This callback is only invoked on successful responses that will be unmarsahlled into an appropriate modeled class and not for unsuccessful responses that will be unmarshalled into a subclass ofAmazonServiceException
- Parameters:
request
- The low level request being processed.httpResponse
- The Raw HTTP response before being unmarshalled- Returns:
HttpResponse
to replace the actual response. May be a mutated version of the original or a completely newHttpResponse
object
-
afterResponse
void afterResponse(Request<?> request, Response<?> response)
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.
-
afterError
void afterError(Request<?> request, Response<?> response, Exception e)
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 availablee
- The error that resulted from executing the request.
-
-