Interface AWSIotData
-
- All Known Subinterfaces:
AWSIotDataAsync
- All Known Implementing Classes:
AbstractAWSIotData
,AbstractAWSIotDataAsync
,AWSIotDataAsyncClient
,AWSIotDataClient
public interface AWSIotData
Interface for accessing AWS IoT Data Plane.AWS IoT AWS IoT-Data enables secure, bi-directional communication between Internet-connected things (such as sensors, actuators, embedded devices, or smart appliances) and the AWS cloud. It implements a broker for applications and things to publish messages over HTTP (Publish) and retrieve, update, and delete thing shadows. A thing shadow is a persistent representation of your things and their state in the AWS cloud.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description DeleteThingShadowResult
deleteThingShadow(DeleteThingShadowRequest deleteThingShadowRequest)
Deletes the thing shadow for the specified thing.ResponseMetadata
getCachedResponseMetadata(AmazonWebServiceRequest request)
Returns additional metadata for a previously executed successful request, typically used for debugging issues where a service isn't acting as expected.GetThingShadowResult
getThingShadow(GetThingShadowRequest getThingShadowRequest)
Gets the thing shadow for the specified thing.PublishResult
publish(PublishRequest publishRequest)
Publishes state information.void
setEndpoint(String endpoint)
Overrides the default endpoint for this client ("https://data.iot.us-east-1.amazonaws.com").void
setRegion(Region region)
An alternative tosetEndpoint(String)
, sets the regional endpoint for this client's service calls.void
shutdown()
Shuts down this client object, releasing any resources that might be held open.UpdateThingShadowResult
updateThingShadow(UpdateThingShadowRequest updateThingShadowRequest)
Updates the thing shadow for the specified thing.
-
-
-
Method Detail
-
setEndpoint
void setEndpoint(String endpoint)
Overrides the default endpoint for this client ("https://data.iot.us-east-1.amazonaws.com"). Callers can use this method to control which AWS region they want to work with.Callers can pass in just the endpoint (ex: "data.iot.us-east-1.amazonaws.com") or a full URL, including the protocol (ex: "https://data.iot.us-east-1.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
This method is not threadsafe. An endpoint 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.
- Parameters:
endpoint
- The endpoint (ex: "data.iot.us-east-1.amazonaws.com") or a full URL, including the protocol (ex: "https://data.iot.us-east-1.amazonaws.com") of the region specific AWS endpoint this client will communicate with.
-
setRegion
void setRegion(Region region)
An alternative tosetEndpoint(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.By default, all service endpoints in all regions use the https protocol. To use http instead, specify it in the
ClientConfiguration
supplied at construction.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.
- Parameters:
region
- The region this client will communicate with. SeeRegion.getRegion(com.amazonaws.regions.Regions)
for accessing a given region. Must not be null and must be a region where the service is available.- See Also:
Region.getRegion(com.amazonaws.regions.Regions)
,Region.createClient(Class, com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration)
,Region.isServiceSupported(String)
-
deleteThingShadow
DeleteThingShadowResult deleteThingShadow(DeleteThingShadowRequest deleteThingShadowRequest)
Deletes the thing shadow for the specified thing.
For more information, see DeleteThingShadow in the AWS IoT Developer Guide.
- Parameters:
deleteThingShadowRequest
- The input for the DeleteThingShadow operation.- Returns:
- Result of the DeleteThingShadow operation returned by the service.
- Throws:
ResourceNotFoundException
- The specified resource does not exist.InvalidRequestException
- The request is not valid.ThrottlingException
- The rate exceeds the limit.UnauthorizedException
- You are not authorized to perform this operation.ServiceUnavailableException
- The service is temporarily unavailable.InternalFailureException
- An unexpected error has occurred.MethodNotAllowedException
- The specified combination of HTTP verb and URI is not supported.UnsupportedDocumentEncodingException
- The document encoding is not supported.
-
getThingShadow
GetThingShadowResult getThingShadow(GetThingShadowRequest getThingShadowRequest)
Gets the thing shadow for the specified thing.
For more information, see GetThingShadow in the AWS IoT Developer Guide.
- Parameters:
getThingShadowRequest
- The input for the GetThingShadow operation.- Returns:
- Result of the GetThingShadow operation returned by the service.
- Throws:
InvalidRequestException
- The request is not valid.ResourceNotFoundException
- The specified resource does not exist.ThrottlingException
- The rate exceeds the limit.UnauthorizedException
- You are not authorized to perform this operation.ServiceUnavailableException
- The service is temporarily unavailable.InternalFailureException
- An unexpected error has occurred.MethodNotAllowedException
- The specified combination of HTTP verb and URI is not supported.UnsupportedDocumentEncodingException
- The document encoding is not supported.
-
publish
PublishResult publish(PublishRequest publishRequest)
Publishes state information.
For more information, see HTTP Protocol in the AWS IoT Developer Guide.
- Parameters:
publishRequest
- The input for the Publish operation.- Returns:
- Result of the Publish operation returned by the service.
- Throws:
InternalFailureException
- An unexpected error has occurred.InvalidRequestException
- The request is not valid.UnauthorizedException
- You are not authorized to perform this operation.MethodNotAllowedException
- The specified combination of HTTP verb and URI is not supported.
-
updateThingShadow
UpdateThingShadowResult updateThingShadow(UpdateThingShadowRequest updateThingShadowRequest)
Updates the thing shadow for the specified thing.
For more information, see UpdateThingShadow in the AWS IoT Developer Guide.
- Parameters:
updateThingShadowRequest
- The input for the UpdateThingShadow operation.- Returns:
- Result of the UpdateThingShadow operation returned by the service.
- Throws:
ConflictException
- The specified version does not match the version of the document.RequestEntityTooLargeException
- The payload exceeds the maximum size allowed.InvalidRequestException
- The request is not valid.ThrottlingException
- The rate exceeds the limit.UnauthorizedException
- You are not authorized to perform this operation.ServiceUnavailableException
- The service is temporarily unavailable.InternalFailureException
- An unexpected error has occurred.MethodNotAllowedException
- The specified combination of HTTP verb and URI is not supported.UnsupportedDocumentEncodingException
- The document encoding is not supported.
-
shutdown
void shutdown()
Shuts down this client object, releasing any resources that might be held open. This is an optional method, and callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client has been shutdown, it should not be used to make any more requests.
-
getCachedResponseMetadata
ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
Returns additional metadata for a previously executed successful request, typically used for debugging issues where a service isn't acting as expected. This data isn't considered part of the result data returned by an operation, so it's available through this separate, diagnostic interface.Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic information for an executed request, you should use this method to retrieve it as soon as possible after executing a request.
- Parameters:
request
- The originally executed request.- Returns:
- The response metadata for the specified request, or null if none is available.
-
-