@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
RequestHandler2 s. |
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.ibm.cloud.objectstorage.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
RequestHandler2
s.
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
.Copyright © 2024. All rights reserved.