public abstract class AmazonWebServiceClient extends Object
Responsible for basic client capabilities that are the same across all AWS SDK Java clients (ex: setting the client endpoint).
Modifier and Type | Field and Description |
---|---|
static boolean |
LOGGING_AWS_REQUEST_METRIC
Deprecated.
No longer used.
|
Constructor and Description |
---|
AmazonWebServiceClient(ClientConfiguration clientConfiguration)
Constructs a new AmazonWebServiceClient object using the specified
configuration.
|
AmazonWebServiceClient(ClientConfiguration clientConfiguration,
RequestMetricCollector requestMetricCollector)
Constructs a new AmazonWebServiceClient object using the specified
configuration and request metric collector.
|
Modifier and Type | Method and Description |
---|---|
void |
addRequestHandler(RequestHandler requestHandler)
Deprecated.
by
addRequestHandler(RequestHandler2) .
Appends a request handler to the list of registered handlers that are run
as part of a request's lifecycle. |
void |
addRequestHandler(RequestHandler2 requestHandler2)
Appends a request handler to the list of registered handlers that are run
as part of a request's lifecycle.
|
void |
configureRegion(Regions region)
Convenient method for setting region.
|
String |
getEndpointPrefix() |
RequestMetricCollector |
getRequestMetricsCollector()
Returns the client specific
RequestMetricCollector ; or null if
there is none. |
String |
getServiceName()
Returns the service abbreviation for this service, used for identifying
service endpoints by region, identifying the necessary signer, etc.
|
Signer |
getSignerByURI(URI uri)
Returns the signer based on the given URI and the current AWS client
configuration.
|
String |
getSignerRegionOverride()
Returns the signer region override.
|
int |
getTimeOffset()
Returns the optional value for time offset for this client.
|
void |
makeImmutable()
Deprecated.
|
void |
removeRequestHandler(RequestHandler requestHandler)
Removes a request handler from the list of registered handlers that are run
as part of a request's lifecycle.
|
void |
removeRequestHandler(RequestHandler2 requestHandler2) |
void |
setEndpoint(String endpoint)
Overrides the default endpoint for this client.
|
void |
setRegion(Region region)
An alternative to
setEndpoint(String) , sets the regional
endpoint for this client's service calls. |
void |
setServiceNameIntern(String serviceName)
An internal method used to explicitly override the service name
computed by the default implementation.
|
void |
setSignerRegionOverride(String signerRegionOverride)
An internal method used to explicitly override the internal signer region
computed by the default implementation.
|
void |
setTimeOffset(int timeOffset)
Sets the optional value for time offset for this client.
|
void |
shutdown()
Shuts down this client object, releasing any resources that might be held
open.
|
<T extends AmazonWebServiceClient> |
withEndpoint(String endpoint)
Fluent method for
setEndpoint(String) . |
<T extends AmazonWebServiceClient> |
withRegion(Region region)
Fluent method for
setRegion(Region) . |
<T extends AmazonWebServiceClient> |
withRegion(Regions region)
Convenient fluent method for setting region.
|
AmazonWebServiceClient |
withTimeOffset(int timeOffset)
Sets the optional value for time offset for this client.
|
@Deprecated public static final boolean LOGGING_AWS_REQUEST_METRIC
public AmazonWebServiceClient(ClientConfiguration clientConfiguration)
clientConfiguration
- The client configuration for this client.public AmazonWebServiceClient(ClientConfiguration clientConfiguration, RequestMetricCollector requestMetricCollector)
clientConfiguration
- The client configuration for this client.requestMetricCollector
- optional request metric collector to be used at the http
client level; can be null.public void setEndpoint(String endpoint) throws IllegalArgumentException
This method is not threadsafe. Endpoints should be configured when the client is created and before any service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit.
Callers can pass in just the endpoint (ex: "ec2.amazonaws.com") or a full
URL, including the protocol (ex: "https://ec2.amazonaws.com"). If the
protocol is not specified here, the default protocol from this client's
ClientConfiguration
will be used, which by default is HTTPS.
For more information on using AWS regions with the AWS SDK for Java, and a complete list of all available endpoints for all AWS services, see: http://developer.amazonwebservices.com/connect/entry.jspa?externalID=3912
endpoint
- The endpoint (ex: "ec2.amazonaws.com") or a full URL,
including the protocol (ex: "https://ec2.amazonaws.com") of
the region specific AWS endpoint this client will communicate
with.IllegalArgumentException
- If any problems are detected with the specified endpoint.public Signer getSignerByURI(URI uri)
Note, however, the signer returned for S3 is incomplete at this stage as the information on the S3 bucket and key is not yet known.
public void setRegion(Region region) throws IllegalArgumentException
setEndpoint(String)
, sets the regional
endpoint for this client's service calls. Callers can use this method to control which AWS
region they want to work with.
This method is not threadsafe. A region should be configured when the client is created and before any service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit or retrying.
By default, all service endpoints in all regions use the https protocol. To use http instead,
specify it in the ClientConfiguration
supplied at construction.
region
- The region this client will communicate with. See
Region.getRegion(com.amazonaws.regions.Regions)
for accessing a given
region.IllegalArgumentException
- If the given region is null, or if this service isn't available in the given
region. See Region.isServiceSupported(String)
Region.getRegion(com.amazonaws.regions.Regions)
,
Region.createClient(Class, com.amazonaws.auth.AWSCredentialsProvider,
ClientConfiguration)
public final void configureRegion(Regions region)
region
- region to set to; must not be null.setRegion(Region)
public void shutdown()
@Deprecated public void addRequestHandler(RequestHandler requestHandler)
addRequestHandler(RequestHandler2)
.
Appends a request handler to the list of registered handlers that are run
as part of a request's lifecycle.requestHandler
- The new handler to add to the current list of request
handlers.public void addRequestHandler(RequestHandler2 requestHandler2)
requestHandler2
- The new handler to add to the current list of request
handlers.public void removeRequestHandler(RequestHandler requestHandler)
requestHandler
- The handler to remove from the current list of request
handlers.public void removeRequestHandler(RequestHandler2 requestHandler2)
public void setTimeOffset(int timeOffset)
timeOffset
- The optional value for time offset (in seconds) for this client.public AmazonWebServiceClient withTimeOffset(int timeOffset)
timeOffset
- The optional value for time offset (in seconds) for this client.public int getTimeOffset()
public RequestMetricCollector getRequestMetricsCollector()
RequestMetricCollector
; or null if
there is none.public String getServiceName()
public String getEndpointPrefix()
public final void setServiceNameIntern(String serviceName)
public final String getSignerRegionOverride()
setSignerRegionOverride(String).
public final void setSignerRegionOverride(String signerRegionOverride)
public <T extends AmazonWebServiceClient> T withRegion(Region region)
setRegion(Region)
.
Example: AmazonDynamoDBClient client = new AmazonDynamoDBClient(...).withRegion(...);
setRegion(Region)
public <T extends AmazonWebServiceClient> T withRegion(Regions region)
region
- region to set to; must not be null.withRegion(Region)
public <T extends AmazonWebServiceClient> T withEndpoint(String endpoint)
setEndpoint(String)
.
Example: AmazonDynamoDBClient client = new AmazonDynamoDBClient(...).withEndPoint(...);
setEndpoint(String)
@Deprecated public final void makeImmutable()
Copyright © 2013 Amazon Web Services, Inc. All Rights Reserved.