@NotThreadSafe public class DefaultRequest<T> extends Object implements Request<T>
This class is only intended for internal use inside the AWS client libraries. Callers shouldn't ever interact directly with objects of this class.
| Constructor and Description |
|---|
DefaultRequest (AmazonWebServiceRequest originalRequest,
String serviceName)
Constructs a new DefaultRequest with the specified service name and the
original, user facing request object.
|
DefaultRequest (String serviceName)
Constructs a new DefaultRequest with the specified service name and no
specified original, user facing request object.
|
| Modifier and Type | Method and Description |
|---|---|
<X> void |
addHandlerContext (HandlerContextKey<X> key,
X value)
Adds a context to that is visible to all
RequestHandler2s. |
void |
addHeader (String name,
String value)
Sets the specified header for this request.
|
void |
addParameter (String name,
String value)
Adds the specified request parameter to this request.
|
void |
addParameters (String name,
List<String> values)
Adds the specified request parameter and list of values to this request.
|
AWSRequestMetrics |
getAWSRequestMetrics ()
Returns the request metrics.
|
InputStream |
getContent ()
Returns the optional stream containing the payload data to include for
this request.
|
InputStream |
getContentUnwrapped ()
Returns the optional raw stream containing the payload data to include
for this request, with all progress stream wrappers.
|
URI |
getEndpoint ()
Returns the service endpoint (ex: "https://ec2.amazonaws.com") to which
this request should be sent.
|
<X> X |
getHandlerContext (HandlerContextKey<X> key)
Return the context for the given key if present; else return null.
|
Map<String,String> |
getHeaders ()
Returns a map of all the headers included in this request.
|
HttpMethodName |
getHttpMethod ()
Returns the HTTP method (GET, POST, etc) to use when sending this
request.
|
AmazonWebServiceRequest |
getOriginalRequest ()
Returns the original, user facing request object which this internal
request object is representing.
|
Object |
getOriginalRequestObject ()
Returns the original, user facing request object which this internal
request object is representing.
|
Map<String,List<String>> |
getParameters ()
Returns a map of all parameters in this request.
|
ReadLimitInfo |
getReadLimitInfo ()
Returns the read limit info about the original request.
|
String |
getResourcePath ()
Returns the path to the resource being requested.
|
String |
getServiceName () |
int |
getTimeOffset ()
Returns the optional value for time offset for this request.
|
void |
setAWSRequestMetrics (AWSRequestMetrics metrics)
Bind the request metrics to the request.
|
void |
setContent (InputStream content)
Sets the optional stream containing the payload data to include for this
request.
|
void |
setEndpoint (URI endpoint)
Sets the service endpoint (ex: "https://ec2.amazonaws.com") to which this
request should be sent.
|
void |
setHeaders (Map<String,String> headers)
Sets all headers, clearing any existing ones.
|
void |
setHttpMethod (HttpMethodName httpMethod)
Sets the HTTP method (GET, POST, etc) to use when sending this request.
|
void |
setParameters (Map<String,List<String>> parameters)
Sets all parameters, clearing any existing values.
|
void |
setResourcePath (String resourcePath)
Sets the path to the resource being requested.
|
void |
setTimeOffset (int timeOffset)
Sets the optional value for time offset for this request.
|
String |
toString () |
Request<T> |
withParameter (String name,
String value)
Adds the specified request parameter to this request, and returns the
updated request object.
|
Request<T> |
withTimeOffset (int timeOffset)
Sets the optional value for time offset for this request.
|
public DefaultRequest(AmazonWebServiceRequest originalRequest, String serviceName)
serviceName - The name of the service to which this request is being sent.originalRequest - The original, user facing, AWS request being represented by
this internal request object.public DefaultRequest(String serviceName)
serviceName - The name of the service to which this request is being sent.public AmazonWebServiceRequest getOriginalRequest()
getOriginalRequest in interface Request<T>public void addHeader(String name, String value)
SignableRequest addHeader in interface SignableRequest<T>name - The name of the header to set.value - The header's value.SignableRequest.addHeader(java.lang.String, java.lang.String) public Map<String,String> getHeaders()
ImmutableRequest getHeaders in interface ImmutableRequest<T>ImmutableRequest.getHeaders() public void setResourcePath(String resourcePath)
Request setResourcePath in interface Request<T>resourcePath - The path to the resource being requested.Request.setResourcePath(java.lang.String) public String getResourcePath()
ImmutableRequest getResourcePath in interface ImmutableRequest<T>ImmutableRequest.getResourcePath() public void addParameter(String name, String value)
SignableRequest addParameter in interface SignableRequest<T>name - The name of the request parameter.value - The value of the request parameter.SignableRequest.addParameter(java.lang.String, java.lang.String) public void addParameters(String name, List<String> values)
Request addParameters in interface Request<T>name - The name of the request parameter.values - The value of the request parameter.Request.addParameters(java.lang.String, java.util.List) public Map<String,List<String>> getParameters()
ImmutableRequest getParameters in interface ImmutableRequest<T>ImmutableRequest.getParameters() public Request<T> withParameter(String name, String value)
Request withParameter in interface Request<T>name - The name of the request parameter.value - The value of the request parameter.Request.withParameter(java.lang.String, java.lang.String) public HttpMethodName getHttpMethod()
ImmutableRequest getHttpMethod in interface ImmutableRequest<T>ImmutableRequest.getHttpMethod() public void setHttpMethod(HttpMethodName httpMethod)
Request setHttpMethod in interface Request<T>httpMethod - The HTTP method to use when sending this request.Request.setHttpMethod(com.amazonaws.http.HttpMethodName) public void setEndpoint(URI endpoint)
Request setEndpoint in interface Request<T>endpoint - The service endpoint to which this request should be sent.Request.setEndpoint(java.net.URI) public URI getEndpoint()
ImmutableRequest getEndpoint in interface ImmutableRequest<T>ImmutableRequest.getEndpoint() public String getServiceName()
getServiceName in interface Request<T>AmazonWebServiceClient.getServiceName() which is used for
signing purpose.Request.getServiceName() public InputStream getContent()
ImmutableRequest getContent in interface ImmutableRequest<T>ImmutableRequest.getContent() public void setContent(InputStream content)
SignableRequest setContent in interface SignableRequest<T>content - The optional stream containing the payload data to include for
this request.SignableRequest.setContent(java.io.InputStream) public void setHeaders(Map<String,String> headers)
Request setHeaders in interface Request<T>Request.setHeaders(java.util.Map) public void setParameters(Map<String,List<String>> parameters)
Request setParameters in interface Request<T>Request.setParameters(java.util.Map) public int getTimeOffset()
ImmutableRequest getTimeOffset in interface ImmutableRequest<T>ImmutableRequest.getTimeOffset() public void setTimeOffset(int timeOffset)
Request setTimeOffset in interface Request<T>timeOffset - The optional value for time offset (in seconds) for this request.Request.setTimeOffset(int) public Request<T> withTimeOffset(int timeOffset)
Request withTimeOffset in interface Request<T>Request.setTimeOffset(int) public AWSRequestMetrics getAWSRequestMetrics()
Request getAWSRequestMetrics in interface Request<T>public void setAWSRequestMetrics(AWSRequestMetrics metrics)
Request setAWSRequestMetrics in interface Request<T>public <X> void addHandlerContext(HandlerContextKey<X> key, X value)
HandlerContextAware RequestHandler2s.
Note that, context added here will available only for the scope of
the request execution and will not be marshalled over the wire.addHandlerContext in interface HandlerContextAware key - the key for the property being set in the request.value - the value for the property being set in the request.public <X> X getHandlerContext(HandlerContextKey<X> key)
HandlerContextAware getHandlerContext in interface HandlerContextAware key - the key for the contextpublic InputStream getContentUnwrapped()
ImmutableRequest getContentUnwrapped in interface ImmutableRequest<T>public ReadLimitInfo getReadLimitInfo()
ImmutableRequest getReadLimitInfo in interface ImmutableRequest<T>public Object getOriginalRequestObject()
ImmutableRequest getOriginalRequestObject in interface ImmutableRequest<T>Object.