Class AbstractAWSIot

  • All Implemented Interfaces:
    AWSIot
    Direct Known Subclasses:
    AbstractAWSIotAsync

    public class AbstractAWSIot
    extends Object
    implements AWSIot
    Abstract implementation of AWSIot. Convenient method forms pass through to the corresponding overload that takes a request object, which throws an UnsupportedOperationException.
    • Constructor Detail

      • AbstractAWSIot

        protected AbstractAWSIot()
    • Method Detail

      • setEndpoint

        public void setEndpoint​(String endpoint)
        Description copied from interface: AWSIot
        Overrides the default endpoint for this client ("https://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: "iot.us-east-1.amazonaws.com") or a full URL, including the protocol (ex: "https://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.

        Specified by:
        setEndpoint in interface AWSIot
        Parameters:
        endpoint - The endpoint (ex: "iot.us-east-1.amazonaws.com") or a full URL, including the protocol (ex: "https://iot.us-east-1.amazonaws.com") of the region specific AWS endpoint this client will communicate with.
      • acceptCertificateTransfer

        public AcceptCertificateTransferResult acceptCertificateTransfer​(AcceptCertificateTransferRequest request)
        Description copied from interface: AWSIot

        Accepts a pending certificate transfer. The default state of the certificate is INACTIVE.

        To check for pending certificate transfers, call ListCertificates to enumerate your certificates.

        Specified by:
        acceptCertificateTransfer in interface AWSIot
        Parameters:
        request - The input for the AcceptCertificateTransfer operation.
        Returns:
        Result of the AcceptCertificateTransfer operation returned by the service.
      • attachPrincipalPolicy

        public AttachPrincipalPolicyResult attachPrincipalPolicy​(AttachPrincipalPolicyRequest request)
        Description copied from interface: AWSIot

        Attaches the specified policy to the specified principal (certificate or other credential).

        Specified by:
        attachPrincipalPolicy in interface AWSIot
        Parameters:
        request - The input for the AttachPrincipalPolicy operation.
        Returns:
        Result of the AttachPrincipalPolicy operation returned by the service.
      • attachThingPrincipal

        public AttachThingPrincipalResult attachThingPrincipal​(AttachThingPrincipalRequest request)
        Description copied from interface: AWSIot

        Attaches the specified principal to the specified thing.

        Specified by:
        attachThingPrincipal in interface AWSIot
        Parameters:
        request - The input for the AttachThingPrincipal operation.
        Returns:
        Result of the AttachThingPrincipal operation returned by the service.
      • cancelCertificateTransfer

        public CancelCertificateTransferResult cancelCertificateTransfer​(CancelCertificateTransferRequest request)
        Description copied from interface: AWSIot

        Cancels a pending transfer for the specified certificate.

        Note Only the transfer source account can use this operation to cancel a transfer. (Transfer destinations can use RejectCertificateTransfer instead.) After transfer, AWS IoT returns the certificate to the source account in the INACTIVE state. After the destination account has accepted the transfer, the transfer cannot be cancelled.

        After a certificate transfer is cancelled, the status of the certificate changes from PENDING_TRANSFER to INACTIVE.

        Specified by:
        cancelCertificateTransfer in interface AWSIot
        Parameters:
        request - The input for the CancelCertificateTransfer operation.
        Returns:
        Result of the CancelCertificateTransfer operation returned by the service.
      • createCertificateFromCsr

        public CreateCertificateFromCsrResult createCertificateFromCsr​(CreateCertificateFromCsrRequest request)
        Description copied from interface: AWSIot

        Creates an X.509 certificate using the specified certificate signing request.

        Note Reusing the same certificate signing request (CSR) results in a distinct certificate.

        You can create multiple certificates in a batch by creating a directory, copying multiple .csr files into that directory, and then specifying that directory on the command line. The following commands show how to create a batch of certificates given a batch of CSRs.

        Assuming a set of CSRs are located inside of the directory my-csr-directory:

        >

        On Linux and OS X, the command is:

        $ ls my-csr-directory/ | xargs -I {} aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/{}

        This command lists all of the CSRs in my-csr-directory and pipes each CSR file name to the aws iot create-certificate-from-csr AWS CLI command to create a certificate for the corresponding CSR.

        The aws iot create-certificate-from-csr part of the command can also be run in parallel to speed up the certificate creation process:

        $ ls my-csr-directory/ | xargs -P 10 -I {} aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/{}

        On Windows PowerShell, the command to create certificates for all CSRs in my-csr-directory is:

        > ls -Name my-csr-directory | %{aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/$_}

        On a Windows command prompt, the command to create certificates for all CSRs in my-csr-directory is:

        > forfiles /p my-csr-directory /c "cmd /c aws iot create-certificate-from-csr --certificate-signing-request file://@path"

        Specified by:
        createCertificateFromCsr in interface AWSIot
        Parameters:
        request - The input for the CreateCertificateFromCsr operation.
        Returns:
        Result of the CreateCertificateFromCsr operation returned by the service.
      • createKeysAndCertificate

        public CreateKeysAndCertificateResult createKeysAndCertificate​(CreateKeysAndCertificateRequest request)
        Description copied from interface: AWSIot

        Creates a 2048-bit RSA key pair and issues an X.509 certificate using the issued public key.

        Note This is the only time AWS IoT issues the private key for this certificate, so it is important to keep it in a secure location.

        Specified by:
        createKeysAndCertificate in interface AWSIot
        Parameters:
        request - The input for the CreateKeysAndCertificate operation.
        Returns:
        Result of the CreateKeysAndCertificate operation returned by the service.
      • createPolicy

        public CreatePolicyResult createPolicy​(CreatePolicyRequest request)
        Description copied from interface: AWSIot

        Creates an AWS IoT policy.

        The created policy is the default version for the policy. This operation creates a policy version with a version identifier of 1 and sets 1 as the policy's default version.

        Specified by:
        createPolicy in interface AWSIot
        Parameters:
        request - The input for the CreatePolicy operation.
        Returns:
        Result of the CreatePolicy operation returned by the service.
      • createPolicyVersion

        public CreatePolicyVersionResult createPolicyVersion​(CreatePolicyVersionRequest request)
        Description copied from interface: AWSIot

        Creates a new version of the specified AWS IoT policy. To update a policy, create a new policy version. A managed policy can have up to five versions. If the policy has five versions, you must use DeletePolicyVersion to delete an existing version before you create a new one.

        Optionally, you can set the new version as the policy's default version. The default version is the operative version (that is, the version that is in effect for the certificates to which the policy is attached).

        Specified by:
        createPolicyVersion in interface AWSIot
        Parameters:
        request - The input for the CreatePolicyVersion operation.
        Returns:
        Result of the CreatePolicyVersion operation returned by the service.
      • createThing

        public CreateThingResult createThing​(CreateThingRequest request)
        Description copied from interface: AWSIot

        Creates a thing in the Thing Registry.

        Specified by:
        createThing in interface AWSIot
        Parameters:
        request - The input for the CreateThing operation.
        Returns:
        Result of the CreateThing operation returned by the service.
      • createTopicRule

        public CreateTopicRuleResult createTopicRule​(CreateTopicRuleRequest request)
        Description copied from interface: AWSIot

        Creates a rule. Creating rules is an administrator-level action. Any user who has permission to create rules will be able to access data processed by the rule.

        Specified by:
        createTopicRule in interface AWSIot
        Parameters:
        request - The input for the CreateTopicRule operation.
        Returns:
        Result of the CreateTopicRule operation returned by the service.
      • deleteCertificate

        public DeleteCertificateResult deleteCertificate​(DeleteCertificateRequest request)
        Description copied from interface: AWSIot

        Deletes the specified certificate.

        A certificate cannot be deleted if it has a policy attached to it or if its status is set to ACTIVE. To delete a certificate, first use the DetachPrincipalPolicy API to detach all policies. Next, use the UpdateCertificate API to set the certificate to the INACTIVE status.

        Specified by:
        deleteCertificate in interface AWSIot
        Parameters:
        request - The input for the DeleteCertificate operation.
        Returns:
        Result of the DeleteCertificate operation returned by the service.
      • deletePolicy

        public DeletePolicyResult deletePolicy​(DeletePolicyRequest request)
        Description copied from interface: AWSIot

        Deletes the specified policy.

        A policy cannot be deleted if it has non-default versions or it is attached to any certificate.

        To delete a policy, use the DeletePolicyVersion API to delete all non-default versions of the policy; use the DetachPrincipalPolicy API to detach the policy from any certificate; and then use the DeletePolicy API to delete the policy.

        When a policy is deleted using DeletePolicy, its default version is deleted with it.

        Specified by:
        deletePolicy in interface AWSIot
        Parameters:
        request - The input for the DeletePolicy operation.
        Returns:
        Result of the DeletePolicy operation returned by the service.
      • deletePolicyVersion

        public DeletePolicyVersionResult deletePolicyVersion​(DeletePolicyVersionRequest request)
        Description copied from interface: AWSIot

        Deletes the specified version of the specified policy. You cannot delete the default version of a policy using this API. To delete the default version of a policy, use DeletePolicy. To find out which version of a policy is marked as the default version, use ListPolicyVersions.

        Specified by:
        deletePolicyVersion in interface AWSIot
        Parameters:
        request - The input for the DeletePolicyVersion operation.
        Returns:
        Result of the DeletePolicyVersion operation returned by the service.
      • deleteThing

        public DeleteThingResult deleteThing​(DeleteThingRequest request)
        Description copied from interface: AWSIot

        Deletes the specified thing from the Thing Registry.

        Specified by:
        deleteThing in interface AWSIot
        Parameters:
        request - The input for the DeleteThing operation.
        Returns:
        Result of the DeleteThing operation returned by the service.
      • deleteTopicRule

        public DeleteTopicRuleResult deleteTopicRule​(DeleteTopicRuleRequest request)
        Description copied from interface: AWSIot

        Deletes the specified rule.

        Specified by:
        deleteTopicRule in interface AWSIot
        Parameters:
        request - The input for the DeleteTopicRule operation.
        Returns:
        Result of the DeleteTopicRule operation returned by the service.
      • describeCertificate

        public DescribeCertificateResult describeCertificate​(DescribeCertificateRequest request)
        Description copied from interface: AWSIot

        Gets information about the specified certificate.

        Specified by:
        describeCertificate in interface AWSIot
        Parameters:
        request - The input for the DescribeCertificate operation.
        Returns:
        Result of the DescribeCertificate operation returned by the service.
      • describeEndpoint

        public DescribeEndpointResult describeEndpoint​(DescribeEndpointRequest request)
        Description copied from interface: AWSIot

        Returns a unique endpoint specific to the AWS account making the call. You specify the following URI when updating state information for your thing: https://endpoint/things/thingName/shadow.

        Specified by:
        describeEndpoint in interface AWSIot
        Parameters:
        request - The input for the DescribeEndpoint operation.
        Returns:
        Result of the DescribeEndpoint operation returned by the service.
      • describeThing

        public DescribeThingResult describeThing​(DescribeThingRequest request)
        Description copied from interface: AWSIot

        Gets information about the specified thing.

        Specified by:
        describeThing in interface AWSIot
        Parameters:
        request - The input for the DescribeThing operation.
        Returns:
        Result of the DescribeThing operation returned by the service.
      • detachThingPrincipal

        public DetachThingPrincipalResult detachThingPrincipal​(DetachThingPrincipalRequest request)
        Description copied from interface: AWSIot

        Detaches the specified principal from the specified thing.

        Specified by:
        detachThingPrincipal in interface AWSIot
        Parameters:
        request - The input for the DetachThingPrincipal operation.
        Returns:
        Result of the DetachThingPrincipal operation returned by the service.
      • disableTopicRule

        public DisableTopicRuleResult disableTopicRule​(DisableTopicRuleRequest request)
        Description copied from interface: AWSIot

        Disables the specified rule.

        Specified by:
        disableTopicRule in interface AWSIot
        Parameters:
        request - The input for the DisableTopicRuleRequest operation.
        Returns:
        Result of the DisableTopicRule operation returned by the service.
      • enableTopicRule

        public EnableTopicRuleResult enableTopicRule​(EnableTopicRuleRequest request)
        Description copied from interface: AWSIot

        Enables the specified rule.

        Specified by:
        enableTopicRule in interface AWSIot
        Parameters:
        request - The input for the EnableTopicRuleRequest operation.
        Returns:
        Result of the EnableTopicRule operation returned by the service.
      • getPolicy

        public GetPolicyResult getPolicy​(GetPolicyRequest request)
        Description copied from interface: AWSIot

        Gets information about the specified policy with the policy document of the default version.

        Specified by:
        getPolicy in interface AWSIot
        Parameters:
        request - The input for the GetPolicy operation.
        Returns:
        Result of the GetPolicy operation returned by the service.
      • getPolicyVersion

        public GetPolicyVersionResult getPolicyVersion​(GetPolicyVersionRequest request)
        Description copied from interface: AWSIot

        Gets information about the specified policy version.

        Specified by:
        getPolicyVersion in interface AWSIot
        Parameters:
        request - The input for the GetPolicyVersion operation.
        Returns:
        Result of the GetPolicyVersion operation returned by the service.
      • getRegistrationCode

        public GetRegistrationCodeResult getRegistrationCode​(GetRegistrationCodeRequest request)
        Description copied from interface: AWSIot

        Gets a registration code used to register a CA certificate with AWS IoT.

        Specified by:
        getRegistrationCode in interface AWSIot
        Parameters:
        request - The input to the GetRegistrationCode operation.
        Returns:
        Result of the GetRegistrationCode operation returned by the service.
      • getTopicRule

        public GetTopicRuleResult getTopicRule​(GetTopicRuleRequest request)
        Description copied from interface: AWSIot

        Gets information about the specified rule.

        Specified by:
        getTopicRule in interface AWSIot
        Parameters:
        request - The input for the GetTopicRule operation.
        Returns:
        Result of the GetTopicRule operation returned by the service.
      • listCACertificates

        public ListCACertificatesResult listCACertificates​(ListCACertificatesRequest request)
        Description copied from interface: AWSIot

        Lists the CA certificates registered for your AWS account.

        The results are paginated with a default page size of 25. You can use the returned marker to retrieve additional results.

        Specified by:
        listCACertificates in interface AWSIot
        Parameters:
        request - Input for the ListCACertificates operation.
        Returns:
        Result of the ListCACertificates operation returned by the service.
      • listCertificates

        public ListCertificatesResult listCertificates​(ListCertificatesRequest request)
        Description copied from interface: AWSIot

        Lists the certificates registered in your AWS account.

        The results are paginated with a default page size of 25. You can use the returned marker to retrieve additional results.

        Specified by:
        listCertificates in interface AWSIot
        Parameters:
        request - The input for the ListCertificates operation.
        Returns:
        Result of the ListCertificates operation returned by the service.
      • listCertificatesByCA

        public ListCertificatesByCAResult listCertificatesByCA​(ListCertificatesByCARequest request)
        Description copied from interface: AWSIot

        List the device certificates signed by the specified CA certificate.

        Specified by:
        listCertificatesByCA in interface AWSIot
        Parameters:
        request - The input to the ListCertificatesByCA operation.
        Returns:
        Result of the ListCertificatesByCA operation returned by the service.
      • listPolicies

        public ListPoliciesResult listPolicies​(ListPoliciesRequest request)
        Description copied from interface: AWSIot

        Lists your policies.

        Specified by:
        listPolicies in interface AWSIot
        Parameters:
        request - The input for the ListPolicies operation.
        Returns:
        Result of the ListPolicies operation returned by the service.
      • listPolicyVersions

        public ListPolicyVersionsResult listPolicyVersions​(ListPolicyVersionsRequest request)
        Description copied from interface: AWSIot

        Lists the versions of the specified policy, and identifies the default version.

        Specified by:
        listPolicyVersions in interface AWSIot
        Parameters:
        request - The input for the ListPolicyVersions operation.
        Returns:
        Result of the ListPolicyVersions operation returned by the service.
      • listPrincipalThings

        public ListPrincipalThingsResult listPrincipalThings​(ListPrincipalThingsRequest request)
        Description copied from interface: AWSIot

        Lists the things associated with the specified principal.

        Specified by:
        listPrincipalThings in interface AWSIot
        Parameters:
        request - The input for the ListPrincipalThings operation.
        Returns:
        Result of the ListPrincipalThings operation returned by the service.
      • listThingPrincipals

        public ListThingPrincipalsResult listThingPrincipals​(ListThingPrincipalsRequest request)
        Description copied from interface: AWSIot

        Lists the principals associated with the specified thing.

        Specified by:
        listThingPrincipals in interface AWSIot
        Parameters:
        request - The input for the ListThingPrincipal operation.
        Returns:
        Result of the ListThingPrincipals operation returned by the service.
      • listThings

        public ListThingsResult listThings​(ListThingsRequest request)
        Description copied from interface: AWSIot

        Lists your things. You can pass an AttributeName or AttributeValue to filter your things (for example, "ListThings where AttributeName=Color and AttributeValue=Red").

        Specified by:
        listThings in interface AWSIot
        Parameters:
        request - The input for the ListThings operation.
        Returns:
        Result of the ListThings operation returned by the service.
      • listTopicRules

        public ListTopicRulesResult listTopicRules​(ListTopicRulesRequest request)
        Description copied from interface: AWSIot

        Lists the rules for the specific topic.

        Specified by:
        listTopicRules in interface AWSIot
        Parameters:
        request - The input for the ListTopicRules operation.
        Returns:
        Result of the ListTopicRules operation returned by the service.
      • registerCACertificate

        public RegisterCACertificateResult registerCACertificate​(RegisterCACertificateRequest request)
        Description copied from interface: AWSIot

        Registers a CA certificate with AWS IoT. This CA certificate can then be used to sign device certificates, which can be then registered with AWS IoT. You can register up to 10 CA certificates per AWS account that have the same subject field and public key. This enables you to have up to 10 certificate authorities sign your device certificates. If you have more than one CA certificate registered, make sure you pass the CA certificate when you register your device certificates with the RegisterCertificate API.

        Specified by:
        registerCACertificate in interface AWSIot
        Parameters:
        request - The input to the RegisterCACertificate operation.
        Returns:
        Result of the RegisterCACertificate operation returned by the service.
      • registerCertificate

        public RegisterCertificateResult registerCertificate​(RegisterCertificateRequest request)
        Description copied from interface: AWSIot

        Registers a device certificate with AWS IoT. If you have more than one CA certificate that has the same subject field, you must specify the CA certificate that was used to sign the device certificate being registered.

        Specified by:
        registerCertificate in interface AWSIot
        Parameters:
        request - The input to the RegisterCertificate operation.
        Returns:
        Result of the RegisterCertificate operation returned by the service.
      • rejectCertificateTransfer

        public RejectCertificateTransferResult rejectCertificateTransfer​(RejectCertificateTransferRequest request)
        Description copied from interface: AWSIot

        Rejects a pending certificate transfer. After AWS IoT rejects a certificate transfer, the certificate status changes from PENDING_TRANSFER to INACTIVE.

        To check for pending certificate transfers, call ListCertificates to enumerate your certificates.

        This operation can only be called by the transfer destination. After it is called, the certificate will be returned to the source's account in the INACTIVE state.

        Specified by:
        rejectCertificateTransfer in interface AWSIot
        Parameters:
        request - The input for the RejectCertificateTransfer operation.
        Returns:
        Result of the RejectCertificateTransfer operation returned by the service.
      • replaceTopicRule

        public ReplaceTopicRuleResult replaceTopicRule​(ReplaceTopicRuleRequest request)
        Description copied from interface: AWSIot

        Replaces the specified rule. You must specify all parameters for the new rule. Creating rules is an administrator-level action. Any user who has permission to create rules will be able to access data processed by the rule.

        Specified by:
        replaceTopicRule in interface AWSIot
        Parameters:
        request - The input for the ReplaceTopicRule operation.
        Returns:
        Result of the ReplaceTopicRule operation returned by the service.
      • setDefaultPolicyVersion

        public SetDefaultPolicyVersionResult setDefaultPolicyVersion​(SetDefaultPolicyVersionRequest request)
        Description copied from interface: AWSIot

        Sets the specified version of the specified policy as the policy's default (operative) version. This action affects all certificates to which the policy is attached. To list the principals the policy is attached to, use the ListPrincipalPolicy API.

        Specified by:
        setDefaultPolicyVersion in interface AWSIot
        Parameters:
        request - The input for the SetDefaultPolicyVersion operation.
        Returns:
        Result of the SetDefaultPolicyVersion operation returned by the service.
      • transferCertificate

        public TransferCertificateResult transferCertificate​(TransferCertificateRequest request)
        Description copied from interface: AWSIot

        Transfers the specified certificate to the specified AWS account.

        You can cancel the transfer until it is acknowledged by the recipient.

        No notification is sent to the transfer destination's account. It is up to the caller to notify the transfer target.

        The certificate being transferred must not be in the ACTIVE state. You can use the UpdateCertificate API to deactivate it.

        The certificate must not have any policies attached to it. You can use the DetachPrincipalPolicy API to detach them.

        Specified by:
        transferCertificate in interface AWSIot
        Parameters:
        request - The input for the TransferCertificate operation.
        Returns:
        Result of the TransferCertificate operation returned by the service.
      • updateCertificate

        public UpdateCertificateResult updateCertificate​(UpdateCertificateRequest request)
        Description copied from interface: AWSIot

        Updates the status of the specified certificate. This operation is idempotent.

        Moving a certificate from the ACTIVE state (including REVOKED) will not disconnect currently connected devices, but these devices will be unable to reconnect.

        The ACTIVE state is required to authenticate devices connecting to AWS IoT using a certificate.

        Specified by:
        updateCertificate in interface AWSIot
        Parameters:
        request - The input for the UpdateCertificate operation.
        Returns:
        Result of the UpdateCertificate operation returned by the service.
      • updateThing

        public UpdateThingResult updateThing​(UpdateThingRequest request)
        Description copied from interface: AWSIot

        Updates the data for a thing.

        Specified by:
        updateThing in interface AWSIot
        Parameters:
        request - The input for the UpdateThing operation.
        Returns:
        Result of the UpdateThing operation returned by the service.
      • shutdown

        public void shutdown()
        Description copied from interface: AWSIot
        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.
        Specified by:
        shutdown in interface AWSIot
      • getCachedResponseMetadata

        public ResponseMetadata getCachedResponseMetadata​(AmazonWebServiceRequest request)
        Description copied from interface: AWSIot
        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.

        Specified by:
        getCachedResponseMetadata in interface AWSIot
        Parameters:
        request - The originally executed request.
        Returns:
        The response metadata for the specified request, or null if none is available.