/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.iot; import org.w3c.dom.*; import java.net.*; import java.util.*; import javax.annotation.Generated; import org.apache.commons.logging.*; import com.amazonaws.*; import com.amazonaws.annotation.SdkInternalApi; import com.amazonaws.auth.*; import com.amazonaws.handlers.*; import com.amazonaws.http.*; import com.amazonaws.internal.*; import com.amazonaws.internal.auth.*; import com.amazonaws.metrics.*; import com.amazonaws.regions.*; import com.amazonaws.transform.*; import com.amazonaws.util.*; import com.amazonaws.protocol.json.*; import com.amazonaws.util.AWSRequestMetrics.Field; import com.amazonaws.annotation.ThreadSafe; import com.amazonaws.client.AwsSyncClientParams; import com.amazonaws.client.builder.AdvancedConfig; import com.amazonaws.services.iot.AWSIotClientBuilder; import com.amazonaws.AmazonServiceException; import com.amazonaws.services.iot.model.*; import com.amazonaws.services.iot.model.transform.*; /** * Client for accessing AWS IoT. All service calls made using this client are blocking, and will not return until the * service call completes. *

* IoT *

* IoT provides secure, bi-directional communication between Internet-connected devices (such as sensors, actuators, * embedded devices, or smart appliances) and the Amazon Web Services cloud. You can discover your custom IoT-Data * endpoint to communicate with, configure rules for data processing and integration with other services, organize * resources associated with each device (Registry), configure logging, and create and manage policies and credentials * to authenticate devices. *

*

* The service endpoints that expose this API are listed in Amazon Web Services IoT Core Endpoints and * Quotas. You must use the endpoint for the region that has the resources you want to access. *

*

* The service name used by Amazon Web * Services Signature Version 4 to sign the request is: execute-api. *

*

* For more information about how IoT works, see the Developer Guide. *

*

* For information about how to use the credentials provider for IoT, see Authorizing Direct Calls to * Amazon Web Services Services. *

*/ @ThreadSafe @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AWSIotClient extends AmazonWebServiceClient implements AWSIot { /** Provider for AWS credentials. */ private final AWSCredentialsProvider awsCredentialsProvider; private static final Log log = LogFactory.getLog(AWSIot.class); /** Default signing name for the service. */ private static final String DEFAULT_SIGNING_NAME = "iot"; /** Client configuration factory providing ClientConfigurations tailored to this client */ protected static final ClientConfigurationFactory configFactory = new ClientConfigurationFactory(); private final AdvancedConfig advancedConfig; private static final com.amazonaws.protocol.json.SdkJsonProtocolFactory protocolFactory = new com.amazonaws.protocol.json.SdkJsonProtocolFactory( new JsonClientMetadata() .withProtocolVersion("1.1") .withSupportsCbor(false) .withSupportsIon(false) .withContentTypeOverride("application/json") .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("InternalServerException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.InternalServerExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("NotConfiguredException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.NotConfiguredExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("ValidationException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.ValidationExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("ConflictException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.ConflictExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("InvalidQueryException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.InvalidQueryExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("DeleteConflictException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.DeleteConflictExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("InvalidRequestException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.InvalidRequestExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("CertificateConflictException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.CertificateConflictExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("RegistrationCodeValidationException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.RegistrationCodeValidationExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("InvalidResponseException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.InvalidResponseExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("ResourceNotFoundException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.ResourceNotFoundExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("ConflictingResourceUpdateException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.ConflictingResourceUpdateExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("ResourceAlreadyExistsException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.ResourceAlreadyExistsExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("InternalException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.InternalExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("VersionsLimitExceededException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.VersionsLimitExceededExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("CertificateStateException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.CertificateStateExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("ServiceUnavailableException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.ServiceUnavailableExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("InternalFailureException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.InternalFailureExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("ServiceQuotaExceededException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.ServiceQuotaExceededExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("LimitExceededException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.LimitExceededExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("TransferAlreadyCompletedException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.TransferAlreadyCompletedExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("ThrottlingException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.ThrottlingExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("MalformedPolicyException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.MalformedPolicyExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("InvalidStateTransitionException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.InvalidStateTransitionExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("ResourceRegistrationFailureException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.ResourceRegistrationFailureExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("InvalidAggregationException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.InvalidAggregationExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("SqlParseException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.SqlParseExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("TransferConflictException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.TransferConflictExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("IndexNotReadyException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.IndexNotReadyExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("UnauthorizedException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.UnauthorizedExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("VersionConflictException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.VersionConflictExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("TaskAlreadyExistsException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.TaskAlreadyExistsExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("CertificateValidationException").withExceptionUnmarshaller( com.amazonaws.services.iot.model.transform.CertificateValidationExceptionUnmarshaller.getInstance())) .withBaseServiceExceptionClass(com.amazonaws.services.iot.model.AWSIotException.class)); /** * Constructs a new client to invoke service methods on AWS IoT. A credentials provider chain will be used that * searches for credentials in this order: * * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @see DefaultAWSCredentialsProviderChain * @deprecated use {@link AWSIotClientBuilder#defaultClient()} */ @Deprecated public AWSIotClient() { this(DefaultAWSCredentialsProviderChain.getInstance(), configFactory.getConfig()); } /** * Constructs a new client to invoke service methods on AWS IoT. A credentials provider chain will be used that * searches for credentials in this order: *

* *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param clientConfiguration * The client configuration options controlling how this client connects to AWS IoT (ex: proxy settings, * retry counts, etc.). * * @see DefaultAWSCredentialsProviderChain * @deprecated use {@link AWSIotClientBuilder#withClientConfiguration(ClientConfiguration)} */ @Deprecated public AWSIotClient(ClientConfiguration clientConfiguration) { this(DefaultAWSCredentialsProviderChain.getInstance(), clientConfiguration); } /** * Constructs a new client to invoke service methods on AWS IoT using the specified AWS account credentials. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param awsCredentials * The AWS credentials (access key ID and secret key) to use when authenticating with AWS services. * @deprecated use {@link AWSIotClientBuilder#withCredentials(AWSCredentialsProvider)} for example: * {@code AWSIotClientBuilder.standard().withCredentials(new AWSStaticCredentialsProvider(awsCredentials)).build();} */ @Deprecated public AWSIotClient(AWSCredentials awsCredentials) { this(awsCredentials, configFactory.getConfig()); } /** * Constructs a new client to invoke service methods on AWS IoT using the specified AWS account credentials and * client configuration options. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param awsCredentials * The AWS credentials (access key ID and secret key) to use when authenticating with AWS services. * @param clientConfiguration * The client configuration options controlling how this client connects to AWS IoT (ex: proxy settings, * retry counts, etc.). * @deprecated use {@link AWSIotClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AWSIotClientBuilder#withClientConfiguration(ClientConfiguration)} */ @Deprecated public AWSIotClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration) { super(clientConfiguration); this.awsCredentialsProvider = new StaticCredentialsProvider(awsCredentials); this.advancedConfig = AdvancedConfig.EMPTY; init(); } /** * Constructs a new client to invoke service methods on AWS IoT using the specified AWS account credentials * provider. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials to authenticate requests with AWS services. * @deprecated use {@link AWSIotClientBuilder#withCredentials(AWSCredentialsProvider)} */ @Deprecated public AWSIotClient(AWSCredentialsProvider awsCredentialsProvider) { this(awsCredentialsProvider, configFactory.getConfig()); } /** * Constructs a new client to invoke service methods on AWS IoT using the specified AWS account credentials provider * and client configuration options. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials to authenticate requests with AWS services. * @param clientConfiguration * The client configuration options controlling how this client connects to AWS IoT (ex: proxy settings, * retry counts, etc.). * @deprecated use {@link AWSIotClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AWSIotClientBuilder#withClientConfiguration(ClientConfiguration)} */ @Deprecated public AWSIotClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration) { this(awsCredentialsProvider, clientConfiguration, null); } /** * Constructs a new client to invoke service methods on AWS IoT using the specified AWS account credentials * provider, client configuration options, and request metric collector. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials to authenticate requests with AWS services. * @param clientConfiguration * The client configuration options controlling how this client connects to AWS IoT (ex: proxy settings, * retry counts, etc.). * @param requestMetricCollector * optional request metric collector * @deprecated use {@link AWSIotClientBuilder#withCredentials(AWSCredentialsProvider)} and * {@link AWSIotClientBuilder#withClientConfiguration(ClientConfiguration)} and * {@link AWSIotClientBuilder#withMetricsCollector(RequestMetricCollector)} */ @Deprecated public AWSIotClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, RequestMetricCollector requestMetricCollector) { super(clientConfiguration, requestMetricCollector); this.awsCredentialsProvider = awsCredentialsProvider; this.advancedConfig = AdvancedConfig.EMPTY; init(); } public static AWSIotClientBuilder builder() { return AWSIotClientBuilder.standard(); } /** * Constructs a new client to invoke service methods on AWS IoT using the specified parameters. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param clientParams * Object providing client parameters. */ AWSIotClient(AwsSyncClientParams clientParams) { this(clientParams, false); } /** * Constructs a new client to invoke service methods on AWS IoT using the specified parameters. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param clientParams * Object providing client parameters. */ AWSIotClient(AwsSyncClientParams clientParams, boolean endpointDiscoveryEnabled) { super(clientParams); this.awsCredentialsProvider = clientParams.getCredentialsProvider(); this.advancedConfig = clientParams.getAdvancedConfig(); init(); } private void init() { setServiceNameIntern(DEFAULT_SIGNING_NAME); setEndpointPrefix(ENDPOINT_PREFIX); // calling this.setEndPoint(...) will also modify the signer accordingly setEndpoint("https://iot.us-east-1.amazonaws.com"); HandlerChainFactory chainFactory = new HandlerChainFactory(); requestHandler2s.addAll(chainFactory.newRequestHandlerChain("/com/amazonaws/services/iot/request.handlers")); requestHandler2s.addAll(chainFactory.newRequestHandler2Chain("/com/amazonaws/services/iot/request.handler2s")); requestHandler2s.addAll(chainFactory.getGlobalHandlers()); } /** *

* 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. *

*

* Requires permission to access the AcceptCertificateTransfer action. *

* * @param acceptCertificateTransferRequest * The input for the AcceptCertificateTransfer operation. * @return Result of the AcceptCertificateTransfer operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws TransferAlreadyCompletedException * You can't revert the certificate transfer because the transfer is already complete. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.AcceptCertificateTransfer */ @Override public AcceptCertificateTransferResult acceptCertificateTransfer(AcceptCertificateTransferRequest request) { request = beforeClientExecution(request); return executeAcceptCertificateTransfer(request); } @SdkInternalApi final AcceptCertificateTransferResult executeAcceptCertificateTransfer(AcceptCertificateTransferRequest acceptCertificateTransferRequest) { ExecutionContext executionContext = createExecutionContext(acceptCertificateTransferRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AcceptCertificateTransferRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(acceptCertificateTransferRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AcceptCertificateTransfer"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new AcceptCertificateTransferResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Adds a thing to a billing group. *

*

* Requires permission to access the AddThingToBillingGroup action. *

* * @param addThingToBillingGroupRequest * @return Result of the AddThingToBillingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.AddThingToBillingGroup */ @Override public AddThingToBillingGroupResult addThingToBillingGroup(AddThingToBillingGroupRequest request) { request = beforeClientExecution(request); return executeAddThingToBillingGroup(request); } @SdkInternalApi final AddThingToBillingGroupResult executeAddThingToBillingGroup(AddThingToBillingGroupRequest addThingToBillingGroupRequest) { ExecutionContext executionContext = createExecutionContext(addThingToBillingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AddThingToBillingGroupRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(addThingToBillingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AddThingToBillingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new AddThingToBillingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Adds a thing to a thing group. *

*

* Requires permission to access the AddThingToThingGroup action. *

* * @param addThingToThingGroupRequest * @return Result of the AddThingToThingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.AddThingToThingGroup */ @Override public AddThingToThingGroupResult addThingToThingGroup(AddThingToThingGroupRequest request) { request = beforeClientExecution(request); return executeAddThingToThingGroup(request); } @SdkInternalApi final AddThingToThingGroupResult executeAddThingToThingGroup(AddThingToThingGroupRequest addThingToThingGroupRequest) { ExecutionContext executionContext = createExecutionContext(addThingToThingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AddThingToThingGroupRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(addThingToThingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AddThingToThingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new AddThingToThingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Associates a group with a continuous job. The following criteria must be met: *

*
    *
  • *

    * The job must have been created with the targetSelection field set to "CONTINUOUS". *

    *
  • *
  • *

    * The job status must currently be "IN_PROGRESS". *

    *
  • *
  • *

    * The total number of targets associated with a job must not exceed 100. *

    *
  • *
*

* Requires permission to access the AssociateTargetsWithJob action. *

* * @param associateTargetsWithJobRequest * @return Result of the AssociateTargetsWithJob operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws LimitExceededException * A limit has been exceeded. * @throws ThrottlingException * The rate exceeds the limit. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.AssociateTargetsWithJob */ @Override public AssociateTargetsWithJobResult associateTargetsWithJob(AssociateTargetsWithJobRequest request) { request = beforeClientExecution(request); return executeAssociateTargetsWithJob(request); } @SdkInternalApi final AssociateTargetsWithJobResult executeAssociateTargetsWithJob(AssociateTargetsWithJobRequest associateTargetsWithJobRequest) { ExecutionContext executionContext = createExecutionContext(associateTargetsWithJobRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AssociateTargetsWithJobRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(associateTargetsWithJobRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AssociateTargetsWithJob"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new AssociateTargetsWithJobResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

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

*

* Requires permission to access the AttachPolicy action. *

* * @param attachPolicyRequest * @return Result of the AttachPolicy operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws LimitExceededException * A limit has been exceeded. * @sample AWSIot.AttachPolicy */ @Override public AttachPolicyResult attachPolicy(AttachPolicyRequest request) { request = beforeClientExecution(request); return executeAttachPolicy(request); } @SdkInternalApi final AttachPolicyResult executeAttachPolicy(AttachPolicyRequest attachPolicyRequest) { ExecutionContext executionContext = createExecutionContext(attachPolicyRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AttachPolicyRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(attachPolicyRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AttachPolicy"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new AttachPolicyResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

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

*

* Note: This action is deprecated and works as expected for backward compatibility, but we won't add * enhancements. Use AttachPolicy instead. *

*

* Requires permission to access the AttachPrincipalPolicy action. *

* * @param attachPrincipalPolicyRequest * The input for the AttachPrincipalPolicy operation. * @return Result of the AttachPrincipalPolicy operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws LimitExceededException * A limit has been exceeded. * @sample AWSIot.AttachPrincipalPolicy */ @Override @Deprecated public AttachPrincipalPolicyResult attachPrincipalPolicy(AttachPrincipalPolicyRequest request) { request = beforeClientExecution(request); return executeAttachPrincipalPolicy(request); } @SdkInternalApi final AttachPrincipalPolicyResult executeAttachPrincipalPolicy(AttachPrincipalPolicyRequest attachPrincipalPolicyRequest) { ExecutionContext executionContext = createExecutionContext(attachPrincipalPolicyRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AttachPrincipalPolicyRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(attachPrincipalPolicyRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AttachPrincipalPolicy"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new AttachPrincipalPolicyResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Associates a Device Defender security profile with a thing group or this account. Each thing group or account can * have up to five security profiles associated with it. *

*

* Requires permission to access the AttachSecurityProfile action. *

* * @param attachSecurityProfileRequest * @return Result of the AttachSecurityProfile operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws LimitExceededException * A limit has been exceeded. * @throws VersionConflictException * An exception thrown when the version of an entity specified with the expectedVersion * parameter does not match the latest version in the system. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.AttachSecurityProfile */ @Override public AttachSecurityProfileResult attachSecurityProfile(AttachSecurityProfileRequest request) { request = beforeClientExecution(request); return executeAttachSecurityProfile(request); } @SdkInternalApi final AttachSecurityProfileResult executeAttachSecurityProfile(AttachSecurityProfileRequest attachSecurityProfileRequest) { ExecutionContext executionContext = createExecutionContext(attachSecurityProfileRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AttachSecurityProfileRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(attachSecurityProfileRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AttachSecurityProfile"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new AttachSecurityProfileResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Attaches the specified principal to the specified thing. A principal can be X.509 certificates, Amazon Cognito * identities or federated identities. *

*

* Requires permission to access the AttachThingPrincipal action. *

* * @param attachThingPrincipalRequest * The input for the AttachThingPrincipal operation. * @return Result of the AttachThingPrincipal operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.AttachThingPrincipal */ @Override public AttachThingPrincipalResult attachThingPrincipal(AttachThingPrincipalRequest request) { request = beforeClientExecution(request); return executeAttachThingPrincipal(request); } @SdkInternalApi final AttachThingPrincipalResult executeAttachThingPrincipal(AttachThingPrincipalRequest attachThingPrincipalRequest) { ExecutionContext executionContext = createExecutionContext(attachThingPrincipalRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AttachThingPrincipalRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(attachThingPrincipalRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AttachThingPrincipal"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new AttachThingPrincipalResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Cancels a mitigation action task that is in progress. If the task is not in progress, an InvalidRequestException * occurs. *

*

* Requires permission to access the CancelAuditMitigationActionsTask action. *

* * @param cancelAuditMitigationActionsTaskRequest * @return Result of the CancelAuditMitigationActionsTask operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CancelAuditMitigationActionsTask */ @Override public CancelAuditMitigationActionsTaskResult cancelAuditMitigationActionsTask(CancelAuditMitigationActionsTaskRequest request) { request = beforeClientExecution(request); return executeCancelAuditMitigationActionsTask(request); } @SdkInternalApi final CancelAuditMitigationActionsTaskResult executeCancelAuditMitigationActionsTask( CancelAuditMitigationActionsTaskRequest cancelAuditMitigationActionsTaskRequest) { ExecutionContext executionContext = createExecutionContext(cancelAuditMitigationActionsTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CancelAuditMitigationActionsTaskRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(cancelAuditMitigationActionsTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CancelAuditMitigationActionsTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CancelAuditMitigationActionsTaskResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Cancels an audit that is in progress. The audit can be either scheduled or on demand. If the audit isn't in * progress, an "InvalidRequestException" occurs. *

*

* Requires permission to access the CancelAuditTask action. *

* * @param cancelAuditTaskRequest * @return Result of the CancelAuditTask operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CancelAuditTask */ @Override public CancelAuditTaskResult cancelAuditTask(CancelAuditTaskRequest request) { request = beforeClientExecution(request); return executeCancelAuditTask(request); } @SdkInternalApi final CancelAuditTaskResult executeCancelAuditTask(CancelAuditTaskRequest cancelAuditTaskRequest) { ExecutionContext executionContext = createExecutionContext(cancelAuditTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CancelAuditTaskRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(cancelAuditTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CancelAuditTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CancelAuditTaskResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* 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, 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. *

*

* Requires permission to access the CancelCertificateTransfer action. *

* * @param cancelCertificateTransferRequest * The input for the CancelCertificateTransfer operation. * @return Result of the CancelCertificateTransfer operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws TransferAlreadyCompletedException * You can't revert the certificate transfer because the transfer is already complete. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CancelCertificateTransfer */ @Override public CancelCertificateTransferResult cancelCertificateTransfer(CancelCertificateTransferRequest request) { request = beforeClientExecution(request); return executeCancelCertificateTransfer(request); } @SdkInternalApi final CancelCertificateTransferResult executeCancelCertificateTransfer(CancelCertificateTransferRequest cancelCertificateTransferRequest) { ExecutionContext executionContext = createExecutionContext(cancelCertificateTransferRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CancelCertificateTransferRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(cancelCertificateTransferRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CancelCertificateTransfer"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CancelCertificateTransferResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Cancels a Device Defender ML Detect mitigation action. *

*

* Requires permission to access the CancelDetectMitigationActionsTask action. *

* * @param cancelDetectMitigationActionsTaskRequest * @return Result of the CancelDetectMitigationActionsTask operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CancelDetectMitigationActionsTask */ @Override public CancelDetectMitigationActionsTaskResult cancelDetectMitigationActionsTask(CancelDetectMitigationActionsTaskRequest request) { request = beforeClientExecution(request); return executeCancelDetectMitigationActionsTask(request); } @SdkInternalApi final CancelDetectMitigationActionsTaskResult executeCancelDetectMitigationActionsTask( CancelDetectMitigationActionsTaskRequest cancelDetectMitigationActionsTaskRequest) { ExecutionContext executionContext = createExecutionContext(cancelDetectMitigationActionsTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CancelDetectMitigationActionsTaskRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(cancelDetectMitigationActionsTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CancelDetectMitigationActionsTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CancelDetectMitigationActionsTaskResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Cancels a job. *

*

* Requires permission to access the CancelJob action. *

* * @param cancelJobRequest * @return Result of the CancelJob operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws LimitExceededException * A limit has been exceeded. * @sample AWSIot.CancelJob */ @Override public CancelJobResult cancelJob(CancelJobRequest request) { request = beforeClientExecution(request); return executeCancelJob(request); } @SdkInternalApi final CancelJobResult executeCancelJob(CancelJobRequest cancelJobRequest) { ExecutionContext executionContext = createExecutionContext(cancelJobRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CancelJobRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(cancelJobRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CancelJob"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler(new JsonOperationMetadata() .withPayloadJson(true).withHasStreamingSuccessResponse(false), new CancelJobResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Cancels the execution of a job for a given thing. *

*

* Requires permission to access the CancelJobExecution action. *

* * @param cancelJobExecutionRequest * @return Result of the CancelJobExecution operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws InvalidStateTransitionException * An attempt was made to change to an invalid state, for example by deleting a job or a job execution which * is "IN_PROGRESS" without setting the force parameter. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws VersionConflictException * An exception thrown when the version of an entity specified with the expectedVersion * parameter does not match the latest version in the system. * @sample AWSIot.CancelJobExecution */ @Override public CancelJobExecutionResult cancelJobExecution(CancelJobExecutionRequest request) { request = beforeClientExecution(request); return executeCancelJobExecution(request); } @SdkInternalApi final CancelJobExecutionResult executeCancelJobExecution(CancelJobExecutionRequest cancelJobExecutionRequest) { ExecutionContext executionContext = createExecutionContext(cancelJobExecutionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CancelJobExecutionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(cancelJobExecutionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CancelJobExecution"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CancelJobExecutionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Clears the default authorizer. *

*

* Requires permission to access the ClearDefaultAuthorizer action. *

* * @param clearDefaultAuthorizerRequest * @return Result of the ClearDefaultAuthorizer operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ClearDefaultAuthorizer */ @Override public ClearDefaultAuthorizerResult clearDefaultAuthorizer(ClearDefaultAuthorizerRequest request) { request = beforeClientExecution(request); return executeClearDefaultAuthorizer(request); } @SdkInternalApi final ClearDefaultAuthorizerResult executeClearDefaultAuthorizer(ClearDefaultAuthorizerRequest clearDefaultAuthorizerRequest) { ExecutionContext executionContext = createExecutionContext(clearDefaultAuthorizerRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ClearDefaultAuthorizerRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(clearDefaultAuthorizerRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ClearDefaultAuthorizer"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ClearDefaultAuthorizerResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Confirms a topic rule destination. When you create a rule requiring a destination, IoT sends a confirmation * message to the endpoint or base address you specify. The message includes a token which you pass back when * calling ConfirmTopicRuleDestination to confirm that you own or have access to the endpoint. *

*

* Requires permission to access the ConfirmTopicRuleDestination action. *

* * @param confirmTopicRuleDestinationRequest * @return Result of the ConfirmTopicRuleDestination operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ConflictingResourceUpdateException * A conflicting resource update exception. This exception is thrown when two pending updates cause a * conflict. * @sample AWSIot.ConfirmTopicRuleDestination */ @Override public ConfirmTopicRuleDestinationResult confirmTopicRuleDestination(ConfirmTopicRuleDestinationRequest request) { request = beforeClientExecution(request); return executeConfirmTopicRuleDestination(request); } @SdkInternalApi final ConfirmTopicRuleDestinationResult executeConfirmTopicRuleDestination(ConfirmTopicRuleDestinationRequest confirmTopicRuleDestinationRequest) { ExecutionContext executionContext = createExecutionContext(confirmTopicRuleDestinationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ConfirmTopicRuleDestinationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(confirmTopicRuleDestinationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ConfirmTopicRuleDestination"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ConfirmTopicRuleDestinationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a Device Defender audit suppression. *

*

* Requires permission to access the CreateAuditSuppression action. *

* * @param createAuditSuppressionRequest * @return Result of the CreateAuditSuppression operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws LimitExceededException * A limit has been exceeded. * @sample AWSIot.CreateAuditSuppression */ @Override public CreateAuditSuppressionResult createAuditSuppression(CreateAuditSuppressionRequest request) { request = beforeClientExecution(request); return executeCreateAuditSuppression(request); } @SdkInternalApi final CreateAuditSuppressionResult executeCreateAuditSuppression(CreateAuditSuppressionRequest createAuditSuppressionRequest) { ExecutionContext executionContext = createExecutionContext(createAuditSuppressionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateAuditSuppressionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createAuditSuppressionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateAuditSuppression"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateAuditSuppressionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates an authorizer. *

*

* Requires permission to access the CreateAuthorizer action. *

* * @param createAuthorizerRequest * @return Result of the CreateAuthorizer operation returned by the service. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws InvalidRequestException * The request is not valid. * @throws LimitExceededException * A limit has been exceeded. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CreateAuthorizer */ @Override public CreateAuthorizerResult createAuthorizer(CreateAuthorizerRequest request) { request = beforeClientExecution(request); return executeCreateAuthorizer(request); } @SdkInternalApi final CreateAuthorizerResult executeCreateAuthorizer(CreateAuthorizerRequest createAuthorizerRequest) { ExecutionContext executionContext = createExecutionContext(createAuthorizerRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateAuthorizerRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createAuthorizerRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateAuthorizer"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateAuthorizerResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a billing group. *

*

* Requires permission to access the CreateBillingGroup action. *

* * @param createBillingGroupRequest * @return Result of the CreateBillingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CreateBillingGroup */ @Override public CreateBillingGroupResult createBillingGroup(CreateBillingGroupRequest request) { request = beforeClientExecution(request); return executeCreateBillingGroup(request); } @SdkInternalApi final CreateBillingGroupResult executeCreateBillingGroup(CreateBillingGroupRequest createBillingGroupRequest) { ExecutionContext executionContext = createExecutionContext(createBillingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateBillingGroupRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createBillingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateBillingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateBillingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

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

*

* Requires permission to access the CreateCertificateFromCsr action. *

* *

* The CSR must include a public key that is either an RSA key with a length of at least 2048 bits or an ECC key * from NIST P-256 or NIST P-384 curves. For supported certificates, consult * Certificate signing algorithms supported by IoT. *

*
*

* 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. In the following commands, we assume that 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 Amazon Web Services CLI command to create a certificate for the * corresponding CSR. *

*

* You can also run the aws iot create-certificate-from-csr part of the command 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" *

* * @param createCertificateFromCsrRequest * The input for the CreateCertificateFromCsr operation. * @return Result of the CreateCertificateFromCsr operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CreateCertificateFromCsr */ @Override public CreateCertificateFromCsrResult createCertificateFromCsr(CreateCertificateFromCsrRequest request) { request = beforeClientExecution(request); return executeCreateCertificateFromCsr(request); } @SdkInternalApi final CreateCertificateFromCsrResult executeCreateCertificateFromCsr(CreateCertificateFromCsrRequest createCertificateFromCsrRequest) { ExecutionContext executionContext = createExecutionContext(createCertificateFromCsrRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateCertificateFromCsrRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(createCertificateFromCsrRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateCertificateFromCsr"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateCertificateFromCsrResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Use this API to define a Custom Metric published by your devices to Device Defender. *

*

* Requires permission to access the CreateCustomMetric action. *

* * @param createCustomMetricRequest * @return Result of the CreateCustomMetric operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws LimitExceededException * A limit has been exceeded. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CreateCustomMetric */ @Override public CreateCustomMetricResult createCustomMetric(CreateCustomMetricRequest request) { request = beforeClientExecution(request); return executeCreateCustomMetric(request); } @SdkInternalApi final CreateCustomMetricResult executeCreateCustomMetric(CreateCustomMetricRequest createCustomMetricRequest) { ExecutionContext executionContext = createExecutionContext(createCustomMetricRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateCustomMetricRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createCustomMetricRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateCustomMetric"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateCustomMetricResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Create a dimension that you can use to limit the scope of a metric used in a security profile for IoT Device * Defender. For example, using a TOPIC_FILTER dimension, you can narrow down the scope of the metric * only to MQTT topics whose name match the pattern specified in the dimension. *

*

* Requires permission to access the CreateDimension action. *

* * @param createDimensionRequest * @return Result of the CreateDimension operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws LimitExceededException * A limit has been exceeded. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.CreateDimension */ @Override public CreateDimensionResult createDimension(CreateDimensionRequest request) { request = beforeClientExecution(request); return executeCreateDimension(request); } @SdkInternalApi final CreateDimensionResult executeCreateDimension(CreateDimensionRequest createDimensionRequest) { ExecutionContext executionContext = createExecutionContext(createDimensionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateDimensionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createDimensionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateDimension"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateDimensionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a domain configuration. *

*

* Requires permission to access the CreateDomainConfiguration action. *

* * @param createDomainConfigurationRequest * @return Result of the CreateDomainConfiguration operation returned by the service. * @throws LimitExceededException * A limit has been exceeded. * @throws CertificateValidationException * The certificate is invalid. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.CreateDomainConfiguration */ @Override public CreateDomainConfigurationResult createDomainConfiguration(CreateDomainConfigurationRequest request) { request = beforeClientExecution(request); return executeCreateDomainConfiguration(request); } @SdkInternalApi final CreateDomainConfigurationResult executeCreateDomainConfiguration(CreateDomainConfigurationRequest createDomainConfigurationRequest) { ExecutionContext executionContext = createExecutionContext(createDomainConfigurationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateDomainConfigurationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(createDomainConfigurationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateDomainConfiguration"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateDomainConfigurationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a dynamic thing group. *

*

* Requires permission to access the CreateDynamicThingGroup action. *

* * @param createDynamicThingGroupRequest * @return Result of the CreateDynamicThingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidQueryException * The query is invalid. * @throws LimitExceededException * A limit has been exceeded. * @sample AWSIot.CreateDynamicThingGroup */ @Override public CreateDynamicThingGroupResult createDynamicThingGroup(CreateDynamicThingGroupRequest request) { request = beforeClientExecution(request); return executeCreateDynamicThingGroup(request); } @SdkInternalApi final CreateDynamicThingGroupResult executeCreateDynamicThingGroup(CreateDynamicThingGroupRequest createDynamicThingGroupRequest) { ExecutionContext executionContext = createExecutionContext(createDynamicThingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateDynamicThingGroupRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(createDynamicThingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateDynamicThingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateDynamicThingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a fleet metric. *

*

* Requires permission to access the CreateFleetMetric action. *

* * @param createFleetMetricRequest * @return Result of the CreateFleetMetric operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws LimitExceededException * A limit has been exceeded. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidQueryException * The query is invalid. * @throws InvalidAggregationException * The aggregation is invalid. * @throws IndexNotReadyException * The index is not ready. * @sample AWSIot.CreateFleetMetric */ @Override public CreateFleetMetricResult createFleetMetric(CreateFleetMetricRequest request) { request = beforeClientExecution(request); return executeCreateFleetMetric(request); } @SdkInternalApi final CreateFleetMetricResult executeCreateFleetMetric(CreateFleetMetricRequest createFleetMetricRequest) { ExecutionContext executionContext = createExecutionContext(createFleetMetricRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateFleetMetricRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createFleetMetricRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateFleetMetric"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateFleetMetricResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a job. *

*

* Requires permission to access the CreateJob action. *

* * @param createJobRequest * @return Result of the CreateJob operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws LimitExceededException * A limit has been exceeded. * @throws ThrottlingException * The rate exceeds the limit. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.CreateJob */ @Override public CreateJobResult createJob(CreateJobRequest request) { request = beforeClientExecution(request); return executeCreateJob(request); } @SdkInternalApi final CreateJobResult executeCreateJob(CreateJobRequest createJobRequest) { ExecutionContext executionContext = createExecutionContext(createJobRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateJobRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createJobRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateJob"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler(new JsonOperationMetadata() .withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateJobResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a job template. *

*

* Requires permission to access the CreateJobTemplate action. *

* * @param createJobTemplateRequest * @return Result of the CreateJobTemplate operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ConflictException * A resource with the same name already exists. * @throws LimitExceededException * A limit has been exceeded. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CreateJobTemplate */ @Override public CreateJobTemplateResult createJobTemplate(CreateJobTemplateRequest request) { request = beforeClientExecution(request); return executeCreateJobTemplate(request); } @SdkInternalApi final CreateJobTemplateResult executeCreateJobTemplate(CreateJobTemplateRequest createJobTemplateRequest) { ExecutionContext executionContext = createExecutionContext(createJobTemplateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateJobTemplateRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createJobTemplateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateJobTemplate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateJobTemplateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a 2048-bit RSA key pair and issues an X.509 certificate using the issued public key. You can also call * CreateKeysAndCertificate over MQTT from a device, for more information, see Provisioning MQTT API. *

*

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

*

* Requires permission to access the CreateKeysAndCertificate action. *

* * @param createKeysAndCertificateRequest * The input for the CreateKeysAndCertificate operation.

*

* Requires permission to access the CreateKeysAndCertificateRequest action. * @return Result of the CreateKeysAndCertificate operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CreateKeysAndCertificate */ @Override public CreateKeysAndCertificateResult createKeysAndCertificate(CreateKeysAndCertificateRequest request) { request = beforeClientExecution(request); return executeCreateKeysAndCertificate(request); } @SdkInternalApi final CreateKeysAndCertificateResult executeCreateKeysAndCertificate(CreateKeysAndCertificateRequest createKeysAndCertificateRequest) { ExecutionContext executionContext = createExecutionContext(createKeysAndCertificateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateKeysAndCertificateRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(createKeysAndCertificateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateKeysAndCertificate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateKeysAndCertificateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Defines an action that can be applied to audit findings by using StartAuditMitigationActionsTask. Only certain * types of mitigation actions can be applied to specific check names. For more information, see Mitigation * actions. Each mitigation action can apply only one type of change. *

*

* Requires permission to access the CreateMitigationAction action. *

* * @param createMitigationActionRequest * @return Result of the CreateMitigationAction operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws LimitExceededException * A limit has been exceeded. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CreateMitigationAction */ @Override public CreateMitigationActionResult createMitigationAction(CreateMitigationActionRequest request) { request = beforeClientExecution(request); return executeCreateMitigationAction(request); } @SdkInternalApi final CreateMitigationActionResult executeCreateMitigationAction(CreateMitigationActionRequest createMitigationActionRequest) { ExecutionContext executionContext = createExecutionContext(createMitigationActionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateMitigationActionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createMitigationActionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateMitigationAction"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateMitigationActionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates an IoT OTA update on a target group of things or groups. *

*

* Requires permission to access the CreateOTAUpdate action. *

* * @param createOTAUpdateRequest * @return Result of the CreateOTAUpdate operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws LimitExceededException * A limit has been exceeded. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws InternalFailureException * An unexpected error has occurred. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.CreateOTAUpdate */ @Override public CreateOTAUpdateResult createOTAUpdate(CreateOTAUpdateRequest request) { request = beforeClientExecution(request); return executeCreateOTAUpdate(request); } @SdkInternalApi final CreateOTAUpdateResult executeCreateOTAUpdate(CreateOTAUpdateRequest createOTAUpdateRequest) { ExecutionContext executionContext = createExecutionContext(createOTAUpdateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateOTAUpdateRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createOTAUpdateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateOTAUpdate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateOTAUpdateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates an IoT software package that can be deployed to your fleet. *

*

* Requires permission to access the CreatePackage and GetIndexingConfiguration actions. *

* * @param createPackageRequest * @return Result of the CreatePackage operation returned by the service. * @throws ThrottlingException * The rate exceeds the limit. * @throws ConflictException * A resource with the same name already exists. * @throws InternalServerException * Internal error from the service that indicates an unexpected error or that the service is unavailable. * @throws ValidationException * The request is not valid. * @throws ServiceQuotaExceededException * A limit has been exceeded. * @sample AWSIot.CreatePackage */ @Override public CreatePackageResult createPackage(CreatePackageRequest request) { request = beforeClientExecution(request); return executeCreatePackage(request); } @SdkInternalApi final CreatePackageResult executeCreatePackage(CreatePackageRequest createPackageRequest) { ExecutionContext executionContext = createExecutionContext(createPackageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreatePackageRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createPackageRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreatePackage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreatePackageResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a new version for an existing IoT software package. *

*

* Requires permission to access the CreatePackageVersion and GetIndexingConfiguration actions. *

* * @param createPackageVersionRequest * @return Result of the CreatePackageVersion operation returned by the service. * @throws ThrottlingException * The rate exceeds the limit. * @throws ConflictException * A resource with the same name already exists. * @throws InternalServerException * Internal error from the service that indicates an unexpected error or that the service is unavailable. * @throws ValidationException * The request is not valid. * @throws ServiceQuotaExceededException * A limit has been exceeded. * @sample AWSIot.CreatePackageVersion */ @Override public CreatePackageVersionResult createPackageVersion(CreatePackageVersionRequest request) { request = beforeClientExecution(request); return executeCreatePackageVersion(request); } @SdkInternalApi final CreatePackageVersionResult executeCreatePackageVersion(CreatePackageVersionRequest createPackageVersionRequest) { ExecutionContext executionContext = createExecutionContext(createPackageVersionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreatePackageVersionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createPackageVersionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreatePackageVersion"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreatePackageVersionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates an 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. *

*

* Requires permission to access the CreatePolicy action. *

* * @param createPolicyRequest * The input for the CreatePolicy operation. * @return Result of the CreatePolicy operation returned by the service. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws MalformedPolicyException * The policy documentation is not valid. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CreatePolicy */ @Override public CreatePolicyResult createPolicy(CreatePolicyRequest request) { request = beforeClientExecution(request); return executeCreatePolicy(request); } @SdkInternalApi final CreatePolicyResult executeCreatePolicy(CreatePolicyRequest createPolicyRequest) { ExecutionContext executionContext = createExecutionContext(createPolicyRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreatePolicyRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createPolicyRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreatePolicy"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreatePolicyResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a new version of the specified 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). *

*

* Requires permission to access the CreatePolicyVersion action. *

* * @param createPolicyVersionRequest * The input for the CreatePolicyVersion operation. * @return Result of the CreatePolicyVersion operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws MalformedPolicyException * The policy documentation is not valid. * @throws VersionsLimitExceededException * The number of policy versions exceeds the limit. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CreatePolicyVersion */ @Override public CreatePolicyVersionResult createPolicyVersion(CreatePolicyVersionRequest request) { request = beforeClientExecution(request); return executeCreatePolicyVersion(request); } @SdkInternalApi final CreatePolicyVersionResult executeCreatePolicyVersion(CreatePolicyVersionRequest createPolicyVersionRequest) { ExecutionContext executionContext = createExecutionContext(createPolicyVersionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreatePolicyVersionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createPolicyVersionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreatePolicyVersion"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreatePolicyVersionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a provisioning claim. *

*

* Requires permission to access the CreateProvisioningClaim action. *

* * @param createProvisioningClaimRequest * @return Result of the CreateProvisioningClaim operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CreateProvisioningClaim */ @Override public CreateProvisioningClaimResult createProvisioningClaim(CreateProvisioningClaimRequest request) { request = beforeClientExecution(request); return executeCreateProvisioningClaim(request); } @SdkInternalApi final CreateProvisioningClaimResult executeCreateProvisioningClaim(CreateProvisioningClaimRequest createProvisioningClaimRequest) { ExecutionContext executionContext = createExecutionContext(createProvisioningClaimRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateProvisioningClaimRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(createProvisioningClaimRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateProvisioningClaim"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateProvisioningClaimResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a provisioning template. *

*

* Requires permission to access the CreateProvisioningTemplate action. *

* * @param createProvisioningTemplateRequest * @return Result of the CreateProvisioningTemplate operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws LimitExceededException * A limit has been exceeded. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ResourceAlreadyExistsException * The resource already exists. * @sample AWSIot.CreateProvisioningTemplate */ @Override public CreateProvisioningTemplateResult createProvisioningTemplate(CreateProvisioningTemplateRequest request) { request = beforeClientExecution(request); return executeCreateProvisioningTemplate(request); } @SdkInternalApi final CreateProvisioningTemplateResult executeCreateProvisioningTemplate(CreateProvisioningTemplateRequest createProvisioningTemplateRequest) { ExecutionContext executionContext = createExecutionContext(createProvisioningTemplateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateProvisioningTemplateRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(createProvisioningTemplateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateProvisioningTemplate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateProvisioningTemplateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a new version of a provisioning template. *

*

* Requires permission to access the CreateProvisioningTemplateVersion action. *

* * @param createProvisioningTemplateVersionRequest * @return Result of the CreateProvisioningTemplateVersion operation returned by the service. * @throws VersionsLimitExceededException * The number of policy versions exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ConflictingResourceUpdateException * A conflicting resource update exception. This exception is thrown when two pending updates cause a * conflict. * @sample AWSIot.CreateProvisioningTemplateVersion */ @Override public CreateProvisioningTemplateVersionResult createProvisioningTemplateVersion(CreateProvisioningTemplateVersionRequest request) { request = beforeClientExecution(request); return executeCreateProvisioningTemplateVersion(request); } @SdkInternalApi final CreateProvisioningTemplateVersionResult executeCreateProvisioningTemplateVersion( CreateProvisioningTemplateVersionRequest createProvisioningTemplateVersionRequest) { ExecutionContext executionContext = createExecutionContext(createProvisioningTemplateVersionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateProvisioningTemplateVersionRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(createProvisioningTemplateVersionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateProvisioningTemplateVersion"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateProvisioningTemplateVersionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a role alias. *

*

* Requires permission to access the CreateRoleAlias action. *

* * @param createRoleAliasRequest * @return Result of the CreateRoleAlias operation returned by the service. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws InvalidRequestException * The request is not valid. * @throws LimitExceededException * A limit has been exceeded. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CreateRoleAlias */ @Override public CreateRoleAliasResult createRoleAlias(CreateRoleAliasRequest request) { request = beforeClientExecution(request); return executeCreateRoleAlias(request); } @SdkInternalApi final CreateRoleAliasResult executeCreateRoleAlias(CreateRoleAliasRequest createRoleAliasRequest) { ExecutionContext executionContext = createExecutionContext(createRoleAliasRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateRoleAliasRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createRoleAliasRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateRoleAlias"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateRoleAliasResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a scheduled audit that is run at a specified time interval. *

*

* Requires permission to access the CreateScheduledAudit action. *

* * @param createScheduledAuditRequest * @return Result of the CreateScheduledAudit operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws LimitExceededException * A limit has been exceeded. * @sample AWSIot.CreateScheduledAudit */ @Override public CreateScheduledAuditResult createScheduledAudit(CreateScheduledAuditRequest request) { request = beforeClientExecution(request); return executeCreateScheduledAudit(request); } @SdkInternalApi final CreateScheduledAuditResult executeCreateScheduledAudit(CreateScheduledAuditRequest createScheduledAuditRequest) { ExecutionContext executionContext = createExecutionContext(createScheduledAuditRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateScheduledAuditRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createScheduledAuditRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateScheduledAudit"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateScheduledAuditResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a Device Defender security profile. *

*

* Requires permission to access the CreateSecurityProfile action. *

* * @param createSecurityProfileRequest * @return Result of the CreateSecurityProfile operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CreateSecurityProfile */ @Override public CreateSecurityProfileResult createSecurityProfile(CreateSecurityProfileRequest request) { request = beforeClientExecution(request); return executeCreateSecurityProfile(request); } @SdkInternalApi final CreateSecurityProfileResult executeCreateSecurityProfile(CreateSecurityProfileRequest createSecurityProfileRequest) { ExecutionContext executionContext = createExecutionContext(createSecurityProfileRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateSecurityProfileRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createSecurityProfileRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateSecurityProfile"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateSecurityProfileResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a stream for delivering one or more large files in chunks over MQTT. A stream transports data bytes in * chunks or blocks packaged as MQTT messages from a source like S3. You can have one or more files associated with * a stream. *

*

* Requires permission to access the CreateStream action. *

* * @param createStreamRequest * @return Result of the CreateStream operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws LimitExceededException * A limit has been exceeded. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CreateStream */ @Override public CreateStreamResult createStream(CreateStreamRequest request) { request = beforeClientExecution(request); return executeCreateStream(request); } @SdkInternalApi final CreateStreamResult executeCreateStream(CreateStreamRequest createStreamRequest) { ExecutionContext executionContext = createExecutionContext(createStreamRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateStreamRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createStreamRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateStream"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateStreamResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a thing record in the registry. If this call is made multiple times using the same thing name and * configuration, the call will succeed. If this call is made with the same thing name but different configuration a * ResourceAlreadyExistsException is thrown. *

* *

* This is a control plane operation. See Authorization for * information about authorizing control plane actions. *

*
*

* Requires permission to access the CreateThing action. *

* * @param createThingRequest * The input for the CreateThing operation. * @return Result of the CreateThing operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.CreateThing */ @Override public CreateThingResult createThing(CreateThingRequest request) { request = beforeClientExecution(request); return executeCreateThing(request); } @SdkInternalApi final CreateThingResult executeCreateThing(CreateThingRequest createThingRequest) { ExecutionContext executionContext = createExecutionContext(createThingRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateThingRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createThingRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateThing"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateThingResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Create a thing group. *

* *

* This is a control plane operation. See Authorization for * information about authorizing control plane actions. *

*
*

* Requires permission to access the CreateThingGroup action. *

* * @param createThingGroupRequest * @return Result of the CreateThingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.CreateThingGroup */ @Override public CreateThingGroupResult createThingGroup(CreateThingGroupRequest request) { request = beforeClientExecution(request); return executeCreateThingGroup(request); } @SdkInternalApi final CreateThingGroupResult executeCreateThingGroup(CreateThingGroupRequest createThingGroupRequest) { ExecutionContext executionContext = createExecutionContext(createThingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateThingGroupRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createThingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateThingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateThingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a new thing type. *

*

* Requires permission to access the CreateThingType action. *

* * @param createThingTypeRequest * The input for the CreateThingType operation. * @return Result of the CreateThingType operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceAlreadyExistsException * The resource already exists. * @sample AWSIot.CreateThingType */ @Override public CreateThingTypeResult createThingType(CreateThingTypeRequest request) { request = beforeClientExecution(request); return executeCreateThingType(request); } @SdkInternalApi final CreateThingTypeResult executeCreateThingType(CreateThingTypeRequest createThingTypeRequest) { ExecutionContext executionContext = createExecutionContext(createThingTypeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateThingTypeRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createThingTypeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateThingType"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateThingTypeResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* 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. *

*

* Requires permission to access the CreateTopicRule action. *

* * @param createTopicRuleRequest * The input for the CreateTopicRule operation. * @return Result of the CreateTopicRule operation returned by the service. * @throws SqlParseException * The Rule-SQL expression can't be parsed correctly. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws ConflictingResourceUpdateException * A conflicting resource update exception. This exception is thrown when two pending updates cause a * conflict. * @sample AWSIot.CreateTopicRule */ @Override public CreateTopicRuleResult createTopicRule(CreateTopicRuleRequest request) { request = beforeClientExecution(request); return executeCreateTopicRule(request); } @SdkInternalApi final CreateTopicRuleResult executeCreateTopicRule(CreateTopicRuleRequest createTopicRuleRequest) { ExecutionContext executionContext = createExecutionContext(createTopicRuleRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateTopicRuleRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createTopicRuleRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateTopicRule"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateTopicRuleResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a topic rule destination. The destination must be confirmed prior to use. *

*

* Requires permission to access the CreateTopicRuleDestination action. *

* * @param createTopicRuleDestinationRequest * @return Result of the CreateTopicRuleDestination operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws ConflictingResourceUpdateException * A conflicting resource update exception. This exception is thrown when two pending updates cause a * conflict. * @sample AWSIot.CreateTopicRuleDestination */ @Override public CreateTopicRuleDestinationResult createTopicRuleDestination(CreateTopicRuleDestinationRequest request) { request = beforeClientExecution(request); return executeCreateTopicRuleDestination(request); } @SdkInternalApi final CreateTopicRuleDestinationResult executeCreateTopicRuleDestination(CreateTopicRuleDestinationRequest createTopicRuleDestinationRequest) { ExecutionContext executionContext = createExecutionContext(createTopicRuleDestinationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateTopicRuleDestinationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(createTopicRuleDestinationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateTopicRuleDestination"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateTopicRuleDestinationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Restores the default settings for Device Defender audits for this account. Any configuration data you entered is * deleted and all audit checks are reset to disabled. *

*

* Requires permission to access the DeleteAccountAuditConfiguration action. *

* * @param deleteAccountAuditConfigurationRequest * @return Result of the DeleteAccountAuditConfiguration operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeleteAccountAuditConfiguration */ @Override public DeleteAccountAuditConfigurationResult deleteAccountAuditConfiguration(DeleteAccountAuditConfigurationRequest request) { request = beforeClientExecution(request); return executeDeleteAccountAuditConfiguration(request); } @SdkInternalApi final DeleteAccountAuditConfigurationResult executeDeleteAccountAuditConfiguration( DeleteAccountAuditConfigurationRequest deleteAccountAuditConfigurationRequest) { ExecutionContext executionContext = createExecutionContext(deleteAccountAuditConfigurationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteAccountAuditConfigurationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(deleteAccountAuditConfigurationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteAccountAuditConfiguration"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteAccountAuditConfigurationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a Device Defender audit suppression. *

*

* Requires permission to access the DeleteAuditSuppression action. *

* * @param deleteAuditSuppressionRequest * @return Result of the DeleteAuditSuppression operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeleteAuditSuppression */ @Override public DeleteAuditSuppressionResult deleteAuditSuppression(DeleteAuditSuppressionRequest request) { request = beforeClientExecution(request); return executeDeleteAuditSuppression(request); } @SdkInternalApi final DeleteAuditSuppressionResult executeDeleteAuditSuppression(DeleteAuditSuppressionRequest deleteAuditSuppressionRequest) { ExecutionContext executionContext = createExecutionContext(deleteAuditSuppressionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteAuditSuppressionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteAuditSuppressionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteAuditSuppression"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteAuditSuppressionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes an authorizer. *

*

* Requires permission to access the DeleteAuthorizer action. *

* * @param deleteAuthorizerRequest * @return Result of the DeleteAuthorizer operation returned by the service. * @throws DeleteConflictException * You can't delete the resource because it is attached to one or more resources. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeleteAuthorizer */ @Override public DeleteAuthorizerResult deleteAuthorizer(DeleteAuthorizerRequest request) { request = beforeClientExecution(request); return executeDeleteAuthorizer(request); } @SdkInternalApi final DeleteAuthorizerResult executeDeleteAuthorizer(DeleteAuthorizerRequest deleteAuthorizerRequest) { ExecutionContext executionContext = createExecutionContext(deleteAuthorizerRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteAuthorizerRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteAuthorizerRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteAuthorizer"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteAuthorizerResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the billing group. *

*

* Requires permission to access the DeleteBillingGroup action. *

* * @param deleteBillingGroupRequest * @return Result of the DeleteBillingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws VersionConflictException * An exception thrown when the version of an entity specified with the expectedVersion * parameter does not match the latest version in the system. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeleteBillingGroup */ @Override public DeleteBillingGroupResult deleteBillingGroup(DeleteBillingGroupRequest request) { request = beforeClientExecution(request); return executeDeleteBillingGroup(request); } @SdkInternalApi final DeleteBillingGroupResult executeDeleteBillingGroup(DeleteBillingGroupRequest deleteBillingGroupRequest) { ExecutionContext executionContext = createExecutionContext(deleteBillingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteBillingGroupRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteBillingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteBillingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteBillingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a registered CA certificate. *

*

* Requires permission to access the DeleteCACertificate action. *

* * @param deleteCACertificateRequest * Input for the DeleteCACertificate operation. * @return Result of the DeleteCACertificate operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws CertificateStateException * The certificate operation is not allowed. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.DeleteCACertificate */ @Override public DeleteCACertificateResult deleteCACertificate(DeleteCACertificateRequest request) { request = beforeClientExecution(request); return executeDeleteCACertificate(request); } @SdkInternalApi final DeleteCACertificateResult executeDeleteCACertificate(DeleteCACertificateRequest deleteCACertificateRequest) { ExecutionContext executionContext = createExecutionContext(deleteCACertificateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteCACertificateRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteCACertificateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteCACertificate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteCACertificateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified certificate. *

*

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

*

* Requires permission to access the DeleteCertificate action. *

* * @param deleteCertificateRequest * The input for the DeleteCertificate operation. * @return Result of the DeleteCertificate operation returned by the service. * @throws CertificateStateException * The certificate operation is not allowed. * @throws DeleteConflictException * You can't delete the resource because it is attached to one or more resources. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.DeleteCertificate */ @Override public DeleteCertificateResult deleteCertificate(DeleteCertificateRequest request) { request = beforeClientExecution(request); return executeDeleteCertificate(request); } @SdkInternalApi final DeleteCertificateResult executeDeleteCertificate(DeleteCertificateRequest deleteCertificateRequest) { ExecutionContext executionContext = createExecutionContext(deleteCertificateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteCertificateRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteCertificateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteCertificate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteCertificateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a Device Defender detect custom metric. *

*

* Requires permission to access the DeleteCustomMetric action. *

* *

* Before you can delete a custom metric, you must first remove the custom metric from all security profiles it's a * part of. The security profile associated with the custom metric can be found using the ListSecurityProfiles * API with metricName set to your custom metric name. *

*
* * @param deleteCustomMetricRequest * @return Result of the DeleteCustomMetric operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeleteCustomMetric */ @Override public DeleteCustomMetricResult deleteCustomMetric(DeleteCustomMetricRequest request) { request = beforeClientExecution(request); return executeDeleteCustomMetric(request); } @SdkInternalApi final DeleteCustomMetricResult executeDeleteCustomMetric(DeleteCustomMetricRequest deleteCustomMetricRequest) { ExecutionContext executionContext = createExecutionContext(deleteCustomMetricRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteCustomMetricRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteCustomMetricRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteCustomMetric"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteCustomMetricResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Removes the specified dimension from your Amazon Web Services accounts. *

*

* Requires permission to access the DeleteDimension action. *

* * @param deleteDimensionRequest * @return Result of the DeleteDimension operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.DeleteDimension */ @Override public DeleteDimensionResult deleteDimension(DeleteDimensionRequest request) { request = beforeClientExecution(request); return executeDeleteDimension(request); } @SdkInternalApi final DeleteDimensionResult executeDeleteDimension(DeleteDimensionRequest deleteDimensionRequest) { ExecutionContext executionContext = createExecutionContext(deleteDimensionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteDimensionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteDimensionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteDimension"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteDimensionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified domain configuration. *

*

* Requires permission to access the DeleteDomainConfiguration action. *

* * @param deleteDomainConfigurationRequest * @return Result of the DeleteDomainConfiguration operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @sample AWSIot.DeleteDomainConfiguration */ @Override public DeleteDomainConfigurationResult deleteDomainConfiguration(DeleteDomainConfigurationRequest request) { request = beforeClientExecution(request); return executeDeleteDomainConfiguration(request); } @SdkInternalApi final DeleteDomainConfigurationResult executeDeleteDomainConfiguration(DeleteDomainConfigurationRequest deleteDomainConfigurationRequest) { ExecutionContext executionContext = createExecutionContext(deleteDomainConfigurationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteDomainConfigurationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(deleteDomainConfigurationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteDomainConfiguration"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteDomainConfigurationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a dynamic thing group. *

*

* Requires permission to access the DeleteDynamicThingGroup action. *

* * @param deleteDynamicThingGroupRequest * @return Result of the DeleteDynamicThingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws VersionConflictException * An exception thrown when the version of an entity specified with the expectedVersion * parameter does not match the latest version in the system. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeleteDynamicThingGroup */ @Override public DeleteDynamicThingGroupResult deleteDynamicThingGroup(DeleteDynamicThingGroupRequest request) { request = beforeClientExecution(request); return executeDeleteDynamicThingGroup(request); } @SdkInternalApi final DeleteDynamicThingGroupResult executeDeleteDynamicThingGroup(DeleteDynamicThingGroupRequest deleteDynamicThingGroupRequest) { ExecutionContext executionContext = createExecutionContext(deleteDynamicThingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteDynamicThingGroupRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(deleteDynamicThingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteDynamicThingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteDynamicThingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified fleet metric. Returns successfully with no error if the deletion is successful or you * specify a fleet metric that doesn't exist. *

*

* Requires permission to access the DeleteFleetMetric action. *

* * @param deleteFleetMetricRequest * @return Result of the DeleteFleetMetric operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws VersionConflictException * An exception thrown when the version of an entity specified with the expectedVersion * parameter does not match the latest version in the system. * @sample AWSIot.DeleteFleetMetric */ @Override public DeleteFleetMetricResult deleteFleetMetric(DeleteFleetMetricRequest request) { request = beforeClientExecution(request); return executeDeleteFleetMetric(request); } @SdkInternalApi final DeleteFleetMetricResult executeDeleteFleetMetric(DeleteFleetMetricRequest deleteFleetMetricRequest) { ExecutionContext executionContext = createExecutionContext(deleteFleetMetricRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteFleetMetricRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteFleetMetricRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteFleetMetric"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteFleetMetricResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a job and its related job executions. *

*

* Deleting a job may take time, depending on the number of job executions created for the job and various other * factors. While the job is being deleted, the status of the job will be shown as "DELETION_IN_PROGRESS". * Attempting to delete or cancel a job whose status is already "DELETION_IN_PROGRESS" will result in an error. *

*

* Only 10 jobs may have status "DELETION_IN_PROGRESS" at the same time, or a LimitExceededException will occur. *

*

* Requires permission to access the DeleteJob action. *

* * @param deleteJobRequest * @return Result of the DeleteJob operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws InvalidStateTransitionException * An attempt was made to change to an invalid state, for example by deleting a job or a job execution which * is "IN_PROGRESS" without setting the force parameter. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws LimitExceededException * A limit has been exceeded. * @throws ThrottlingException * The rate exceeds the limit. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.DeleteJob */ @Override public DeleteJobResult deleteJob(DeleteJobRequest request) { request = beforeClientExecution(request); return executeDeleteJob(request); } @SdkInternalApi final DeleteJobResult executeDeleteJob(DeleteJobRequest deleteJobRequest) { ExecutionContext executionContext = createExecutionContext(deleteJobRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteJobRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteJobRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteJob"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler(new JsonOperationMetadata() .withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteJobResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a job execution. *

*

* Requires permission to access the DeleteJobExecution action. *

* * @param deleteJobExecutionRequest * @return Result of the DeleteJobExecution operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws InvalidStateTransitionException * An attempt was made to change to an invalid state, for example by deleting a job or a job execution which * is "IN_PROGRESS" without setting the force parameter. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.DeleteJobExecution */ @Override public DeleteJobExecutionResult deleteJobExecution(DeleteJobExecutionRequest request) { request = beforeClientExecution(request); return executeDeleteJobExecution(request); } @SdkInternalApi final DeleteJobExecutionResult executeDeleteJobExecution(DeleteJobExecutionRequest deleteJobExecutionRequest) { ExecutionContext executionContext = createExecutionContext(deleteJobExecutionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteJobExecutionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteJobExecutionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteJobExecution"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteJobExecutionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified job template. *

* * @param deleteJobTemplateRequest * @return Result of the DeleteJobTemplate operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeleteJobTemplate */ @Override public DeleteJobTemplateResult deleteJobTemplate(DeleteJobTemplateRequest request) { request = beforeClientExecution(request); return executeDeleteJobTemplate(request); } @SdkInternalApi final DeleteJobTemplateResult executeDeleteJobTemplate(DeleteJobTemplateRequest deleteJobTemplateRequest) { ExecutionContext executionContext = createExecutionContext(deleteJobTemplateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteJobTemplateRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteJobTemplateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteJobTemplate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteJobTemplateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a defined mitigation action from your Amazon Web Services accounts. *

*

* Requires permission to access the DeleteMitigationAction action. *

* * @param deleteMitigationActionRequest * @return Result of the DeleteMitigationAction operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeleteMitigationAction */ @Override public DeleteMitigationActionResult deleteMitigationAction(DeleteMitigationActionRequest request) { request = beforeClientExecution(request); return executeDeleteMitigationAction(request); } @SdkInternalApi final DeleteMitigationActionResult executeDeleteMitigationAction(DeleteMitigationActionRequest deleteMitigationActionRequest) { ExecutionContext executionContext = createExecutionContext(deleteMitigationActionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteMitigationActionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteMitigationActionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteMitigationAction"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteMitigationActionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Delete an OTA update. *

*

* Requires permission to access the DeleteOTAUpdate action. *

* * @param deleteOTAUpdateRequest * @return Result of the DeleteOTAUpdate operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws InternalFailureException * An unexpected error has occurred. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws VersionConflictException * An exception thrown when the version of an entity specified with the expectedVersion * parameter does not match the latest version in the system. * @sample AWSIot.DeleteOTAUpdate */ @Override public DeleteOTAUpdateResult deleteOTAUpdate(DeleteOTAUpdateRequest request) { request = beforeClientExecution(request); return executeDeleteOTAUpdate(request); } @SdkInternalApi final DeleteOTAUpdateResult executeDeleteOTAUpdate(DeleteOTAUpdateRequest deleteOTAUpdateRequest) { ExecutionContext executionContext = createExecutionContext(deleteOTAUpdateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteOTAUpdateRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteOTAUpdateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteOTAUpdate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteOTAUpdateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a specific version from a software package. *

*

* Note: All package versions must be deleted before deleting the software package. *

*

* Requires permission to access the DeletePackageVersion action. *

* * @param deletePackageRequest * @return Result of the DeletePackage operation returned by the service. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalServerException * Internal error from the service that indicates an unexpected error or that the service is unavailable. * @throws ValidationException * The request is not valid. * @sample AWSIot.DeletePackage */ @Override public DeletePackageResult deletePackage(DeletePackageRequest request) { request = beforeClientExecution(request); return executeDeletePackage(request); } @SdkInternalApi final DeletePackageResult executeDeletePackage(DeletePackageRequest deletePackageRequest) { ExecutionContext executionContext = createExecutionContext(deletePackageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeletePackageRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deletePackageRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeletePackage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeletePackageResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a specific version from a software package. *

*

* Note: If a package version is designated as default, you must remove the designation from the package * using the UpdatePackage action. *

* * @param deletePackageVersionRequest * @return Result of the DeletePackageVersion operation returned by the service. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalServerException * Internal error from the service that indicates an unexpected error or that the service is unavailable. * @throws ValidationException * The request is not valid. * @sample AWSIot.DeletePackageVersion */ @Override public DeletePackageVersionResult deletePackageVersion(DeletePackageVersionRequest request) { request = beforeClientExecution(request); return executeDeletePackageVersion(request); } @SdkInternalApi final DeletePackageVersionResult executeDeletePackageVersion(DeletePackageVersionRequest deletePackageVersionRequest) { ExecutionContext executionContext = createExecutionContext(deletePackageVersionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeletePackageVersionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deletePackageVersionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeletePackageVersion"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeletePackageVersionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* 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 action to delete all non-default versions of the policy; * use the DetachPolicy action to detach the policy from any certificate; and then use the DeletePolicy * action to delete the policy. *

*

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

* *

* Because of the distributed nature of Amazon Web Services, it can take up to five minutes after a policy is * detached before it's ready to be deleted. *

*
*

* Requires permission to access the DeletePolicy action. *

* * @param deletePolicyRequest * The input for the DeletePolicy operation. * @return Result of the DeletePolicy operation returned by the service. * @throws DeleteConflictException * You can't delete the resource because it is attached to one or more resources. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeletePolicy */ @Override public DeletePolicyResult deletePolicy(DeletePolicyRequest request) { request = beforeClientExecution(request); return executeDeletePolicy(request); } @SdkInternalApi final DeletePolicyResult executeDeletePolicy(DeletePolicyRequest deletePolicyRequest) { ExecutionContext executionContext = createExecutionContext(deletePolicyRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeletePolicyRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deletePolicyRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeletePolicy"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeletePolicyResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified version of the specified policy. You cannot delete the default version of a policy using * this action. 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. *

*

* Requires permission to access the DeletePolicyVersion action. *

* * @param deletePolicyVersionRequest * The input for the DeletePolicyVersion operation. * @return Result of the DeletePolicyVersion operation returned by the service. * @throws DeleteConflictException * You can't delete the resource because it is attached to one or more resources. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeletePolicyVersion */ @Override public DeletePolicyVersionResult deletePolicyVersion(DeletePolicyVersionRequest request) { request = beforeClientExecution(request); return executeDeletePolicyVersion(request); } @SdkInternalApi final DeletePolicyVersionResult executeDeletePolicyVersion(DeletePolicyVersionRequest deletePolicyVersionRequest) { ExecutionContext executionContext = createExecutionContext(deletePolicyVersionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeletePolicyVersionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deletePolicyVersionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeletePolicyVersion"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeletePolicyVersionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a provisioning template. *

*

* Requires permission to access the DeleteProvisioningTemplate action. *

* * @param deleteProvisioningTemplateRequest * @return Result of the DeleteProvisioningTemplate operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws DeleteConflictException * You can't delete the resource because it is attached to one or more resources. * @throws ThrottlingException * The rate exceeds the limit. * @throws ConflictingResourceUpdateException * A conflicting resource update exception. This exception is thrown when two pending updates cause a * conflict. * @throws UnauthorizedException * You are not authorized to perform this operation. * @sample AWSIot.DeleteProvisioningTemplate */ @Override public DeleteProvisioningTemplateResult deleteProvisioningTemplate(DeleteProvisioningTemplateRequest request) { request = beforeClientExecution(request); return executeDeleteProvisioningTemplate(request); } @SdkInternalApi final DeleteProvisioningTemplateResult executeDeleteProvisioningTemplate(DeleteProvisioningTemplateRequest deleteProvisioningTemplateRequest) { ExecutionContext executionContext = createExecutionContext(deleteProvisioningTemplateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteProvisioningTemplateRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(deleteProvisioningTemplateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteProvisioningTemplate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteProvisioningTemplateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a provisioning template version. *

*

* Requires permission to access the DeleteProvisioningTemplateVersion action. *

* * @param deleteProvisioningTemplateVersionRequest * @return Result of the DeleteProvisioningTemplateVersion operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ConflictingResourceUpdateException * A conflicting resource update exception. This exception is thrown when two pending updates cause a * conflict. * @throws DeleteConflictException * You can't delete the resource because it is attached to one or more resources. * @sample AWSIot.DeleteProvisioningTemplateVersion */ @Override public DeleteProvisioningTemplateVersionResult deleteProvisioningTemplateVersion(DeleteProvisioningTemplateVersionRequest request) { request = beforeClientExecution(request); return executeDeleteProvisioningTemplateVersion(request); } @SdkInternalApi final DeleteProvisioningTemplateVersionResult executeDeleteProvisioningTemplateVersion( DeleteProvisioningTemplateVersionRequest deleteProvisioningTemplateVersionRequest) { ExecutionContext executionContext = createExecutionContext(deleteProvisioningTemplateVersionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteProvisioningTemplateVersionRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(deleteProvisioningTemplateVersionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteProvisioningTemplateVersion"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteProvisioningTemplateVersionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a CA certificate registration code. *

*

* Requires permission to access the DeleteRegistrationCode action. *

* * @param deleteRegistrationCodeRequest * The input for the DeleteRegistrationCode operation. * @return Result of the DeleteRegistrationCode operation returned by the service. * @throws ThrottlingException * The rate exceeds the limit. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeleteRegistrationCode */ @Override public DeleteRegistrationCodeResult deleteRegistrationCode(DeleteRegistrationCodeRequest request) { request = beforeClientExecution(request); return executeDeleteRegistrationCode(request); } @SdkInternalApi final DeleteRegistrationCodeResult executeDeleteRegistrationCode(DeleteRegistrationCodeRequest deleteRegistrationCodeRequest) { ExecutionContext executionContext = createExecutionContext(deleteRegistrationCodeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteRegistrationCodeRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteRegistrationCodeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteRegistrationCode"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteRegistrationCodeResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a role alias *

*

* Requires permission to access the DeleteRoleAlias action. *

* * @param deleteRoleAliasRequest * @return Result of the DeleteRoleAlias operation returned by the service. * @throws DeleteConflictException * You can't delete the resource because it is attached to one or more resources. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.DeleteRoleAlias */ @Override public DeleteRoleAliasResult deleteRoleAlias(DeleteRoleAliasRequest request) { request = beforeClientExecution(request); return executeDeleteRoleAlias(request); } @SdkInternalApi final DeleteRoleAliasResult executeDeleteRoleAlias(DeleteRoleAliasRequest deleteRoleAliasRequest) { ExecutionContext executionContext = createExecutionContext(deleteRoleAliasRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteRoleAliasRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteRoleAliasRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteRoleAlias"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteRoleAliasResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a scheduled audit. *

*

* Requires permission to access the DeleteScheduledAudit action. *

* * @param deleteScheduledAuditRequest * @return Result of the DeleteScheduledAudit operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeleteScheduledAudit */ @Override public DeleteScheduledAuditResult deleteScheduledAudit(DeleteScheduledAuditRequest request) { request = beforeClientExecution(request); return executeDeleteScheduledAudit(request); } @SdkInternalApi final DeleteScheduledAuditResult executeDeleteScheduledAudit(DeleteScheduledAuditRequest deleteScheduledAuditRequest) { ExecutionContext executionContext = createExecutionContext(deleteScheduledAuditRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteScheduledAuditRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteScheduledAuditRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteScheduledAudit"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteScheduledAuditResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a Device Defender security profile. *

*

* Requires permission to access the DeleteSecurityProfile action. *

* * @param deleteSecurityProfileRequest * @return Result of the DeleteSecurityProfile operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws VersionConflictException * An exception thrown when the version of an entity specified with the expectedVersion * parameter does not match the latest version in the system. * @sample AWSIot.DeleteSecurityProfile */ @Override public DeleteSecurityProfileResult deleteSecurityProfile(DeleteSecurityProfileRequest request) { request = beforeClientExecution(request); return executeDeleteSecurityProfile(request); } @SdkInternalApi final DeleteSecurityProfileResult executeDeleteSecurityProfile(DeleteSecurityProfileRequest deleteSecurityProfileRequest) { ExecutionContext executionContext = createExecutionContext(deleteSecurityProfileRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteSecurityProfileRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteSecurityProfileRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteSecurityProfile"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteSecurityProfileResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a stream. *

*

* Requires permission to access the DeleteStream action. *

* * @param deleteStreamRequest * @return Result of the DeleteStream operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws DeleteConflictException * You can't delete the resource because it is attached to one or more resources. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeleteStream */ @Override public DeleteStreamResult deleteStream(DeleteStreamRequest request) { request = beforeClientExecution(request); return executeDeleteStream(request); } @SdkInternalApi final DeleteStreamResult executeDeleteStream(DeleteStreamRequest deleteStreamRequest) { ExecutionContext executionContext = createExecutionContext(deleteStreamRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteStreamRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteStreamRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteStream"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteStreamResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified thing. Returns successfully with no error if the deletion is successful or you specify a * thing that doesn't exist. *

*

* Requires permission to access the DeleteThing action. *

* * @param deleteThingRequest * The input for the DeleteThing operation. * @return Result of the DeleteThing operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws VersionConflictException * An exception thrown when the version of an entity specified with the expectedVersion * parameter does not match the latest version in the system. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeleteThing */ @Override public DeleteThingResult deleteThing(DeleteThingRequest request) { request = beforeClientExecution(request); return executeDeleteThing(request); } @SdkInternalApi final DeleteThingResult executeDeleteThing(DeleteThingRequest deleteThingRequest) { ExecutionContext executionContext = createExecutionContext(deleteThingRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteThingRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteThingRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteThing"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteThingResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a thing group. *

*

* Requires permission to access the DeleteThingGroup action. *

* * @param deleteThingGroupRequest * @return Result of the DeleteThingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws VersionConflictException * An exception thrown when the version of an entity specified with the expectedVersion * parameter does not match the latest version in the system. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeleteThingGroup */ @Override public DeleteThingGroupResult deleteThingGroup(DeleteThingGroupRequest request) { request = beforeClientExecution(request); return executeDeleteThingGroup(request); } @SdkInternalApi final DeleteThingGroupResult executeDeleteThingGroup(DeleteThingGroupRequest deleteThingGroupRequest) { ExecutionContext executionContext = createExecutionContext(deleteThingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteThingGroupRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteThingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteThingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteThingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the specified thing type. You cannot delete a thing type if it has things associated with it. To delete a * thing type, first mark it as deprecated by calling DeprecateThingType, then remove any associated things * by calling UpdateThing to change the thing type on any associated thing, and finally use * DeleteThingType to delete the thing type. *

*

* Requires permission to access the DeleteThingType action. *

* * @param deleteThingTypeRequest * The input for the DeleteThingType operation. * @return Result of the DeleteThingType operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeleteThingType */ @Override public DeleteThingTypeResult deleteThingType(DeleteThingTypeRequest request) { request = beforeClientExecution(request); return executeDeleteThingType(request); } @SdkInternalApi final DeleteThingTypeResult executeDeleteThingType(DeleteThingTypeRequest deleteThingTypeRequest) { ExecutionContext executionContext = createExecutionContext(deleteThingTypeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteThingTypeRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteThingTypeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteThingType"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteThingTypeResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the rule. *

*

* Requires permission to access the DeleteTopicRule action. *

* * @param deleteTopicRuleRequest * The input for the DeleteTopicRule operation. * @return Result of the DeleteTopicRule operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ConflictingResourceUpdateException * A conflicting resource update exception. This exception is thrown when two pending updates cause a * conflict. * @sample AWSIot.DeleteTopicRule */ @Override public DeleteTopicRuleResult deleteTopicRule(DeleteTopicRuleRequest request) { request = beforeClientExecution(request); return executeDeleteTopicRule(request); } @SdkInternalApi final DeleteTopicRuleResult executeDeleteTopicRule(DeleteTopicRuleRequest deleteTopicRuleRequest) { ExecutionContext executionContext = createExecutionContext(deleteTopicRuleRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteTopicRuleRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteTopicRuleRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteTopicRule"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteTopicRuleResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a topic rule destination. *

*

* Requires permission to access the DeleteTopicRuleDestination action. *

* * @param deleteTopicRuleDestinationRequest * @return Result of the DeleteTopicRuleDestination operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ConflictingResourceUpdateException * A conflicting resource update exception. This exception is thrown when two pending updates cause a * conflict. * @sample AWSIot.DeleteTopicRuleDestination */ @Override public DeleteTopicRuleDestinationResult deleteTopicRuleDestination(DeleteTopicRuleDestinationRequest request) { request = beforeClientExecution(request); return executeDeleteTopicRuleDestination(request); } @SdkInternalApi final DeleteTopicRuleDestinationResult executeDeleteTopicRuleDestination(DeleteTopicRuleDestinationRequest deleteTopicRuleDestinationRequest) { ExecutionContext executionContext = createExecutionContext(deleteTopicRuleDestinationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteTopicRuleDestinationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(deleteTopicRuleDestinationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteTopicRuleDestination"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteTopicRuleDestinationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a logging level. *

*

* Requires permission to access the DeleteV2LoggingLevel action. *

* * @param deleteV2LoggingLevelRequest * @return Result of the DeleteV2LoggingLevel operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.DeleteV2LoggingLevel */ @Override public DeleteV2LoggingLevelResult deleteV2LoggingLevel(DeleteV2LoggingLevelRequest request) { request = beforeClientExecution(request); return executeDeleteV2LoggingLevel(request); } @SdkInternalApi final DeleteV2LoggingLevelResult executeDeleteV2LoggingLevel(DeleteV2LoggingLevelRequest deleteV2LoggingLevelRequest) { ExecutionContext executionContext = createExecutionContext(deleteV2LoggingLevelRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteV2LoggingLevelRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteV2LoggingLevelRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteV2LoggingLevel"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteV2LoggingLevelResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deprecates a thing type. You can not associate new things with deprecated thing type. *

*

* Requires permission to access the DeprecateThingType action. *

* * @param deprecateThingTypeRequest * The input for the DeprecateThingType operation. * @return Result of the DeprecateThingType operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DeprecateThingType */ @Override public DeprecateThingTypeResult deprecateThingType(DeprecateThingTypeRequest request) { request = beforeClientExecution(request); return executeDeprecateThingType(request); } @SdkInternalApi final DeprecateThingTypeResult executeDeprecateThingType(DeprecateThingTypeRequest deprecateThingTypeRequest) { ExecutionContext executionContext = createExecutionContext(deprecateThingTypeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeprecateThingTypeRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deprecateThingTypeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeprecateThingType"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeprecateThingTypeResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the Device Defender audit settings for this account. Settings include how audit * notifications are sent and which audit checks are enabled or disabled. *

*

* Requires permission to access the DescribeAccountAuditConfiguration action. *

* * @param describeAccountAuditConfigurationRequest * @return Result of the DescribeAccountAuditConfiguration operation returned by the service. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeAccountAuditConfiguration */ @Override public DescribeAccountAuditConfigurationResult describeAccountAuditConfiguration(DescribeAccountAuditConfigurationRequest request) { request = beforeClientExecution(request); return executeDescribeAccountAuditConfiguration(request); } @SdkInternalApi final DescribeAccountAuditConfigurationResult executeDescribeAccountAuditConfiguration( DescribeAccountAuditConfigurationRequest describeAccountAuditConfigurationRequest) { ExecutionContext executionContext = createExecutionContext(describeAccountAuditConfigurationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeAccountAuditConfigurationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(describeAccountAuditConfigurationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeAccountAuditConfiguration"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeAccountAuditConfigurationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about a single audit finding. Properties include the reason for noncompliance, the severity of * the issue, and the start time when the audit that returned the finding. *

*

* Requires permission to access the DescribeAuditFinding action. *

* * @param describeAuditFindingRequest * @return Result of the DescribeAuditFinding operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeAuditFinding */ @Override public DescribeAuditFindingResult describeAuditFinding(DescribeAuditFindingRequest request) { request = beforeClientExecution(request); return executeDescribeAuditFinding(request); } @SdkInternalApi final DescribeAuditFindingResult executeDescribeAuditFinding(DescribeAuditFindingRequest describeAuditFindingRequest) { ExecutionContext executionContext = createExecutionContext(describeAuditFindingRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeAuditFindingRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeAuditFindingRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeAuditFinding"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeAuditFindingResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about an audit mitigation task that is used to apply mitigation actions to a set of audit * findings. Properties include the actions being applied, the audit checks to which they're being applied, the task * status, and aggregated task statistics. *

* * @param describeAuditMitigationActionsTaskRequest * @return Result of the DescribeAuditMitigationActionsTask operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeAuditMitigationActionsTask */ @Override public DescribeAuditMitigationActionsTaskResult describeAuditMitigationActionsTask(DescribeAuditMitigationActionsTaskRequest request) { request = beforeClientExecution(request); return executeDescribeAuditMitigationActionsTask(request); } @SdkInternalApi final DescribeAuditMitigationActionsTaskResult executeDescribeAuditMitigationActionsTask( DescribeAuditMitigationActionsTaskRequest describeAuditMitigationActionsTaskRequest) { ExecutionContext executionContext = createExecutionContext(describeAuditMitigationActionsTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeAuditMitigationActionsTaskRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(describeAuditMitigationActionsTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeAuditMitigationActionsTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeAuditMitigationActionsTaskResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about a Device Defender audit suppression. *

* * @param describeAuditSuppressionRequest * @return Result of the DescribeAuditSuppression operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeAuditSuppression */ @Override public DescribeAuditSuppressionResult describeAuditSuppression(DescribeAuditSuppressionRequest request) { request = beforeClientExecution(request); return executeDescribeAuditSuppression(request); } @SdkInternalApi final DescribeAuditSuppressionResult executeDescribeAuditSuppression(DescribeAuditSuppressionRequest describeAuditSuppressionRequest) { ExecutionContext executionContext = createExecutionContext(describeAuditSuppressionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeAuditSuppressionRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(describeAuditSuppressionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeAuditSuppression"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeAuditSuppressionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about a Device Defender audit. *

*

* Requires permission to access the DescribeAuditTask action. *

* * @param describeAuditTaskRequest * @return Result of the DescribeAuditTask operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeAuditTask */ @Override public DescribeAuditTaskResult describeAuditTask(DescribeAuditTaskRequest request) { request = beforeClientExecution(request); return executeDescribeAuditTask(request); } @SdkInternalApi final DescribeAuditTaskResult executeDescribeAuditTask(DescribeAuditTaskRequest describeAuditTaskRequest) { ExecutionContext executionContext = createExecutionContext(describeAuditTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeAuditTaskRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeAuditTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeAuditTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeAuditTaskResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes an authorizer. *

*

* Requires permission to access the DescribeAuthorizer action. *

* * @param describeAuthorizerRequest * @return Result of the DescribeAuthorizer operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeAuthorizer */ @Override public DescribeAuthorizerResult describeAuthorizer(DescribeAuthorizerRequest request) { request = beforeClientExecution(request); return executeDescribeAuthorizer(request); } @SdkInternalApi final DescribeAuthorizerResult executeDescribeAuthorizer(DescribeAuthorizerRequest describeAuthorizerRequest) { ExecutionContext executionContext = createExecutionContext(describeAuthorizerRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeAuthorizerRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeAuthorizerRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeAuthorizer"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeAuthorizerResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns information about a billing group. *

*

* Requires permission to access the DescribeBillingGroup action. *

* * @param describeBillingGroupRequest * @return Result of the DescribeBillingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.DescribeBillingGroup */ @Override public DescribeBillingGroupResult describeBillingGroup(DescribeBillingGroupRequest request) { request = beforeClientExecution(request); return executeDescribeBillingGroup(request); } @SdkInternalApi final DescribeBillingGroupResult executeDescribeBillingGroup(DescribeBillingGroupRequest describeBillingGroupRequest) { ExecutionContext executionContext = createExecutionContext(describeBillingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeBillingGroupRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeBillingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeBillingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeBillingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes a registered CA certificate. *

*

* Requires permission to access the DescribeCACertificate action. *

* * @param describeCACertificateRequest * The input for the DescribeCACertificate operation. * @return Result of the DescribeCACertificate operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.DescribeCACertificate */ @Override public DescribeCACertificateResult describeCACertificate(DescribeCACertificateRequest request) { request = beforeClientExecution(request); return executeDescribeCACertificate(request); } @SdkInternalApi final DescribeCACertificateResult executeDescribeCACertificate(DescribeCACertificateRequest describeCACertificateRequest) { ExecutionContext executionContext = createExecutionContext(describeCACertificateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeCACertificateRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeCACertificateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeCACertificate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeCACertificateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the specified certificate. *

*

* Requires permission to access the DescribeCertificate action. *

* * @param describeCertificateRequest * The input for the DescribeCertificate operation. * @return Result of the DescribeCertificate operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.DescribeCertificate */ @Override public DescribeCertificateResult describeCertificate(DescribeCertificateRequest request) { request = beforeClientExecution(request); return executeDescribeCertificate(request); } @SdkInternalApi final DescribeCertificateResult executeDescribeCertificate(DescribeCertificateRequest describeCertificateRequest) { ExecutionContext executionContext = createExecutionContext(describeCertificateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeCertificateRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeCertificateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeCertificate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeCertificateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about a Device Defender detect custom metric. *

*

* Requires permission to access the DescribeCustomMetric action. *

* * @param describeCustomMetricRequest * @return Result of the DescribeCustomMetric operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeCustomMetric */ @Override public DescribeCustomMetricResult describeCustomMetric(DescribeCustomMetricRequest request) { request = beforeClientExecution(request); return executeDescribeCustomMetric(request); } @SdkInternalApi final DescribeCustomMetricResult executeDescribeCustomMetric(DescribeCustomMetricRequest describeCustomMetricRequest) { ExecutionContext executionContext = createExecutionContext(describeCustomMetricRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeCustomMetricRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeCustomMetricRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeCustomMetric"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeCustomMetricResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes the default authorizer. *

*

* Requires permission to access the DescribeDefaultAuthorizer action. *

* * @param describeDefaultAuthorizerRequest * @return Result of the DescribeDefaultAuthorizer operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeDefaultAuthorizer */ @Override public DescribeDefaultAuthorizerResult describeDefaultAuthorizer(DescribeDefaultAuthorizerRequest request) { request = beforeClientExecution(request); return executeDescribeDefaultAuthorizer(request); } @SdkInternalApi final DescribeDefaultAuthorizerResult executeDescribeDefaultAuthorizer(DescribeDefaultAuthorizerRequest describeDefaultAuthorizerRequest) { ExecutionContext executionContext = createExecutionContext(describeDefaultAuthorizerRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeDefaultAuthorizerRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(describeDefaultAuthorizerRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeDefaultAuthorizer"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeDefaultAuthorizerResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about a Device Defender ML Detect mitigation action. *

*

* Requires permission to access the DescribeDetectMitigationActionsTask action. *

* * @param describeDetectMitigationActionsTaskRequest * @return Result of the DescribeDetectMitigationActionsTask operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeDetectMitigationActionsTask */ @Override public DescribeDetectMitigationActionsTaskResult describeDetectMitigationActionsTask(DescribeDetectMitigationActionsTaskRequest request) { request = beforeClientExecution(request); return executeDescribeDetectMitigationActionsTask(request); } @SdkInternalApi final DescribeDetectMitigationActionsTaskResult executeDescribeDetectMitigationActionsTask( DescribeDetectMitigationActionsTaskRequest describeDetectMitigationActionsTaskRequest) { ExecutionContext executionContext = createExecutionContext(describeDetectMitigationActionsTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeDetectMitigationActionsTaskRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(describeDetectMitigationActionsTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeDetectMitigationActionsTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeDetectMitigationActionsTaskResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Provides details about a dimension that is defined in your Amazon Web Services accounts. *

*

* Requires permission to access the DescribeDimension action. *

* * @param describeDimensionRequest * @return Result of the DescribeDimension operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.DescribeDimension */ @Override public DescribeDimensionResult describeDimension(DescribeDimensionRequest request) { request = beforeClientExecution(request); return executeDescribeDimension(request); } @SdkInternalApi final DescribeDimensionResult executeDescribeDimension(DescribeDimensionRequest describeDimensionRequest) { ExecutionContext executionContext = createExecutionContext(describeDimensionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeDimensionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeDimensionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeDimension"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeDimensionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets summary information about a domain configuration. *

*

* Requires permission to access the DescribeDomainConfiguration action. *

* * @param describeDomainConfigurationRequest * @return Result of the DescribeDomainConfiguration operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InvalidRequestException * The request is not valid. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeDomainConfiguration */ @Override public DescribeDomainConfigurationResult describeDomainConfiguration(DescribeDomainConfigurationRequest request) { request = beforeClientExecution(request); return executeDescribeDomainConfiguration(request); } @SdkInternalApi final DescribeDomainConfigurationResult executeDescribeDomainConfiguration(DescribeDomainConfigurationRequest describeDomainConfigurationRequest) { ExecutionContext executionContext = createExecutionContext(describeDomainConfigurationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeDomainConfigurationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(describeDomainConfigurationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeDomainConfiguration"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeDomainConfigurationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns a unique endpoint specific to the Amazon Web Services account making the call. *

*

* Requires permission to access the DescribeEndpoint action. *

* * @param describeEndpointRequest * The input for the DescribeEndpoint operation. * @return Result of the DescribeEndpoint operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.DescribeEndpoint */ @Override public DescribeEndpointResult describeEndpoint(DescribeEndpointRequest request) { request = beforeClientExecution(request); return executeDescribeEndpoint(request); } @SdkInternalApi final DescribeEndpointResult executeDescribeEndpoint(DescribeEndpointRequest describeEndpointRequest) { ExecutionContext executionContext = createExecutionContext(describeEndpointRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeEndpointRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeEndpointRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeEndpoint"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeEndpointResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes event configurations. *

*

* Requires permission to access the DescribeEventConfigurations action. *

* * @param describeEventConfigurationsRequest * @return Result of the DescribeEventConfigurations operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.DescribeEventConfigurations */ @Override public DescribeEventConfigurationsResult describeEventConfigurations(DescribeEventConfigurationsRequest request) { request = beforeClientExecution(request); return executeDescribeEventConfigurations(request); } @SdkInternalApi final DescribeEventConfigurationsResult executeDescribeEventConfigurations(DescribeEventConfigurationsRequest describeEventConfigurationsRequest) { ExecutionContext executionContext = createExecutionContext(describeEventConfigurationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeEventConfigurationsRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(describeEventConfigurationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeEventConfigurations"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeEventConfigurationsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the specified fleet metric. *

*

* Requires permission to access the DescribeFleetMetric action. *

* * @param describeFleetMetricRequest * @return Result of the DescribeFleetMetric operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.DescribeFleetMetric */ @Override public DescribeFleetMetricResult describeFleetMetric(DescribeFleetMetricRequest request) { request = beforeClientExecution(request); return executeDescribeFleetMetric(request); } @SdkInternalApi final DescribeFleetMetricResult executeDescribeFleetMetric(DescribeFleetMetricRequest describeFleetMetricRequest) { ExecutionContext executionContext = createExecutionContext(describeFleetMetricRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeFleetMetricRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeFleetMetricRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeFleetMetric"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeFleetMetricResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes a search index. *

*

* Requires permission to access the DescribeIndex action. *

* * @param describeIndexRequest * @return Result of the DescribeIndex operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.DescribeIndex */ @Override public DescribeIndexResult describeIndex(DescribeIndexRequest request) { request = beforeClientExecution(request); return executeDescribeIndex(request); } @SdkInternalApi final DescribeIndexResult executeDescribeIndex(DescribeIndexRequest describeIndexRequest) { ExecutionContext executionContext = createExecutionContext(describeIndexRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeIndexRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeIndexRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeIndex"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeIndexResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes a job. *

*

* Requires permission to access the DescribeJob action. *

* * @param describeJobRequest * @return Result of the DescribeJob operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.DescribeJob */ @Override public DescribeJobResult describeJob(DescribeJobRequest request) { request = beforeClientExecution(request); return executeDescribeJob(request); } @SdkInternalApi final DescribeJobResult executeDescribeJob(DescribeJobRequest describeJobRequest) { ExecutionContext executionContext = createExecutionContext(describeJobRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeJobRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeJobRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeJob"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeJobResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes a job execution. *

*

* Requires permission to access the DescribeJobExecution action. *

* * @param describeJobExecutionRequest * @return Result of the DescribeJobExecution operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.DescribeJobExecution */ @Override public DescribeJobExecutionResult describeJobExecution(DescribeJobExecutionRequest request) { request = beforeClientExecution(request); return executeDescribeJobExecution(request); } @SdkInternalApi final DescribeJobExecutionResult executeDescribeJobExecution(DescribeJobExecutionRequest describeJobExecutionRequest) { ExecutionContext executionContext = createExecutionContext(describeJobExecutionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeJobExecutionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeJobExecutionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeJobExecution"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeJobExecutionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns information about a job template. *

* * @param describeJobTemplateRequest * @return Result of the DescribeJobTemplate operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeJobTemplate */ @Override public DescribeJobTemplateResult describeJobTemplate(DescribeJobTemplateRequest request) { request = beforeClientExecution(request); return executeDescribeJobTemplate(request); } @SdkInternalApi final DescribeJobTemplateResult executeDescribeJobTemplate(DescribeJobTemplateRequest describeJobTemplateRequest) { ExecutionContext executionContext = createExecutionContext(describeJobTemplateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeJobTemplateRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeJobTemplateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeJobTemplate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeJobTemplateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* View details of a managed job template. *

* * @param describeManagedJobTemplateRequest * @return Result of the DescribeManagedJobTemplate operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalServerException * Internal error from the service that indicates an unexpected error or that the service is unavailable. * @sample AWSIot.DescribeManagedJobTemplate */ @Override public DescribeManagedJobTemplateResult describeManagedJobTemplate(DescribeManagedJobTemplateRequest request) { request = beforeClientExecution(request); return executeDescribeManagedJobTemplate(request); } @SdkInternalApi final DescribeManagedJobTemplateResult executeDescribeManagedJobTemplate(DescribeManagedJobTemplateRequest describeManagedJobTemplateRequest) { ExecutionContext executionContext = createExecutionContext(describeManagedJobTemplateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeManagedJobTemplateRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(describeManagedJobTemplateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeManagedJobTemplate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeManagedJobTemplateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about a mitigation action. *

*

* Requires permission to access the DescribeMitigationAction action. *

* * @param describeMitigationActionRequest * @return Result of the DescribeMitigationAction operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeMitigationAction */ @Override public DescribeMitigationActionResult describeMitigationAction(DescribeMitigationActionRequest request) { request = beforeClientExecution(request); return executeDescribeMitigationAction(request); } @SdkInternalApi final DescribeMitigationActionResult executeDescribeMitigationAction(DescribeMitigationActionRequest describeMitigationActionRequest) { ExecutionContext executionContext = createExecutionContext(describeMitigationActionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeMitigationActionRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(describeMitigationActionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeMitigationAction"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeMitigationActionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns information about a provisioning template. *

*

* Requires permission to access the DescribeProvisioningTemplate action. *

* * @param describeProvisioningTemplateRequest * @return Result of the DescribeProvisioningTemplate operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @sample AWSIot.DescribeProvisioningTemplate */ @Override public DescribeProvisioningTemplateResult describeProvisioningTemplate(DescribeProvisioningTemplateRequest request) { request = beforeClientExecution(request); return executeDescribeProvisioningTemplate(request); } @SdkInternalApi final DescribeProvisioningTemplateResult executeDescribeProvisioningTemplate(DescribeProvisioningTemplateRequest describeProvisioningTemplateRequest) { ExecutionContext executionContext = createExecutionContext(describeProvisioningTemplateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeProvisioningTemplateRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(describeProvisioningTemplateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeProvisioningTemplate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeProvisioningTemplateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns information about a provisioning template version. *

*

* Requires permission to access the DescribeProvisioningTemplateVersion action. *

* * @param describeProvisioningTemplateVersionRequest * @return Result of the DescribeProvisioningTemplateVersion operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws UnauthorizedException * You are not authorized to perform this operation. * @sample AWSIot.DescribeProvisioningTemplateVersion */ @Override public DescribeProvisioningTemplateVersionResult describeProvisioningTemplateVersion(DescribeProvisioningTemplateVersionRequest request) { request = beforeClientExecution(request); return executeDescribeProvisioningTemplateVersion(request); } @SdkInternalApi final DescribeProvisioningTemplateVersionResult executeDescribeProvisioningTemplateVersion( DescribeProvisioningTemplateVersionRequest describeProvisioningTemplateVersionRequest) { ExecutionContext executionContext = createExecutionContext(describeProvisioningTemplateVersionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeProvisioningTemplateVersionRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(describeProvisioningTemplateVersionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeProvisioningTemplateVersion"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeProvisioningTemplateVersionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes a role alias. *

*

* Requires permission to access the DescribeRoleAlias action. *

* * @param describeRoleAliasRequest * @return Result of the DescribeRoleAlias operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.DescribeRoleAlias */ @Override public DescribeRoleAliasResult describeRoleAlias(DescribeRoleAliasRequest request) { request = beforeClientExecution(request); return executeDescribeRoleAlias(request); } @SdkInternalApi final DescribeRoleAliasResult executeDescribeRoleAlias(DescribeRoleAliasRequest describeRoleAliasRequest) { ExecutionContext executionContext = createExecutionContext(describeRoleAliasRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeRoleAliasRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeRoleAliasRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeRoleAlias"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeRoleAliasResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about a scheduled audit. *

*

* Requires permission to access the DescribeScheduledAudit action. *

* * @param describeScheduledAuditRequest * @return Result of the DescribeScheduledAudit operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeScheduledAudit */ @Override public DescribeScheduledAuditResult describeScheduledAudit(DescribeScheduledAuditRequest request) { request = beforeClientExecution(request); return executeDescribeScheduledAudit(request); } @SdkInternalApi final DescribeScheduledAuditResult executeDescribeScheduledAudit(DescribeScheduledAuditRequest describeScheduledAuditRequest) { ExecutionContext executionContext = createExecutionContext(describeScheduledAuditRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeScheduledAuditRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeScheduledAuditRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeScheduledAudit"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeScheduledAuditResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about a Device Defender security profile. *

*

* Requires permission to access the DescribeSecurityProfile action. *

* * @param describeSecurityProfileRequest * @return Result of the DescribeSecurityProfile operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeSecurityProfile */ @Override public DescribeSecurityProfileResult describeSecurityProfile(DescribeSecurityProfileRequest request) { request = beforeClientExecution(request); return executeDescribeSecurityProfile(request); } @SdkInternalApi final DescribeSecurityProfileResult executeDescribeSecurityProfile(DescribeSecurityProfileRequest describeSecurityProfileRequest) { ExecutionContext executionContext = createExecutionContext(describeSecurityProfileRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeSecurityProfileRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(describeSecurityProfileRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeSecurityProfile"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeSecurityProfileResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about a stream. *

*

* Requires permission to access the DescribeStream action. *

* * @param describeStreamRequest * @return Result of the DescribeStream operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeStream */ @Override public DescribeStreamResult describeStream(DescribeStreamRequest request) { request = beforeClientExecution(request); return executeDescribeStream(request); } @SdkInternalApi final DescribeStreamResult executeDescribeStream(DescribeStreamRequest describeStreamRequest) { ExecutionContext executionContext = createExecutionContext(describeStreamRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeStreamRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeStreamRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeStream"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeStreamResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the specified thing. *

*

* Requires permission to access the DescribeThing action. *

* * @param describeThingRequest * The input for the DescribeThing operation. * @return Result of the DescribeThing operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeThing */ @Override public DescribeThingResult describeThing(DescribeThingRequest request) { request = beforeClientExecution(request); return executeDescribeThing(request); } @SdkInternalApi final DescribeThingResult executeDescribeThing(DescribeThingRequest describeThingRequest) { ExecutionContext executionContext = createExecutionContext(describeThingRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeThingRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeThingRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeThing"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeThingResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describe a thing group. *

*

* Requires permission to access the DescribeThingGroup action. *

* * @param describeThingGroupRequest * @return Result of the DescribeThingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.DescribeThingGroup */ @Override public DescribeThingGroupResult describeThingGroup(DescribeThingGroupRequest request) { request = beforeClientExecution(request); return executeDescribeThingGroup(request); } @SdkInternalApi final DescribeThingGroupResult executeDescribeThingGroup(DescribeThingGroupRequest describeThingGroupRequest) { ExecutionContext executionContext = createExecutionContext(describeThingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeThingGroupRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeThingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeThingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeThingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Describes a bulk thing provisioning task. *

*

* Requires permission to access the DescribeThingRegistrationTask action. *

* * @param describeThingRegistrationTaskRequest * @return Result of the DescribeThingRegistrationTask operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.DescribeThingRegistrationTask */ @Override public DescribeThingRegistrationTaskResult describeThingRegistrationTask(DescribeThingRegistrationTaskRequest request) { request = beforeClientExecution(request); return executeDescribeThingRegistrationTask(request); } @SdkInternalApi final DescribeThingRegistrationTaskResult executeDescribeThingRegistrationTask(DescribeThingRegistrationTaskRequest describeThingRegistrationTaskRequest) { ExecutionContext executionContext = createExecutionContext(describeThingRegistrationTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeThingRegistrationTaskRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(describeThingRegistrationTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeThingRegistrationTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeThingRegistrationTaskResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the specified thing type. *

*

* Requires permission to access the DescribeThingType action. *

* * @param describeThingTypeRequest * The input for the DescribeThingType operation. * @return Result of the DescribeThingType operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DescribeThingType */ @Override public DescribeThingTypeResult describeThingType(DescribeThingTypeRequest request) { request = beforeClientExecution(request); return executeDescribeThingType(request); } @SdkInternalApi final DescribeThingTypeResult executeDescribeThingType(DescribeThingTypeRequest describeThingTypeRequest) { ExecutionContext executionContext = createExecutionContext(describeThingTypeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeThingTypeRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describeThingTypeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribeThingType"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribeThingTypeResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Detaches a policy from the specified target. *

* *

* Because of the distributed nature of Amazon Web Services, it can take up to five minutes after a policy is * detached before it's ready to be deleted. *

*
*

* Requires permission to access the DetachPolicy action. *

* * @param detachPolicyRequest * @return Result of the DetachPolicy operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws LimitExceededException * A limit has been exceeded. * @sample AWSIot.DetachPolicy */ @Override public DetachPolicyResult detachPolicy(DetachPolicyRequest request) { request = beforeClientExecution(request); return executeDetachPolicy(request); } @SdkInternalApi final DetachPolicyResult executeDetachPolicy(DetachPolicyRequest detachPolicyRequest) { ExecutionContext executionContext = createExecutionContext(detachPolicyRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DetachPolicyRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(detachPolicyRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DetachPolicy"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DetachPolicyResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Removes the specified policy from the specified certificate. *

*

* Note: This action is deprecated and works as expected for backward compatibility, but we won't add * enhancements. Use DetachPolicy instead. *

*

* Requires permission to access the DetachPrincipalPolicy action. *

* * @param detachPrincipalPolicyRequest * The input for the DetachPrincipalPolicy operation. * @return Result of the DetachPrincipalPolicy operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DetachPrincipalPolicy */ @Override @Deprecated public DetachPrincipalPolicyResult detachPrincipalPolicy(DetachPrincipalPolicyRequest request) { request = beforeClientExecution(request); return executeDetachPrincipalPolicy(request); } @SdkInternalApi final DetachPrincipalPolicyResult executeDetachPrincipalPolicy(DetachPrincipalPolicyRequest detachPrincipalPolicyRequest) { ExecutionContext executionContext = createExecutionContext(detachPrincipalPolicyRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DetachPrincipalPolicyRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(detachPrincipalPolicyRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DetachPrincipalPolicy"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DetachPrincipalPolicyResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disassociates a Device Defender security profile from a thing group or from this account. *

*

* Requires permission to access the DetachSecurityProfile action. *

* * @param detachSecurityProfileRequest * @return Result of the DetachSecurityProfile operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DetachSecurityProfile */ @Override public DetachSecurityProfileResult detachSecurityProfile(DetachSecurityProfileRequest request) { request = beforeClientExecution(request); return executeDetachSecurityProfile(request); } @SdkInternalApi final DetachSecurityProfileResult executeDetachSecurityProfile(DetachSecurityProfileRequest detachSecurityProfileRequest) { ExecutionContext executionContext = createExecutionContext(detachSecurityProfileRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DetachSecurityProfileRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(detachSecurityProfileRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DetachSecurityProfile"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DetachSecurityProfileResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Detaches the specified principal from the specified thing. A principal can be X.509 certificates, IAM users, * groups, and roles, Amazon Cognito identities or federated identities. *

* *

* This call is asynchronous. It might take several seconds for the detachment to propagate. *

*
*

* Requires permission to access the DetachThingPrincipal action. *

* * @param detachThingPrincipalRequest * The input for the DetachThingPrincipal operation. * @return Result of the DetachThingPrincipal operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.DetachThingPrincipal */ @Override public DetachThingPrincipalResult detachThingPrincipal(DetachThingPrincipalRequest request) { request = beforeClientExecution(request); return executeDetachThingPrincipal(request); } @SdkInternalApi final DetachThingPrincipalResult executeDetachThingPrincipal(DetachThingPrincipalRequest detachThingPrincipalRequest) { ExecutionContext executionContext = createExecutionContext(detachThingPrincipalRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DetachThingPrincipalRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(detachThingPrincipalRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DetachThingPrincipal"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DetachThingPrincipalResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disables the rule. *

*

* Requires permission to access the DisableTopicRule action. *

* * @param disableTopicRuleRequest * The input for the DisableTopicRuleRequest operation. * @return Result of the DisableTopicRule operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ConflictingResourceUpdateException * A conflicting resource update exception. This exception is thrown when two pending updates cause a * conflict. * @sample AWSIot.DisableTopicRule */ @Override public DisableTopicRuleResult disableTopicRule(DisableTopicRuleRequest request) { request = beforeClientExecution(request); return executeDisableTopicRule(request); } @SdkInternalApi final DisableTopicRuleResult executeDisableTopicRule(DisableTopicRuleRequest disableTopicRuleRequest) { ExecutionContext executionContext = createExecutionContext(disableTopicRuleRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DisableTopicRuleRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(disableTopicRuleRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DisableTopicRule"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DisableTopicRuleResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Enables the rule. *

*

* Requires permission to access the EnableTopicRule action. *

* * @param enableTopicRuleRequest * The input for the EnableTopicRuleRequest operation. * @return Result of the EnableTopicRule operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ConflictingResourceUpdateException * A conflicting resource update exception. This exception is thrown when two pending updates cause a * conflict. * @sample AWSIot.EnableTopicRule */ @Override public EnableTopicRuleResult enableTopicRule(EnableTopicRuleRequest request) { request = beforeClientExecution(request); return executeEnableTopicRule(request); } @SdkInternalApi final EnableTopicRuleResult executeEnableTopicRule(EnableTopicRuleRequest enableTopicRuleRequest) { ExecutionContext executionContext = createExecutionContext(enableTopicRuleRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new EnableTopicRuleRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(enableTopicRuleRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "EnableTopicRule"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new EnableTopicRuleResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns a Device Defender's ML Detect Security Profile training model's status. *

*

* Requires permission to access the GetBehaviorModelTrainingSummaries action. *

* * @param getBehaviorModelTrainingSummariesRequest * @return Result of the GetBehaviorModelTrainingSummaries operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.GetBehaviorModelTrainingSummaries */ @Override public GetBehaviorModelTrainingSummariesResult getBehaviorModelTrainingSummaries(GetBehaviorModelTrainingSummariesRequest request) { request = beforeClientExecution(request); return executeGetBehaviorModelTrainingSummaries(request); } @SdkInternalApi final GetBehaviorModelTrainingSummariesResult executeGetBehaviorModelTrainingSummaries( GetBehaviorModelTrainingSummariesRequest getBehaviorModelTrainingSummariesRequest) { ExecutionContext executionContext = createExecutionContext(getBehaviorModelTrainingSummariesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetBehaviorModelTrainingSummariesRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(getBehaviorModelTrainingSummariesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetBehaviorModelTrainingSummaries"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetBehaviorModelTrainingSummariesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Aggregates on indexed data with search queries pertaining to particular fields. *

*

* Requires permission to access the GetBucketsAggregation action. *

* * @param getBucketsAggregationRequest * @return Result of the GetBucketsAggregation operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidQueryException * The query is invalid. * @throws InvalidAggregationException * The aggregation is invalid. * @throws IndexNotReadyException * The index is not ready. * @sample AWSIot.GetBucketsAggregation */ @Override public GetBucketsAggregationResult getBucketsAggregation(GetBucketsAggregationRequest request) { request = beforeClientExecution(request); return executeGetBucketsAggregation(request); } @SdkInternalApi final GetBucketsAggregationResult executeGetBucketsAggregation(GetBucketsAggregationRequest getBucketsAggregationRequest) { ExecutionContext executionContext = createExecutionContext(getBucketsAggregationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetBucketsAggregationRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getBucketsAggregationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetBucketsAggregation"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetBucketsAggregationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns the approximate count of unique values that match the query. *

*

* Requires permission to access the GetCardinality action. *

* * @param getCardinalityRequest * @return Result of the GetCardinality operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidQueryException * The query is invalid. * @throws InvalidAggregationException * The aggregation is invalid. * @throws IndexNotReadyException * The index is not ready. * @sample AWSIot.GetCardinality */ @Override public GetCardinalityResult getCardinality(GetCardinalityRequest request) { request = beforeClientExecution(request); return executeGetCardinality(request); } @SdkInternalApi final GetCardinalityResult executeGetCardinality(GetCardinalityRequest getCardinalityRequest) { ExecutionContext executionContext = createExecutionContext(getCardinalityRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetCardinalityRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getCardinalityRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetCardinality"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetCardinalityResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets a list of the policies that have an effect on the authorization behavior of the specified device when it * connects to the IoT device gateway. *

*

* Requires permission to access the GetEffectivePolicies action. *

* * @param getEffectivePoliciesRequest * @return Result of the GetEffectivePolicies operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws LimitExceededException * A limit has been exceeded. * @sample AWSIot.GetEffectivePolicies */ @Override public GetEffectivePoliciesResult getEffectivePolicies(GetEffectivePoliciesRequest request) { request = beforeClientExecution(request); return executeGetEffectivePolicies(request); } @SdkInternalApi final GetEffectivePoliciesResult executeGetEffectivePolicies(GetEffectivePoliciesRequest getEffectivePoliciesRequest) { ExecutionContext executionContext = createExecutionContext(getEffectivePoliciesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetEffectivePoliciesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getEffectivePoliciesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetEffectivePolicies"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetEffectivePoliciesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets the indexing configuration. *

*

* Requires permission to access the GetIndexingConfiguration action. *

* * @param getIndexingConfigurationRequest * @return Result of the GetIndexingConfiguration operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.GetIndexingConfiguration */ @Override public GetIndexingConfigurationResult getIndexingConfiguration(GetIndexingConfigurationRequest request) { request = beforeClientExecution(request); return executeGetIndexingConfiguration(request); } @SdkInternalApi final GetIndexingConfigurationResult executeGetIndexingConfiguration(GetIndexingConfigurationRequest getIndexingConfigurationRequest) { ExecutionContext executionContext = createExecutionContext(getIndexingConfigurationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetIndexingConfigurationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(getIndexingConfigurationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetIndexingConfiguration"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetIndexingConfigurationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets a job document. *

*

* Requires permission to access the GetJobDocument action. *

* * @param getJobDocumentRequest * @return Result of the GetJobDocument operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.GetJobDocument */ @Override public GetJobDocumentResult getJobDocument(GetJobDocumentRequest request) { request = beforeClientExecution(request); return executeGetJobDocument(request); } @SdkInternalApi final GetJobDocumentResult executeGetJobDocument(GetJobDocumentRequest getJobDocumentRequest) { ExecutionContext executionContext = createExecutionContext(getJobDocumentRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetJobDocumentRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getJobDocumentRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetJobDocument"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetJobDocumentResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets the logging options. *

*

* NOTE: use of this command is not recommended. Use GetV2LoggingOptions instead. *

*

* Requires permission to access the GetLoggingOptions action. *

* * @param getLoggingOptionsRequest * The input for the GetLoggingOptions operation. * @return Result of the GetLoggingOptions operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.GetLoggingOptions */ @Override public GetLoggingOptionsResult getLoggingOptions(GetLoggingOptionsRequest request) { request = beforeClientExecution(request); return executeGetLoggingOptions(request); } @SdkInternalApi final GetLoggingOptionsResult executeGetLoggingOptions(GetLoggingOptionsRequest getLoggingOptionsRequest) { ExecutionContext executionContext = createExecutionContext(getLoggingOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetLoggingOptionsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getLoggingOptionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetLoggingOptions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetLoggingOptionsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets an OTA update. *

*

* Requires permission to access the GetOTAUpdate action. *

* * @param getOTAUpdateRequest * @return Result of the GetOTAUpdate operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws InternalFailureException * An unexpected error has occurred. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.GetOTAUpdate */ @Override public GetOTAUpdateResult getOTAUpdate(GetOTAUpdateRequest request) { request = beforeClientExecution(request); return executeGetOTAUpdate(request); } @SdkInternalApi final GetOTAUpdateResult executeGetOTAUpdate(GetOTAUpdateRequest getOTAUpdateRequest) { ExecutionContext executionContext = createExecutionContext(getOTAUpdateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetOTAUpdateRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getOTAUpdateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetOTAUpdate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetOTAUpdateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the specified software package. *

*

* Requires permission to access the GetPackage action. *

* * @param getPackageRequest * @return Result of the GetPackage operation returned by the service. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalServerException * Internal error from the service that indicates an unexpected error or that the service is unavailable. * @throws ValidationException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.GetPackage */ @Override public GetPackageResult getPackage(GetPackageRequest request) { request = beforeClientExecution(request); return executeGetPackage(request); } @SdkInternalApi final GetPackageResult executeGetPackage(GetPackageRequest getPackageRequest) { ExecutionContext executionContext = createExecutionContext(getPackageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetPackageRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getPackageRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetPackage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler(new JsonOperationMetadata() .withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetPackageResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the specified software package's configuration. *

*

* Requires permission to access the GetPackageConfiguration action. *

* * @param getPackageConfigurationRequest * @return Result of the GetPackageConfiguration operation returned by the service. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalServerException * Internal error from the service that indicates an unexpected error or that the service is unavailable. * @sample AWSIot.GetPackageConfiguration */ @Override public GetPackageConfigurationResult getPackageConfiguration(GetPackageConfigurationRequest request) { request = beforeClientExecution(request); return executeGetPackageConfiguration(request); } @SdkInternalApi final GetPackageConfigurationResult executeGetPackageConfiguration(GetPackageConfigurationRequest getPackageConfigurationRequest) { ExecutionContext executionContext = createExecutionContext(getPackageConfigurationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetPackageConfigurationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(getPackageConfigurationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetPackageConfiguration"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetPackageConfigurationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the specified package version. *

*

* Requires permission to access the GetPackageVersion action. *

* * @param getPackageVersionRequest * @return Result of the GetPackageVersion operation returned by the service. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalServerException * Internal error from the service that indicates an unexpected error or that the service is unavailable. * @throws ValidationException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.GetPackageVersion */ @Override public GetPackageVersionResult getPackageVersion(GetPackageVersionRequest request) { request = beforeClientExecution(request); return executeGetPackageVersion(request); } @SdkInternalApi final GetPackageVersionResult executeGetPackageVersion(GetPackageVersionRequest getPackageVersionRequest) { ExecutionContext executionContext = createExecutionContext(getPackageVersionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetPackageVersionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getPackageVersionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetPackageVersion"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetPackageVersionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Groups the aggregated values that match the query into percentile groupings. The default percentile groupings * are: 1,5,25,50,75,95,99, although you can specify your own when you call GetPercentiles. This * function returns a value for each percentile group specified (or the default percentile groupings). The * percentile group "1" contains the aggregated field value that occurs in approximately one percent of the values * that match the query. The percentile group "5" contains the aggregated field value that occurs in approximately * five percent of the values that match the query, and so on. The result is an approximation, the more values that * match the query, the more accurate the percentile values. *

*

* Requires permission to access the GetPercentiles action. *

* * @param getPercentilesRequest * @return Result of the GetPercentiles operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidQueryException * The query is invalid. * @throws InvalidAggregationException * The aggregation is invalid. * @throws IndexNotReadyException * The index is not ready. * @sample AWSIot.GetPercentiles */ @Override public GetPercentilesResult getPercentiles(GetPercentilesRequest request) { request = beforeClientExecution(request); return executeGetPercentiles(request); } @SdkInternalApi final GetPercentilesResult executeGetPercentiles(GetPercentilesRequest getPercentilesRequest) { ExecutionContext executionContext = createExecutionContext(getPercentilesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetPercentilesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getPercentilesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetPercentiles"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetPercentilesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

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

*

* Requires permission to access the GetPolicy action. *

* * @param getPolicyRequest * The input for the GetPolicy operation. * @return Result of the GetPolicy operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.GetPolicy */ @Override public GetPolicyResult getPolicy(GetPolicyRequest request) { request = beforeClientExecution(request); return executeGetPolicy(request); } @SdkInternalApi final GetPolicyResult executeGetPolicy(GetPolicyRequest getPolicyRequest) { ExecutionContext executionContext = createExecutionContext(getPolicyRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetPolicyRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getPolicyRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetPolicy"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler(new JsonOperationMetadata() .withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetPolicyResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the specified policy version. *

*

* Requires permission to access the GetPolicyVersion action. *

* * @param getPolicyVersionRequest * The input for the GetPolicyVersion operation. * @return Result of the GetPolicyVersion operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.GetPolicyVersion */ @Override public GetPolicyVersionResult getPolicyVersion(GetPolicyVersionRequest request) { request = beforeClientExecution(request); return executeGetPolicyVersion(request); } @SdkInternalApi final GetPolicyVersionResult executeGetPolicyVersion(GetPolicyVersionRequest getPolicyVersionRequest) { ExecutionContext executionContext = createExecutionContext(getPolicyVersionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetPolicyVersionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getPolicyVersionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetPolicyVersion"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetPolicyVersionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

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

*

* Requires permission to access the GetRegistrationCode action. *

* * @param getRegistrationCodeRequest * The input to the GetRegistrationCode operation. * @return Result of the GetRegistrationCode operation returned by the service. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @sample AWSIot.GetRegistrationCode */ @Override public GetRegistrationCodeResult getRegistrationCode(GetRegistrationCodeRequest request) { request = beforeClientExecution(request); return executeGetRegistrationCode(request); } @SdkInternalApi final GetRegistrationCodeResult executeGetRegistrationCode(GetRegistrationCodeRequest getRegistrationCodeRequest) { ExecutionContext executionContext = createExecutionContext(getRegistrationCodeRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetRegistrationCodeRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getRegistrationCodeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetRegistrationCode"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetRegistrationCodeResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns the count, average, sum, minimum, maximum, sum of squares, variance, and standard deviation for the * specified aggregated field. If the aggregation field is of type String, only the count statistic is * returned. *

*

* Requires permission to access the GetStatistics action. *

* * @param getStatisticsRequest * @return Result of the GetStatistics operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidQueryException * The query is invalid. * @throws InvalidAggregationException * The aggregation is invalid. * @throws IndexNotReadyException * The index is not ready. * @sample AWSIot.GetStatistics */ @Override public GetStatisticsResult getStatistics(GetStatisticsRequest request) { request = beforeClientExecution(request); return executeGetStatistics(request); } @SdkInternalApi final GetStatisticsResult executeGetStatistics(GetStatisticsRequest getStatisticsRequest) { ExecutionContext executionContext = createExecutionContext(getStatisticsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetStatisticsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getStatisticsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetStatistics"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetStatisticsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the rule. *

*

* Requires permission to access the GetTopicRule action. *

* * @param getTopicRuleRequest * The input for the GetTopicRule operation. * @return Result of the GetTopicRule operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws UnauthorizedException * You are not authorized to perform this operation. * @sample AWSIot.GetTopicRule */ @Override public GetTopicRuleResult getTopicRule(GetTopicRuleRequest request) { request = beforeClientExecution(request); return executeGetTopicRule(request); } @SdkInternalApi final GetTopicRuleResult executeGetTopicRule(GetTopicRuleRequest getTopicRuleRequest) { ExecutionContext executionContext = createExecutionContext(getTopicRuleRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetTopicRuleRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getTopicRuleRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetTopicRule"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetTopicRuleResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about a topic rule destination. *

*

* Requires permission to access the GetTopicRuleDestination action. *

* * @param getTopicRuleDestinationRequest * @return Result of the GetTopicRuleDestination operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws UnauthorizedException * You are not authorized to perform this operation. * @sample AWSIot.GetTopicRuleDestination */ @Override public GetTopicRuleDestinationResult getTopicRuleDestination(GetTopicRuleDestinationRequest request) { request = beforeClientExecution(request); return executeGetTopicRuleDestination(request); } @SdkInternalApi final GetTopicRuleDestinationResult executeGetTopicRuleDestination(GetTopicRuleDestinationRequest getTopicRuleDestinationRequest) { ExecutionContext executionContext = createExecutionContext(getTopicRuleDestinationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetTopicRuleDestinationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(getTopicRuleDestinationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetTopicRuleDestination"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetTopicRuleDestinationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets the fine grained logging options. *

*

* Requires permission to access the GetV2LoggingOptions action. *

* * @param getV2LoggingOptionsRequest * @return Result of the GetV2LoggingOptions operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws NotConfiguredException * The resource is not configured. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.GetV2LoggingOptions */ @Override public GetV2LoggingOptionsResult getV2LoggingOptions(GetV2LoggingOptionsRequest request) { request = beforeClientExecution(request); return executeGetV2LoggingOptions(request); } @SdkInternalApi final GetV2LoggingOptionsResult executeGetV2LoggingOptions(GetV2LoggingOptionsRequest getV2LoggingOptionsRequest) { ExecutionContext executionContext = createExecutionContext(getV2LoggingOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetV2LoggingOptionsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getV2LoggingOptionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetV2LoggingOptions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetV2LoggingOptionsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the active violations for a given Device Defender security profile. *

*

* Requires permission to access the ListActiveViolations action. *

* * @param listActiveViolationsRequest * @return Result of the ListActiveViolations operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListActiveViolations */ @Override public ListActiveViolationsResult listActiveViolations(ListActiveViolationsRequest request) { request = beforeClientExecution(request); return executeListActiveViolations(request); } @SdkInternalApi final ListActiveViolationsResult executeListActiveViolations(ListActiveViolationsRequest listActiveViolationsRequest) { ExecutionContext executionContext = createExecutionContext(listActiveViolationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListActiveViolationsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listActiveViolationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListActiveViolations"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListActiveViolationsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the policies attached to the specified thing group. *

*

* Requires permission to access the ListAttachedPolicies action. *

* * @param listAttachedPoliciesRequest * @return Result of the ListAttachedPolicies operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws LimitExceededException * A limit has been exceeded. * @sample AWSIot.ListAttachedPolicies */ @Override public ListAttachedPoliciesResult listAttachedPolicies(ListAttachedPoliciesRequest request) { request = beforeClientExecution(request); return executeListAttachedPolicies(request); } @SdkInternalApi final ListAttachedPoliciesResult executeListAttachedPolicies(ListAttachedPoliciesRequest listAttachedPoliciesRequest) { ExecutionContext executionContext = createExecutionContext(listAttachedPoliciesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListAttachedPoliciesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listAttachedPoliciesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListAttachedPolicies"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListAttachedPoliciesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the findings (results) of a Device Defender audit or of the audits performed during a specified time * period. (Findings are retained for 90 days.) *

*

* Requires permission to access the ListAuditFindings action. *

* * @param listAuditFindingsRequest * @return Result of the ListAuditFindings operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListAuditFindings */ @Override public ListAuditFindingsResult listAuditFindings(ListAuditFindingsRequest request) { request = beforeClientExecution(request); return executeListAuditFindings(request); } @SdkInternalApi final ListAuditFindingsResult executeListAuditFindings(ListAuditFindingsRequest listAuditFindingsRequest) { ExecutionContext executionContext = createExecutionContext(listAuditFindingsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListAuditFindingsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listAuditFindingsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListAuditFindings"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListAuditFindingsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets the status of audit mitigation action tasks that were executed. *

*

* Requires permission to access the ListAuditMitigationActionsExecutions action. *

* * @param listAuditMitigationActionsExecutionsRequest * @return Result of the ListAuditMitigationActionsExecutions operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListAuditMitigationActionsExecutions */ @Override public ListAuditMitigationActionsExecutionsResult listAuditMitigationActionsExecutions(ListAuditMitigationActionsExecutionsRequest request) { request = beforeClientExecution(request); return executeListAuditMitigationActionsExecutions(request); } @SdkInternalApi final ListAuditMitigationActionsExecutionsResult executeListAuditMitigationActionsExecutions( ListAuditMitigationActionsExecutionsRequest listAuditMitigationActionsExecutionsRequest) { ExecutionContext executionContext = createExecutionContext(listAuditMitigationActionsExecutionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListAuditMitigationActionsExecutionsRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listAuditMitigationActionsExecutionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListAuditMitigationActionsExecutions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListAuditMitigationActionsExecutionsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets a list of audit mitigation action tasks that match the specified filters. *

*

* Requires permission to access the ListAuditMitigationActionsTasks action. *

* * @param listAuditMitigationActionsTasksRequest * @return Result of the ListAuditMitigationActionsTasks operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListAuditMitigationActionsTasks */ @Override public ListAuditMitigationActionsTasksResult listAuditMitigationActionsTasks(ListAuditMitigationActionsTasksRequest request) { request = beforeClientExecution(request); return executeListAuditMitigationActionsTasks(request); } @SdkInternalApi final ListAuditMitigationActionsTasksResult executeListAuditMitigationActionsTasks( ListAuditMitigationActionsTasksRequest listAuditMitigationActionsTasksRequest) { ExecutionContext executionContext = createExecutionContext(listAuditMitigationActionsTasksRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListAuditMitigationActionsTasksRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listAuditMitigationActionsTasksRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListAuditMitigationActionsTasks"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListAuditMitigationActionsTasksResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists your Device Defender audit listings. *

*

* Requires permission to access the ListAuditSuppressions action. *

* * @param listAuditSuppressionsRequest * @return Result of the ListAuditSuppressions operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListAuditSuppressions */ @Override public ListAuditSuppressionsResult listAuditSuppressions(ListAuditSuppressionsRequest request) { request = beforeClientExecution(request); return executeListAuditSuppressions(request); } @SdkInternalApi final ListAuditSuppressionsResult executeListAuditSuppressions(ListAuditSuppressionsRequest listAuditSuppressionsRequest) { ExecutionContext executionContext = createExecutionContext(listAuditSuppressionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListAuditSuppressionsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listAuditSuppressionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListAuditSuppressions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListAuditSuppressionsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the Device Defender audits that have been performed during a given time period. *

*

* Requires permission to access the ListAuditTasks action. *

* * @param listAuditTasksRequest * @return Result of the ListAuditTasks operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListAuditTasks */ @Override public ListAuditTasksResult listAuditTasks(ListAuditTasksRequest request) { request = beforeClientExecution(request); return executeListAuditTasks(request); } @SdkInternalApi final ListAuditTasksResult executeListAuditTasks(ListAuditTasksRequest listAuditTasksRequest) { ExecutionContext executionContext = createExecutionContext(listAuditTasksRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListAuditTasksRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listAuditTasksRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListAuditTasks"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListAuditTasksResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the authorizers registered in your account. *

*

* Requires permission to access the ListAuthorizers action. *

* * @param listAuthorizersRequest * @return Result of the ListAuthorizers operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListAuthorizers */ @Override public ListAuthorizersResult listAuthorizers(ListAuthorizersRequest request) { request = beforeClientExecution(request); return executeListAuthorizers(request); } @SdkInternalApi final ListAuthorizersResult executeListAuthorizers(ListAuthorizersRequest listAuthorizersRequest) { ExecutionContext executionContext = createExecutionContext(listAuthorizersRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListAuthorizersRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listAuthorizersRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListAuthorizers"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListAuthorizersResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the billing groups you have created. *

*

* Requires permission to access the ListBillingGroups action. *

* * @param listBillingGroupsRequest * @return Result of the ListBillingGroups operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.ListBillingGroups */ @Override public ListBillingGroupsResult listBillingGroups(ListBillingGroupsRequest request) { request = beforeClientExecution(request); return executeListBillingGroups(request); } @SdkInternalApi final ListBillingGroupsResult executeListBillingGroups(ListBillingGroupsRequest listBillingGroupsRequest) { ExecutionContext executionContext = createExecutionContext(listBillingGroupsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListBillingGroupsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listBillingGroupsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListBillingGroups"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListBillingGroupsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the CA certificates registered for your Amazon Web Services account. *

*

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

*

* Requires permission to access the ListCACertificates action. *

* * @param listCACertificatesRequest * Input for the ListCACertificates operation. * @return Result of the ListCACertificates operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListCACertificates */ @Override public ListCACertificatesResult listCACertificates(ListCACertificatesRequest request) { request = beforeClientExecution(request); return executeListCACertificates(request); } @SdkInternalApi final ListCACertificatesResult executeListCACertificates(ListCACertificatesRequest listCACertificatesRequest) { ExecutionContext executionContext = createExecutionContext(listCACertificatesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListCACertificatesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listCACertificatesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListCACertificates"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListCACertificatesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the certificates registered in your Amazon Web Services account. *

*

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

*

* Requires permission to access the ListCertificates action. *

* * @param listCertificatesRequest * The input for the ListCertificates operation. * @return Result of the ListCertificates operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListCertificates */ @Override public ListCertificatesResult listCertificates(ListCertificatesRequest request) { request = beforeClientExecution(request); return executeListCertificates(request); } @SdkInternalApi final ListCertificatesResult executeListCertificates(ListCertificatesRequest listCertificatesRequest) { ExecutionContext executionContext = createExecutionContext(listCertificatesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListCertificatesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listCertificatesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListCertificates"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListCertificatesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* List the device certificates signed by the specified CA certificate. *

*

* Requires permission to access the ListCertificatesByCA action. *

* * @param listCertificatesByCARequest * The input to the ListCertificatesByCA operation. * @return Result of the ListCertificatesByCA operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListCertificatesByCA */ @Override public ListCertificatesByCAResult listCertificatesByCA(ListCertificatesByCARequest request) { request = beforeClientExecution(request); return executeListCertificatesByCA(request); } @SdkInternalApi final ListCertificatesByCAResult executeListCertificatesByCA(ListCertificatesByCARequest listCertificatesByCARequest) { ExecutionContext executionContext = createExecutionContext(listCertificatesByCARequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListCertificatesByCARequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listCertificatesByCARequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListCertificatesByCA"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListCertificatesByCAResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists your Device Defender detect custom metrics. *

*

* Requires permission to access the ListCustomMetrics action. *

* * @param listCustomMetricsRequest * @return Result of the ListCustomMetrics operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListCustomMetrics */ @Override public ListCustomMetricsResult listCustomMetrics(ListCustomMetricsRequest request) { request = beforeClientExecution(request); return executeListCustomMetrics(request); } @SdkInternalApi final ListCustomMetricsResult executeListCustomMetrics(ListCustomMetricsRequest listCustomMetricsRequest) { ExecutionContext executionContext = createExecutionContext(listCustomMetricsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListCustomMetricsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listCustomMetricsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListCustomMetrics"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListCustomMetricsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists mitigation actions executions for a Device Defender ML Detect Security Profile. *

*

* Requires permission to access the ListDetectMitigationActionsExecutions action. *

* * @param listDetectMitigationActionsExecutionsRequest * @return Result of the ListDetectMitigationActionsExecutions operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListDetectMitigationActionsExecutions */ @Override public ListDetectMitigationActionsExecutionsResult listDetectMitigationActionsExecutions(ListDetectMitigationActionsExecutionsRequest request) { request = beforeClientExecution(request); return executeListDetectMitigationActionsExecutions(request); } @SdkInternalApi final ListDetectMitigationActionsExecutionsResult executeListDetectMitigationActionsExecutions( ListDetectMitigationActionsExecutionsRequest listDetectMitigationActionsExecutionsRequest) { ExecutionContext executionContext = createExecutionContext(listDetectMitigationActionsExecutionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListDetectMitigationActionsExecutionsRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listDetectMitigationActionsExecutionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListDetectMitigationActionsExecutions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListDetectMitigationActionsExecutionsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* List of Device Defender ML Detect mitigation actions tasks. *

*

* Requires permission to access the ListDetectMitigationActionsTasks action. *

* * @param listDetectMitigationActionsTasksRequest * @return Result of the ListDetectMitigationActionsTasks operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListDetectMitigationActionsTasks */ @Override public ListDetectMitigationActionsTasksResult listDetectMitigationActionsTasks(ListDetectMitigationActionsTasksRequest request) { request = beforeClientExecution(request); return executeListDetectMitigationActionsTasks(request); } @SdkInternalApi final ListDetectMitigationActionsTasksResult executeListDetectMitigationActionsTasks( ListDetectMitigationActionsTasksRequest listDetectMitigationActionsTasksRequest) { ExecutionContext executionContext = createExecutionContext(listDetectMitigationActionsTasksRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListDetectMitigationActionsTasksRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listDetectMitigationActionsTasksRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListDetectMitigationActionsTasks"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListDetectMitigationActionsTasksResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* List the set of dimensions that are defined for your Amazon Web Services accounts. *

*

* Requires permission to access the ListDimensions action. *

* * @param listDimensionsRequest * @return Result of the ListDimensions operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.ListDimensions */ @Override public ListDimensionsResult listDimensions(ListDimensionsRequest request) { request = beforeClientExecution(request); return executeListDimensions(request); } @SdkInternalApi final ListDimensionsResult executeListDimensions(ListDimensionsRequest listDimensionsRequest) { ExecutionContext executionContext = createExecutionContext(listDimensionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListDimensionsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listDimensionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListDimensions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListDimensionsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets a list of domain configurations for the user. This list is sorted alphabetically by domain configuration * name. *

*

* Requires permission to access the ListDomainConfigurations action. *

* * @param listDomainConfigurationsRequest * @return Result of the ListDomainConfigurations operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListDomainConfigurations */ @Override public ListDomainConfigurationsResult listDomainConfigurations(ListDomainConfigurationsRequest request) { request = beforeClientExecution(request); return executeListDomainConfigurations(request); } @SdkInternalApi final ListDomainConfigurationsResult executeListDomainConfigurations(ListDomainConfigurationsRequest listDomainConfigurationsRequest) { ExecutionContext executionContext = createExecutionContext(listDomainConfigurationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListDomainConfigurationsRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listDomainConfigurationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListDomainConfigurations"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListDomainConfigurationsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists all your fleet metrics. *

*

* Requires permission to access the ListFleetMetrics action. *

* * @param listFleetMetricsRequest * @return Result of the ListFleetMetrics operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListFleetMetrics */ @Override public ListFleetMetricsResult listFleetMetrics(ListFleetMetricsRequest request) { request = beforeClientExecution(request); return executeListFleetMetrics(request); } @SdkInternalApi final ListFleetMetricsResult executeListFleetMetrics(ListFleetMetricsRequest listFleetMetricsRequest) { ExecutionContext executionContext = createExecutionContext(listFleetMetricsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListFleetMetricsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listFleetMetricsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListFleetMetrics"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListFleetMetricsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the search indices. *

*

* Requires permission to access the ListIndices action. *

* * @param listIndicesRequest * @return Result of the ListIndices operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListIndices */ @Override public ListIndicesResult listIndices(ListIndicesRequest request) { request = beforeClientExecution(request); return executeListIndices(request); } @SdkInternalApi final ListIndicesResult executeListIndices(ListIndicesRequest listIndicesRequest) { ExecutionContext executionContext = createExecutionContext(listIndicesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListIndicesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listIndicesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListIndices"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListIndicesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the job executions for a job. *

*

* Requires permission to access the ListJobExecutionsForJob action. *

* * @param listJobExecutionsForJobRequest * @return Result of the ListJobExecutionsForJob operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.ListJobExecutionsForJob */ @Override public ListJobExecutionsForJobResult listJobExecutionsForJob(ListJobExecutionsForJobRequest request) { request = beforeClientExecution(request); return executeListJobExecutionsForJob(request); } @SdkInternalApi final ListJobExecutionsForJobResult executeListJobExecutionsForJob(ListJobExecutionsForJobRequest listJobExecutionsForJobRequest) { ExecutionContext executionContext = createExecutionContext(listJobExecutionsForJobRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListJobExecutionsForJobRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listJobExecutionsForJobRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListJobExecutionsForJob"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListJobExecutionsForJobResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the job executions for the specified thing. *

*

* Requires permission to access the ListJobExecutionsForThing action. *

* * @param listJobExecutionsForThingRequest * @return Result of the ListJobExecutionsForThing operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.ListJobExecutionsForThing */ @Override public ListJobExecutionsForThingResult listJobExecutionsForThing(ListJobExecutionsForThingRequest request) { request = beforeClientExecution(request); return executeListJobExecutionsForThing(request); } @SdkInternalApi final ListJobExecutionsForThingResult executeListJobExecutionsForThing(ListJobExecutionsForThingRequest listJobExecutionsForThingRequest) { ExecutionContext executionContext = createExecutionContext(listJobExecutionsForThingRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListJobExecutionsForThingRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listJobExecutionsForThingRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListJobExecutionsForThing"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListJobExecutionsForThingResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns a list of job templates. *

*

* Requires permission to access the ListJobTemplates action. *

* * @param listJobTemplatesRequest * @return Result of the ListJobTemplates operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListJobTemplates */ @Override public ListJobTemplatesResult listJobTemplates(ListJobTemplatesRequest request) { request = beforeClientExecution(request); return executeListJobTemplates(request); } @SdkInternalApi final ListJobTemplatesResult executeListJobTemplates(ListJobTemplatesRequest listJobTemplatesRequest) { ExecutionContext executionContext = createExecutionContext(listJobTemplatesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListJobTemplatesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listJobTemplatesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListJobTemplates"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListJobTemplatesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists jobs. *

*

* Requires permission to access the ListJobs action. *

* * @param listJobsRequest * @return Result of the ListJobs operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.ListJobs */ @Override public ListJobsResult listJobs(ListJobsRequest request) { request = beforeClientExecution(request); return executeListJobs(request); } @SdkInternalApi final ListJobsResult executeListJobs(ListJobsRequest listJobsRequest) { ExecutionContext executionContext = createExecutionContext(listJobsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListJobsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listJobsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListJobs"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler(new JsonOperationMetadata() .withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListJobsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns a list of managed job templates. *

* * @param listManagedJobTemplatesRequest * @return Result of the ListManagedJobTemplates operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalServerException * Internal error from the service that indicates an unexpected error or that the service is unavailable. * @sample AWSIot.ListManagedJobTemplates */ @Override public ListManagedJobTemplatesResult listManagedJobTemplates(ListManagedJobTemplatesRequest request) { request = beforeClientExecution(request); return executeListManagedJobTemplates(request); } @SdkInternalApi final ListManagedJobTemplatesResult executeListManagedJobTemplates(ListManagedJobTemplatesRequest listManagedJobTemplatesRequest) { ExecutionContext executionContext = createExecutionContext(listManagedJobTemplatesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListManagedJobTemplatesRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listManagedJobTemplatesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListManagedJobTemplates"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListManagedJobTemplatesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the values reported for an IoT Device Defender metric (device-side metric, cloud-side metric, or custom * metric) by the given thing during the specified time period. *

* * @param listMetricValuesRequest * @return Result of the ListMetricValues operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.ListMetricValues */ @Override public ListMetricValuesResult listMetricValues(ListMetricValuesRequest request) { request = beforeClientExecution(request); return executeListMetricValues(request); } @SdkInternalApi final ListMetricValuesResult executeListMetricValues(ListMetricValuesRequest listMetricValuesRequest) { ExecutionContext executionContext = createExecutionContext(listMetricValuesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListMetricValuesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listMetricValuesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListMetricValues"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListMetricValuesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets a list of all mitigation actions that match the specified filter criteria. *

*

* Requires permission to access the ListMitigationActions action. *

* * @param listMitigationActionsRequest * @return Result of the ListMitigationActions operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListMitigationActions */ @Override public ListMitigationActionsResult listMitigationActions(ListMitigationActionsRequest request) { request = beforeClientExecution(request); return executeListMitigationActions(request); } @SdkInternalApi final ListMitigationActionsResult executeListMitigationActions(ListMitigationActionsRequest listMitigationActionsRequest) { ExecutionContext executionContext = createExecutionContext(listMitigationActionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListMitigationActionsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listMitigationActionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListMitigationActions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListMitigationActionsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists OTA updates. *

*

* Requires permission to access the ListOTAUpdates action. *

* * @param listOTAUpdatesRequest * @return Result of the ListOTAUpdates operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws InternalFailureException * An unexpected error has occurred. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.ListOTAUpdates */ @Override public ListOTAUpdatesResult listOTAUpdates(ListOTAUpdatesRequest request) { request = beforeClientExecution(request); return executeListOTAUpdates(request); } @SdkInternalApi final ListOTAUpdatesResult executeListOTAUpdates(ListOTAUpdatesRequest listOTAUpdatesRequest) { ExecutionContext executionContext = createExecutionContext(listOTAUpdatesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListOTAUpdatesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listOTAUpdatesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListOTAUpdates"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListOTAUpdatesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists certificates that are being transferred but not yet accepted. *

*

* Requires permission to access the ListOutgoingCertificates action. *

* * @param listOutgoingCertificatesRequest * The input to the ListOutgoingCertificates operation. * @return Result of the ListOutgoingCertificates operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListOutgoingCertificates */ @Override public ListOutgoingCertificatesResult listOutgoingCertificates(ListOutgoingCertificatesRequest request) { request = beforeClientExecution(request); return executeListOutgoingCertificates(request); } @SdkInternalApi final ListOutgoingCertificatesResult executeListOutgoingCertificates(ListOutgoingCertificatesRequest listOutgoingCertificatesRequest) { ExecutionContext executionContext = createExecutionContext(listOutgoingCertificatesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListOutgoingCertificatesRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listOutgoingCertificatesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListOutgoingCertificates"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListOutgoingCertificatesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the software package versions associated to the account. *

*

* Requires permission to access the ListPackageVersions action. *

* * @param listPackageVersionsRequest * @return Result of the ListPackageVersions operation returned by the service. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalServerException * Internal error from the service that indicates an unexpected error or that the service is unavailable. * @throws ValidationException * The request is not valid. * @sample AWSIot.ListPackageVersions */ @Override public ListPackageVersionsResult listPackageVersions(ListPackageVersionsRequest request) { request = beforeClientExecution(request); return executeListPackageVersions(request); } @SdkInternalApi final ListPackageVersionsResult executeListPackageVersions(ListPackageVersionsRequest listPackageVersionsRequest) { ExecutionContext executionContext = createExecutionContext(listPackageVersionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListPackageVersionsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listPackageVersionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListPackageVersions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListPackageVersionsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the software packages associated to the account. *

*

* Requires permission to access the ListPackages action. *

* * @param listPackagesRequest * @return Result of the ListPackages operation returned by the service. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalServerException * Internal error from the service that indicates an unexpected error or that the service is unavailable. * @throws ValidationException * The request is not valid. * @sample AWSIot.ListPackages */ @Override public ListPackagesResult listPackages(ListPackagesRequest request) { request = beforeClientExecution(request); return executeListPackages(request); } @SdkInternalApi final ListPackagesResult executeListPackages(ListPackagesRequest listPackagesRequest) { ExecutionContext executionContext = createExecutionContext(listPackagesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListPackagesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listPackagesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListPackages"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListPackagesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists your policies. *

*

* Requires permission to access the ListPolicies action. *

* * @param listPoliciesRequest * The input for the ListPolicies operation. * @return Result of the ListPolicies operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListPolicies */ @Override public ListPoliciesResult listPolicies(ListPoliciesRequest request) { request = beforeClientExecution(request); return executeListPolicies(request); } @SdkInternalApi final ListPoliciesResult executeListPolicies(ListPoliciesRequest listPoliciesRequest) { ExecutionContext executionContext = createExecutionContext(listPoliciesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListPoliciesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listPoliciesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListPolicies"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListPoliciesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the principals associated with the specified policy. *

*

* Note: This action is deprecated and works as expected for backward compatibility, but we won't add * enhancements. Use ListTargetsForPolicy instead. *

*

* Requires permission to access the ListPolicyPrincipals action. *

* * @param listPolicyPrincipalsRequest * The input for the ListPolicyPrincipals operation. * @return Result of the ListPolicyPrincipals operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListPolicyPrincipals */ @Override @Deprecated public ListPolicyPrincipalsResult listPolicyPrincipals(ListPolicyPrincipalsRequest request) { request = beforeClientExecution(request); return executeListPolicyPrincipals(request); } @SdkInternalApi final ListPolicyPrincipalsResult executeListPolicyPrincipals(ListPolicyPrincipalsRequest listPolicyPrincipalsRequest) { ExecutionContext executionContext = createExecutionContext(listPolicyPrincipalsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListPolicyPrincipalsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listPolicyPrincipalsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListPolicyPrincipals"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListPolicyPrincipalsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

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

*

* Requires permission to access the ListPolicyVersions action. *

* * @param listPolicyVersionsRequest * The input for the ListPolicyVersions operation. * @return Result of the ListPolicyVersions operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListPolicyVersions */ @Override public ListPolicyVersionsResult listPolicyVersions(ListPolicyVersionsRequest request) { request = beforeClientExecution(request); return executeListPolicyVersions(request); } @SdkInternalApi final ListPolicyVersionsResult executeListPolicyVersions(ListPolicyVersionsRequest listPolicyVersionsRequest) { ExecutionContext executionContext = createExecutionContext(listPolicyVersionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListPolicyVersionsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listPolicyVersionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListPolicyVersions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListPolicyVersionsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the policies attached to the specified principal. If you use an Cognito identity, the ID must be in AmazonCognito Identity format. *

*

* Note: This action is deprecated and works as expected for backward compatibility, but we won't add * enhancements. Use ListAttachedPolicies instead. *

*

* Requires permission to access the ListPrincipalPolicies action. *

* * @param listPrincipalPoliciesRequest * The input for the ListPrincipalPolicies operation. * @return Result of the ListPrincipalPolicies operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListPrincipalPolicies */ @Override @Deprecated public ListPrincipalPoliciesResult listPrincipalPolicies(ListPrincipalPoliciesRequest request) { request = beforeClientExecution(request); return executeListPrincipalPolicies(request); } @SdkInternalApi final ListPrincipalPoliciesResult executeListPrincipalPolicies(ListPrincipalPoliciesRequest listPrincipalPoliciesRequest) { ExecutionContext executionContext = createExecutionContext(listPrincipalPoliciesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListPrincipalPoliciesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listPrincipalPoliciesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListPrincipalPolicies"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListPrincipalPoliciesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the things associated with the specified principal. A principal can be X.509 certificates, IAM users, * groups, and roles, Amazon Cognito identities or federated identities. *

*

* Requires permission to access the ListPrincipalThings action. *

* * @param listPrincipalThingsRequest * The input for the ListPrincipalThings operation. * @return Result of the ListPrincipalThings operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.ListPrincipalThings */ @Override public ListPrincipalThingsResult listPrincipalThings(ListPrincipalThingsRequest request) { request = beforeClientExecution(request); return executeListPrincipalThings(request); } @SdkInternalApi final ListPrincipalThingsResult executeListPrincipalThings(ListPrincipalThingsRequest listPrincipalThingsRequest) { ExecutionContext executionContext = createExecutionContext(listPrincipalThingsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListPrincipalThingsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listPrincipalThingsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListPrincipalThings"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListPrincipalThingsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* A list of provisioning template versions. *

*

* Requires permission to access the ListProvisioningTemplateVersions action. *

* * @param listProvisioningTemplateVersionsRequest * @return Result of the ListProvisioningTemplateVersions operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws UnauthorizedException * You are not authorized to perform this operation. * @sample AWSIot.ListProvisioningTemplateVersions */ @Override public ListProvisioningTemplateVersionsResult listProvisioningTemplateVersions(ListProvisioningTemplateVersionsRequest request) { request = beforeClientExecution(request); return executeListProvisioningTemplateVersions(request); } @SdkInternalApi final ListProvisioningTemplateVersionsResult executeListProvisioningTemplateVersions( ListProvisioningTemplateVersionsRequest listProvisioningTemplateVersionsRequest) { ExecutionContext executionContext = createExecutionContext(listProvisioningTemplateVersionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListProvisioningTemplateVersionsRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listProvisioningTemplateVersionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListProvisioningTemplateVersions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListProvisioningTemplateVersionsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the provisioning templates in your Amazon Web Services account. *

*

* Requires permission to access the ListProvisioningTemplates action. *

* * @param listProvisioningTemplatesRequest * @return Result of the ListProvisioningTemplates operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @sample AWSIot.ListProvisioningTemplates */ @Override public ListProvisioningTemplatesResult listProvisioningTemplates(ListProvisioningTemplatesRequest request) { request = beforeClientExecution(request); return executeListProvisioningTemplates(request); } @SdkInternalApi final ListProvisioningTemplatesResult executeListProvisioningTemplates(ListProvisioningTemplatesRequest listProvisioningTemplatesRequest) { ExecutionContext executionContext = createExecutionContext(listProvisioningTemplatesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListProvisioningTemplatesRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listProvisioningTemplatesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListProvisioningTemplates"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListProvisioningTemplatesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* The related resources of an Audit finding. The following resources can be returned from calling this API: *

*
    *
  • *

    * DEVICE_CERTIFICATE *

    *
  • *
  • *

    * CA_CERTIFICATE *

    *
  • *
  • *

    * IOT_POLICY *

    *
  • *
  • *

    * COGNITO_IDENTITY_POOL *

    *
  • *
  • *

    * CLIENT_ID *

    *
  • *
  • *

    * ACCOUNT_SETTINGS *

    *
  • *
  • *

    * ROLE_ALIAS *

    *
  • *
  • *

    * IAM_ROLE *

    *
  • *
  • *

    * ISSUER_CERTIFICATE *

    *
  • *
* *

* This API is similar to DescribeAuditFinding's RelatedResources but * provides pagination and is not limited to 10 resources. When calling DescribeAuditFinding * for the intermediate CA revoked for active device certificates check, RelatedResources will not be populated. You * must use this API, ListRelatedResourcesForAuditFinding, to list the certificates. *

*
* * @param listRelatedResourcesForAuditFindingRequest * @return Result of the ListRelatedResourcesForAuditFinding operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListRelatedResourcesForAuditFinding */ @Override public ListRelatedResourcesForAuditFindingResult listRelatedResourcesForAuditFinding(ListRelatedResourcesForAuditFindingRequest request) { request = beforeClientExecution(request); return executeListRelatedResourcesForAuditFinding(request); } @SdkInternalApi final ListRelatedResourcesForAuditFindingResult executeListRelatedResourcesForAuditFinding( ListRelatedResourcesForAuditFindingRequest listRelatedResourcesForAuditFindingRequest) { ExecutionContext executionContext = createExecutionContext(listRelatedResourcesForAuditFindingRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListRelatedResourcesForAuditFindingRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listRelatedResourcesForAuditFindingRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListRelatedResourcesForAuditFinding"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListRelatedResourcesForAuditFindingResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the role aliases registered in your account. *

*

* Requires permission to access the ListRoleAliases action. *

* * @param listRoleAliasesRequest * @return Result of the ListRoleAliases operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListRoleAliases */ @Override public ListRoleAliasesResult listRoleAliases(ListRoleAliasesRequest request) { request = beforeClientExecution(request); return executeListRoleAliases(request); } @SdkInternalApi final ListRoleAliasesResult executeListRoleAliases(ListRoleAliasesRequest listRoleAliasesRequest) { ExecutionContext executionContext = createExecutionContext(listRoleAliasesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListRoleAliasesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listRoleAliasesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListRoleAliases"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListRoleAliasesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists all of your scheduled audits. *

*

* Requires permission to access the ListScheduledAudits action. *

* * @param listScheduledAuditsRequest * @return Result of the ListScheduledAudits operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListScheduledAudits */ @Override public ListScheduledAuditsResult listScheduledAudits(ListScheduledAuditsRequest request) { request = beforeClientExecution(request); return executeListScheduledAudits(request); } @SdkInternalApi final ListScheduledAuditsResult executeListScheduledAudits(ListScheduledAuditsRequest listScheduledAuditsRequest) { ExecutionContext executionContext = createExecutionContext(listScheduledAuditsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListScheduledAuditsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listScheduledAuditsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListScheduledAudits"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListScheduledAuditsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the Device Defender security profiles you've created. You can filter security profiles by dimension or * custom metric. *

*

* Requires permission to access the ListSecurityProfiles action. *

* *

* dimensionName and metricName cannot be used in the same request. *

*
* * @param listSecurityProfilesRequest * @return Result of the ListSecurityProfiles operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.ListSecurityProfiles */ @Override public ListSecurityProfilesResult listSecurityProfiles(ListSecurityProfilesRequest request) { request = beforeClientExecution(request); return executeListSecurityProfiles(request); } @SdkInternalApi final ListSecurityProfilesResult executeListSecurityProfiles(ListSecurityProfilesRequest listSecurityProfilesRequest) { ExecutionContext executionContext = createExecutionContext(listSecurityProfilesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListSecurityProfilesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listSecurityProfilesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListSecurityProfiles"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListSecurityProfilesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the Device Defender security profiles attached to a target (thing group). *

*

* Requires permission to access the ListSecurityProfilesForTarget action. *

* * @param listSecurityProfilesForTargetRequest * @return Result of the ListSecurityProfilesForTarget operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.ListSecurityProfilesForTarget */ @Override public ListSecurityProfilesForTargetResult listSecurityProfilesForTarget(ListSecurityProfilesForTargetRequest request) { request = beforeClientExecution(request); return executeListSecurityProfilesForTarget(request); } @SdkInternalApi final ListSecurityProfilesForTargetResult executeListSecurityProfilesForTarget(ListSecurityProfilesForTargetRequest listSecurityProfilesForTargetRequest) { ExecutionContext executionContext = createExecutionContext(listSecurityProfilesForTargetRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListSecurityProfilesForTargetRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listSecurityProfilesForTargetRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListSecurityProfilesForTarget"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListSecurityProfilesForTargetResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists all of the streams in your Amazon Web Services account. *

*

* Requires permission to access the ListStreams action. *

* * @param listStreamsRequest * @return Result of the ListStreams operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListStreams */ @Override public ListStreamsResult listStreams(ListStreamsRequest request) { request = beforeClientExecution(request); return executeListStreams(request); } @SdkInternalApi final ListStreamsResult executeListStreams(ListStreamsRequest listStreamsRequest) { ExecutionContext executionContext = createExecutionContext(listStreamsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListStreamsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listStreamsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListStreams"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListStreamsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the tags (metadata) you have assigned to the resource. *

*

* Requires permission to access the ListTagsForResource action. *

* * @param listTagsForResourceRequest * @return Result of the ListTagsForResource operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.ListTagsForResource */ @Override public ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest request) { request = beforeClientExecution(request); return executeListTagsForResource(request); } @SdkInternalApi final ListTagsForResourceResult executeListTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest) { ExecutionContext executionContext = createExecutionContext(listTagsForResourceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListTagsForResourceRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listTagsForResourceRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListTagsForResource"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListTagsForResourceResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* List targets for the specified policy. *

*

* Requires permission to access the ListTargetsForPolicy action. *

* * @param listTargetsForPolicyRequest * @return Result of the ListTargetsForPolicy operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws LimitExceededException * A limit has been exceeded. * @sample AWSIot.ListTargetsForPolicy */ @Override public ListTargetsForPolicyResult listTargetsForPolicy(ListTargetsForPolicyRequest request) { request = beforeClientExecution(request); return executeListTargetsForPolicy(request); } @SdkInternalApi final ListTargetsForPolicyResult executeListTargetsForPolicy(ListTargetsForPolicyRequest listTargetsForPolicyRequest) { ExecutionContext executionContext = createExecutionContext(listTargetsForPolicyRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListTargetsForPolicyRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listTargetsForPolicyRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListTargetsForPolicy"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListTargetsForPolicyResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the targets (thing groups) associated with a given Device Defender security profile. *

*

* Requires permission to access the ListTargetsForSecurityProfile action. *

* * @param listTargetsForSecurityProfileRequest * @return Result of the ListTargetsForSecurityProfile operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListTargetsForSecurityProfile */ @Override public ListTargetsForSecurityProfileResult listTargetsForSecurityProfile(ListTargetsForSecurityProfileRequest request) { request = beforeClientExecution(request); return executeListTargetsForSecurityProfile(request); } @SdkInternalApi final ListTargetsForSecurityProfileResult executeListTargetsForSecurityProfile(ListTargetsForSecurityProfileRequest listTargetsForSecurityProfileRequest) { ExecutionContext executionContext = createExecutionContext(listTargetsForSecurityProfileRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListTargetsForSecurityProfileRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listTargetsForSecurityProfileRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListTargetsForSecurityProfile"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListTargetsForSecurityProfileResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* List the thing groups in your account. *

*

* Requires permission to access the ListThingGroups action. *

* * @param listThingGroupsRequest * @return Result of the ListThingGroups operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.ListThingGroups */ @Override public ListThingGroupsResult listThingGroups(ListThingGroupsRequest request) { request = beforeClientExecution(request); return executeListThingGroups(request); } @SdkInternalApi final ListThingGroupsResult executeListThingGroups(ListThingGroupsRequest listThingGroupsRequest) { ExecutionContext executionContext = createExecutionContext(listThingGroupsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListThingGroupsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listThingGroupsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListThingGroups"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListThingGroupsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* List the thing groups to which the specified thing belongs. *

*

* Requires permission to access the ListThingGroupsForThing action. *

* * @param listThingGroupsForThingRequest * @return Result of the ListThingGroupsForThing operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.ListThingGroupsForThing */ @Override public ListThingGroupsForThingResult listThingGroupsForThing(ListThingGroupsForThingRequest request) { request = beforeClientExecution(request); return executeListThingGroupsForThing(request); } @SdkInternalApi final ListThingGroupsForThingResult executeListThingGroupsForThing(ListThingGroupsForThingRequest listThingGroupsForThingRequest) { ExecutionContext executionContext = createExecutionContext(listThingGroupsForThingRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListThingGroupsForThingRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listThingGroupsForThingRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListThingGroupsForThing"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListThingGroupsForThingResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the principals associated with the specified thing. A principal can be X.509 certificates, IAM users, * groups, and roles, Amazon Cognito identities or federated identities. *

*

* Requires permission to access the ListThingPrincipals action. *

* * @param listThingPrincipalsRequest * The input for the ListThingPrincipal operation. * @return Result of the ListThingPrincipals operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.ListThingPrincipals */ @Override public ListThingPrincipalsResult listThingPrincipals(ListThingPrincipalsRequest request) { request = beforeClientExecution(request); return executeListThingPrincipals(request); } @SdkInternalApi final ListThingPrincipalsResult executeListThingPrincipals(ListThingPrincipalsRequest listThingPrincipalsRequest) { ExecutionContext executionContext = createExecutionContext(listThingPrincipalsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListThingPrincipalsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listThingPrincipalsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListThingPrincipals"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListThingPrincipalsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Information about the thing registration tasks. *

* * @param listThingRegistrationTaskReportsRequest * @return Result of the ListThingRegistrationTaskReports operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListThingRegistrationTaskReports */ @Override public ListThingRegistrationTaskReportsResult listThingRegistrationTaskReports(ListThingRegistrationTaskReportsRequest request) { request = beforeClientExecution(request); return executeListThingRegistrationTaskReports(request); } @SdkInternalApi final ListThingRegistrationTaskReportsResult executeListThingRegistrationTaskReports( ListThingRegistrationTaskReportsRequest listThingRegistrationTaskReportsRequest) { ExecutionContext executionContext = createExecutionContext(listThingRegistrationTaskReportsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListThingRegistrationTaskReportsRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listThingRegistrationTaskReportsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListThingRegistrationTaskReports"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListThingRegistrationTaskReportsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* List bulk thing provisioning tasks. *

*

* Requires permission to access the ListThingRegistrationTasks action. *

* * @param listThingRegistrationTasksRequest * @return Result of the ListThingRegistrationTasks operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListThingRegistrationTasks */ @Override public ListThingRegistrationTasksResult listThingRegistrationTasks(ListThingRegistrationTasksRequest request) { request = beforeClientExecution(request); return executeListThingRegistrationTasks(request); } @SdkInternalApi final ListThingRegistrationTasksResult executeListThingRegistrationTasks(ListThingRegistrationTasksRequest listThingRegistrationTasksRequest) { ExecutionContext executionContext = createExecutionContext(listThingRegistrationTasksRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListThingRegistrationTasksRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listThingRegistrationTasksRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListThingRegistrationTasks"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListThingRegistrationTasksResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the existing thing types. *

*

* Requires permission to access the ListThingTypes action. *

* * @param listThingTypesRequest * The input for the ListThingTypes operation. * @return Result of the ListThingTypes operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListThingTypes */ @Override public ListThingTypesResult listThingTypes(ListThingTypesRequest request) { request = beforeClientExecution(request); return executeListThingTypes(request); } @SdkInternalApi final ListThingTypesResult executeListThingTypes(ListThingTypesRequest listThingTypesRequest) { ExecutionContext executionContext = createExecutionContext(listThingTypesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListThingTypesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listThingTypesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListThingTypes"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListThingTypesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists your things. Use the attributeName and attributeValue parameters to filter your things. For * example, calling ListThings with attributeName=Color and attributeValue=Red retrieves all things in * the registry that contain an attribute Color with the value Red. For more information, see List Things from * the Amazon Web Services IoT Core Developer Guide. *

*

* Requires permission to access the ListThings action. *

* *

* You will not be charged for calling this API if an Access denied error is returned. You will also * not be charged if no attributes or pagination token was provided in request and no pagination token and no * results were returned. *

*
* * @param listThingsRequest * The input for the ListThings operation. * @return Result of the ListThings operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListThings */ @Override public ListThingsResult listThings(ListThingsRequest request) { request = beforeClientExecution(request); return executeListThings(request); } @SdkInternalApi final ListThingsResult executeListThings(ListThingsRequest listThingsRequest) { ExecutionContext executionContext = createExecutionContext(listThingsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListThingsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listThingsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListThings"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler(new JsonOperationMetadata() .withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListThingsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the things you have added to the given billing group. *

*

* Requires permission to access the ListThingsInBillingGroup action. *

* * @param listThingsInBillingGroupRequest * @return Result of the ListThingsInBillingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.ListThingsInBillingGroup */ @Override public ListThingsInBillingGroupResult listThingsInBillingGroup(ListThingsInBillingGroupRequest request) { request = beforeClientExecution(request); return executeListThingsInBillingGroup(request); } @SdkInternalApi final ListThingsInBillingGroupResult executeListThingsInBillingGroup(ListThingsInBillingGroupRequest listThingsInBillingGroupRequest) { ExecutionContext executionContext = createExecutionContext(listThingsInBillingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListThingsInBillingGroupRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listThingsInBillingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListThingsInBillingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListThingsInBillingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the things in the specified group. *

*

* Requires permission to access the ListThingsInThingGroup action. *

* * @param listThingsInThingGroupRequest * @return Result of the ListThingsInThingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.ListThingsInThingGroup */ @Override public ListThingsInThingGroupResult listThingsInThingGroup(ListThingsInThingGroupRequest request) { request = beforeClientExecution(request); return executeListThingsInThingGroup(request); } @SdkInternalApi final ListThingsInThingGroupResult executeListThingsInThingGroup(ListThingsInThingGroupRequest listThingsInThingGroupRequest) { ExecutionContext executionContext = createExecutionContext(listThingsInThingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListThingsInThingGroupRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listThingsInThingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListThingsInThingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListThingsInThingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists all the topic rule destinations in your Amazon Web Services account. *

*

* Requires permission to access the ListTopicRuleDestinations action. *

* * @param listTopicRuleDestinationsRequest * @return Result of the ListTopicRuleDestinations operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws UnauthorizedException * You are not authorized to perform this operation. * @sample AWSIot.ListTopicRuleDestinations */ @Override public ListTopicRuleDestinationsResult listTopicRuleDestinations(ListTopicRuleDestinationsRequest request) { request = beforeClientExecution(request); return executeListTopicRuleDestinations(request); } @SdkInternalApi final ListTopicRuleDestinationsResult executeListTopicRuleDestinations(ListTopicRuleDestinationsRequest listTopicRuleDestinationsRequest) { ExecutionContext executionContext = createExecutionContext(listTopicRuleDestinationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListTopicRuleDestinationsRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listTopicRuleDestinationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListTopicRuleDestinations"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListTopicRuleDestinationsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the rules for the specific topic. *

*

* Requires permission to access the ListTopicRules action. *

* * @param listTopicRulesRequest * The input for the ListTopicRules operation. * @return Result of the ListTopicRules operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.ListTopicRules */ @Override public ListTopicRulesResult listTopicRules(ListTopicRulesRequest request) { request = beforeClientExecution(request); return executeListTopicRules(request); } @SdkInternalApi final ListTopicRulesResult executeListTopicRules(ListTopicRulesRequest listTopicRulesRequest) { ExecutionContext executionContext = createExecutionContext(listTopicRulesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListTopicRulesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listTopicRulesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListTopicRules"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListTopicRulesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists logging levels. *

*

* Requires permission to access the ListV2LoggingLevels action. *

* * @param listV2LoggingLevelsRequest * @return Result of the ListV2LoggingLevels operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws NotConfiguredException * The resource is not configured. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.ListV2LoggingLevels */ @Override public ListV2LoggingLevelsResult listV2LoggingLevels(ListV2LoggingLevelsRequest request) { request = beforeClientExecution(request); return executeListV2LoggingLevels(request); } @SdkInternalApi final ListV2LoggingLevelsResult executeListV2LoggingLevels(ListV2LoggingLevelsRequest listV2LoggingLevelsRequest) { ExecutionContext executionContext = createExecutionContext(listV2LoggingLevelsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListV2LoggingLevelsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listV2LoggingLevelsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListV2LoggingLevels"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListV2LoggingLevelsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the Device Defender security profile violations discovered during the given time period. You can use * filters to limit the results to those alerts issued for a particular security profile, behavior, or thing * (device). *

*

* Requires permission to access the ListViolationEvents action. *

* * @param listViolationEventsRequest * @return Result of the ListViolationEvents operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ListViolationEvents */ @Override public ListViolationEventsResult listViolationEvents(ListViolationEventsRequest request) { request = beforeClientExecution(request); return executeListViolationEvents(request); } @SdkInternalApi final ListViolationEventsResult executeListViolationEvents(ListViolationEventsRequest listViolationEventsRequest) { ExecutionContext executionContext = createExecutionContext(listViolationEventsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListViolationEventsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listViolationEventsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListViolationEvents"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListViolationEventsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Set a verification state and provide a description of that verification state on a violation (detect alarm). *

* * @param putVerificationStateOnViolationRequest * @return Result of the PutVerificationStateOnViolation operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.PutVerificationStateOnViolation */ @Override public PutVerificationStateOnViolationResult putVerificationStateOnViolation(PutVerificationStateOnViolationRequest request) { request = beforeClientExecution(request); return executePutVerificationStateOnViolation(request); } @SdkInternalApi final PutVerificationStateOnViolationResult executePutVerificationStateOnViolation( PutVerificationStateOnViolationRequest putVerificationStateOnViolationRequest) { ExecutionContext executionContext = createExecutionContext(putVerificationStateOnViolationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new PutVerificationStateOnViolationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(putVerificationStateOnViolationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "PutVerificationStateOnViolation"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new PutVerificationStateOnViolationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Registers a CA certificate with Amazon Web Services IoT Core. There is no limit to the number of CA certificates * you can register in your Amazon Web Services account. You can register up to 10 CA certificates with the same * CA subject field per Amazon Web Services account. *

*

* Requires permission to access the RegisterCACertificate action. *

* * @param registerCACertificateRequest * The input to the RegisterCACertificate operation. * @return Result of the RegisterCACertificate operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws RegistrationCodeValidationException * The registration code is invalid. * @throws InvalidRequestException * The request is not valid. * @throws CertificateValidationException * The certificate is invalid. * @throws ThrottlingException * The rate exceeds the limit. * @throws LimitExceededException * A limit has been exceeded. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.RegisterCACertificate */ @Override public RegisterCACertificateResult registerCACertificate(RegisterCACertificateRequest request) { request = beforeClientExecution(request); return executeRegisterCACertificate(request); } @SdkInternalApi final RegisterCACertificateResult executeRegisterCACertificate(RegisterCACertificateRequest registerCACertificateRequest) { ExecutionContext executionContext = createExecutionContext(registerCACertificateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RegisterCACertificateRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(registerCACertificateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RegisterCACertificate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new RegisterCACertificateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Registers a device certificate with IoT in the same certificate mode as the signing CA. 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. *

*

* Requires permission to access the RegisterCertificate action. *

* * @param registerCertificateRequest * The input to the RegisterCertificate operation. * @return Result of the RegisterCertificate operation returned by the service. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws InvalidRequestException * The request is not valid. * @throws CertificateValidationException * The certificate is invalid. * @throws CertificateStateException * The certificate operation is not allowed. * @throws CertificateConflictException * Unable to verify the CA certificate used to sign the device certificate you are attempting to register. * This is happens when you have registered more than one CA certificate that has the same subject field and * public key. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.RegisterCertificate */ @Override public RegisterCertificateResult registerCertificate(RegisterCertificateRequest request) { request = beforeClientExecution(request); return executeRegisterCertificate(request); } @SdkInternalApi final RegisterCertificateResult executeRegisterCertificate(RegisterCertificateRequest registerCertificateRequest) { ExecutionContext executionContext = createExecutionContext(registerCertificateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RegisterCertificateRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(registerCertificateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RegisterCertificate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new RegisterCertificateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Register a certificate that does not have a certificate authority (CA). For supported certificates, consult * Certificate signing algorithms supported by IoT. *

* * @param registerCertificateWithoutCARequest * @return Result of the RegisterCertificateWithoutCA operation returned by the service. * @throws ResourceAlreadyExistsException * The resource already exists. * @throws InvalidRequestException * The request is not valid. * @throws CertificateStateException * The certificate operation is not allowed. * @throws CertificateValidationException * The certificate is invalid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.RegisterCertificateWithoutCA */ @Override public RegisterCertificateWithoutCAResult registerCertificateWithoutCA(RegisterCertificateWithoutCARequest request) { request = beforeClientExecution(request); return executeRegisterCertificateWithoutCA(request); } @SdkInternalApi final RegisterCertificateWithoutCAResult executeRegisterCertificateWithoutCA(RegisterCertificateWithoutCARequest registerCertificateWithoutCARequest) { ExecutionContext executionContext = createExecutionContext(registerCertificateWithoutCARequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RegisterCertificateWithoutCARequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(registerCertificateWithoutCARequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RegisterCertificateWithoutCA"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new RegisterCertificateWithoutCAResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Provisions a thing in the device registry. RegisterThing calls other IoT control plane APIs. These calls might * exceed your account level IoT Throttling * Limits and cause throttle errors. Please contact Amazon * Web Services Customer Support to raise your throttling limits if necessary. *

*

* Requires permission to access the RegisterThing action. *

* * @param registerThingRequest * @return Result of the RegisterThing operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InvalidRequestException * The request is not valid. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ThrottlingException * The rate exceeds the limit. * @throws ConflictingResourceUpdateException * A conflicting resource update exception. This exception is thrown when two pending updates cause a * conflict. * @throws ResourceRegistrationFailureException * The resource registration failed. * @sample AWSIot.RegisterThing */ @Override public RegisterThingResult registerThing(RegisterThingRequest request) { request = beforeClientExecution(request); return executeRegisterThing(request); } @SdkInternalApi final RegisterThingResult executeRegisterThing(RegisterThingRequest registerThingRequest) { ExecutionContext executionContext = createExecutionContext(registerThingRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RegisterThingRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(registerThingRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RegisterThing"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new RegisterThingResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Rejects a pending certificate transfer. After 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. *

*

* Requires permission to access the RejectCertificateTransfer action. *

* * @param rejectCertificateTransferRequest * The input for the RejectCertificateTransfer operation. * @return Result of the RejectCertificateTransfer operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws TransferAlreadyCompletedException * You can't revert the certificate transfer because the transfer is already complete. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.RejectCertificateTransfer */ @Override public RejectCertificateTransferResult rejectCertificateTransfer(RejectCertificateTransferRequest request) { request = beforeClientExecution(request); return executeRejectCertificateTransfer(request); } @SdkInternalApi final RejectCertificateTransferResult executeRejectCertificateTransfer(RejectCertificateTransferRequest rejectCertificateTransferRequest) { ExecutionContext executionContext = createExecutionContext(rejectCertificateTransferRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RejectCertificateTransferRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(rejectCertificateTransferRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RejectCertificateTransfer"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new RejectCertificateTransferResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Removes the given thing from the billing group. *

*

* Requires permission to access the RemoveThingFromBillingGroup action. *

* *

* This call is asynchronous. It might take several seconds for the detachment to propagate. *

*
* * @param removeThingFromBillingGroupRequest * @return Result of the RemoveThingFromBillingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.RemoveThingFromBillingGroup */ @Override public RemoveThingFromBillingGroupResult removeThingFromBillingGroup(RemoveThingFromBillingGroupRequest request) { request = beforeClientExecution(request); return executeRemoveThingFromBillingGroup(request); } @SdkInternalApi final RemoveThingFromBillingGroupResult executeRemoveThingFromBillingGroup(RemoveThingFromBillingGroupRequest removeThingFromBillingGroupRequest) { ExecutionContext executionContext = createExecutionContext(removeThingFromBillingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RemoveThingFromBillingGroupRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(removeThingFromBillingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RemoveThingFromBillingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new RemoveThingFromBillingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Remove the specified thing from the specified group. *

*

* You must specify either a thingGroupArn or a thingGroupName to identify the thing group * and either a thingArn or a thingName to identify the thing to remove from the thing * group. *

*

* Requires permission to access the RemoveThingFromThingGroup action. *

* * @param removeThingFromThingGroupRequest * @return Result of the RemoveThingFromThingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.RemoveThingFromThingGroup */ @Override public RemoveThingFromThingGroupResult removeThingFromThingGroup(RemoveThingFromThingGroupRequest request) { request = beforeClientExecution(request); return executeRemoveThingFromThingGroup(request); } @SdkInternalApi final RemoveThingFromThingGroupResult executeRemoveThingFromThingGroup(RemoveThingFromThingGroupRequest removeThingFromThingGroupRequest) { ExecutionContext executionContext = createExecutionContext(removeThingFromThingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new RemoveThingFromThingGroupRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(removeThingFromThingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "RemoveThingFromThingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new RemoveThingFromThingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Replaces the 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. *

*

* Requires permission to access the ReplaceTopicRule action. *

* * @param replaceTopicRuleRequest * The input for the ReplaceTopicRule operation. * @return Result of the ReplaceTopicRule operation returned by the service. * @throws SqlParseException * The Rule-SQL expression can't be parsed correctly. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ConflictingResourceUpdateException * A conflicting resource update exception. This exception is thrown when two pending updates cause a * conflict. * @sample AWSIot.ReplaceTopicRule */ @Override public ReplaceTopicRuleResult replaceTopicRule(ReplaceTopicRuleRequest request) { request = beforeClientExecution(request); return executeReplaceTopicRule(request); } @SdkInternalApi final ReplaceTopicRuleResult executeReplaceTopicRule(ReplaceTopicRuleRequest replaceTopicRuleRequest) { ExecutionContext executionContext = createExecutionContext(replaceTopicRuleRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ReplaceTopicRuleRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(replaceTopicRuleRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ReplaceTopicRule"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ReplaceTopicRuleResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* The query search index. *

*

* Requires permission to access the SearchIndex action. *

* * @param searchIndexRequest * @return Result of the SearchIndex operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidQueryException * The query is invalid. * @throws IndexNotReadyException * The index is not ready. * @sample AWSIot.SearchIndex */ @Override public SearchIndexResult searchIndex(SearchIndexRequest request) { request = beforeClientExecution(request); return executeSearchIndex(request); } @SdkInternalApi final SearchIndexResult executeSearchIndex(SearchIndexRequest searchIndexRequest) { ExecutionContext executionContext = createExecutionContext(searchIndexRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new SearchIndexRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(searchIndexRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "SearchIndex"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new SearchIndexResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Sets the default authorizer. This will be used if a websocket connection is made without specifying an * authorizer. *

*

* Requires permission to access the SetDefaultAuthorizer action. *

* * @param setDefaultAuthorizerRequest * @return Result of the SetDefaultAuthorizer operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceAlreadyExistsException * The resource already exists. * @sample AWSIot.SetDefaultAuthorizer */ @Override public SetDefaultAuthorizerResult setDefaultAuthorizer(SetDefaultAuthorizerRequest request) { request = beforeClientExecution(request); return executeSetDefaultAuthorizer(request); } @SdkInternalApi final SetDefaultAuthorizerResult executeSetDefaultAuthorizer(SetDefaultAuthorizerRequest setDefaultAuthorizerRequest) { ExecutionContext executionContext = createExecutionContext(setDefaultAuthorizerRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new SetDefaultAuthorizerRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(setDefaultAuthorizerRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "SetDefaultAuthorizer"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new SetDefaultAuthorizerResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* 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 ListPrincipalPolicies action. *

*

* Requires permission to access the SetDefaultPolicyVersion action. *

* * @param setDefaultPolicyVersionRequest * The input for the SetDefaultPolicyVersion operation. * @return Result of the SetDefaultPolicyVersion operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.SetDefaultPolicyVersion */ @Override public SetDefaultPolicyVersionResult setDefaultPolicyVersion(SetDefaultPolicyVersionRequest request) { request = beforeClientExecution(request); return executeSetDefaultPolicyVersion(request); } @SdkInternalApi final SetDefaultPolicyVersionResult executeSetDefaultPolicyVersion(SetDefaultPolicyVersionRequest setDefaultPolicyVersionRequest) { ExecutionContext executionContext = createExecutionContext(setDefaultPolicyVersionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new SetDefaultPolicyVersionRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(setDefaultPolicyVersionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "SetDefaultPolicyVersion"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new SetDefaultPolicyVersionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Sets the logging options. *

*

* NOTE: use of this command is not recommended. Use SetV2LoggingOptions instead. *

*

* Requires permission to access the SetLoggingOptions action. *

* * @param setLoggingOptionsRequest * The input for the SetLoggingOptions operation. * @return Result of the SetLoggingOptions operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.SetLoggingOptions */ @Override public SetLoggingOptionsResult setLoggingOptions(SetLoggingOptionsRequest request) { request = beforeClientExecution(request); return executeSetLoggingOptions(request); } @SdkInternalApi final SetLoggingOptionsResult executeSetLoggingOptions(SetLoggingOptionsRequest setLoggingOptionsRequest) { ExecutionContext executionContext = createExecutionContext(setLoggingOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new SetLoggingOptionsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(setLoggingOptionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "SetLoggingOptions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new SetLoggingOptionsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Sets the logging level. *

*

* Requires permission to access the SetV2LoggingLevel action. *

* * @param setV2LoggingLevelRequest * @return Result of the SetV2LoggingLevel operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws NotConfiguredException * The resource is not configured. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws LimitExceededException * A limit has been exceeded. * @sample AWSIot.SetV2LoggingLevel */ @Override public SetV2LoggingLevelResult setV2LoggingLevel(SetV2LoggingLevelRequest request) { request = beforeClientExecution(request); return executeSetV2LoggingLevel(request); } @SdkInternalApi final SetV2LoggingLevelResult executeSetV2LoggingLevel(SetV2LoggingLevelRequest setV2LoggingLevelRequest) { ExecutionContext executionContext = createExecutionContext(setV2LoggingLevelRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new SetV2LoggingLevelRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(setV2LoggingLevelRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "SetV2LoggingLevel"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new SetV2LoggingLevelResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Sets the logging options for the V2 logging service. *

*

* Requires permission to access the SetV2LoggingOptions action. *

* * @param setV2LoggingOptionsRequest * @return Result of the SetV2LoggingOptions operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.SetV2LoggingOptions */ @Override public SetV2LoggingOptionsResult setV2LoggingOptions(SetV2LoggingOptionsRequest request) { request = beforeClientExecution(request); return executeSetV2LoggingOptions(request); } @SdkInternalApi final SetV2LoggingOptionsResult executeSetV2LoggingOptions(SetV2LoggingOptionsRequest setV2LoggingOptionsRequest) { ExecutionContext executionContext = createExecutionContext(setV2LoggingOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new SetV2LoggingOptionsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(setV2LoggingOptionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "SetV2LoggingOptions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new SetV2LoggingOptionsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Starts a task that applies a set of mitigation actions to the specified target. *

*

* Requires permission to access the StartAuditMitigationActionsTask action. *

* * @param startAuditMitigationActionsTaskRequest * @return Result of the StartAuditMitigationActionsTask operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws TaskAlreadyExistsException * This exception occurs if you attempt to start a task with the same task-id as an existing task but with a * different clientRequestToken. * @throws LimitExceededException * A limit has been exceeded. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.StartAuditMitigationActionsTask */ @Override public StartAuditMitigationActionsTaskResult startAuditMitigationActionsTask(StartAuditMitigationActionsTaskRequest request) { request = beforeClientExecution(request); return executeStartAuditMitigationActionsTask(request); } @SdkInternalApi final StartAuditMitigationActionsTaskResult executeStartAuditMitigationActionsTask( StartAuditMitigationActionsTaskRequest startAuditMitigationActionsTaskRequest) { ExecutionContext executionContext = createExecutionContext(startAuditMitigationActionsTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new StartAuditMitigationActionsTaskRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(startAuditMitigationActionsTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "StartAuditMitigationActionsTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new StartAuditMitigationActionsTaskResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Starts a Device Defender ML Detect mitigation actions task. *

*

* Requires permission to access the StartDetectMitigationActionsTask action. *

* * @param startDetectMitigationActionsTaskRequest * @return Result of the StartDetectMitigationActionsTask operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws TaskAlreadyExistsException * This exception occurs if you attempt to start a task with the same task-id as an existing task but with a * different clientRequestToken. * @throws LimitExceededException * A limit has been exceeded. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.StartDetectMitigationActionsTask */ @Override public StartDetectMitigationActionsTaskResult startDetectMitigationActionsTask(StartDetectMitigationActionsTaskRequest request) { request = beforeClientExecution(request); return executeStartDetectMitigationActionsTask(request); } @SdkInternalApi final StartDetectMitigationActionsTaskResult executeStartDetectMitigationActionsTask( StartDetectMitigationActionsTaskRequest startDetectMitigationActionsTaskRequest) { ExecutionContext executionContext = createExecutionContext(startDetectMitigationActionsTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new StartDetectMitigationActionsTaskRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(startDetectMitigationActionsTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "StartDetectMitigationActionsTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new StartDetectMitigationActionsTaskResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Starts an on-demand Device Defender audit. *

*

* Requires permission to access the StartOnDemandAuditTask action. *

* * @param startOnDemandAuditTaskRequest * @return Result of the StartOnDemandAuditTask operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws LimitExceededException * A limit has been exceeded. * @sample AWSIot.StartOnDemandAuditTask */ @Override public StartOnDemandAuditTaskResult startOnDemandAuditTask(StartOnDemandAuditTaskRequest request) { request = beforeClientExecution(request); return executeStartOnDemandAuditTask(request); } @SdkInternalApi final StartOnDemandAuditTaskResult executeStartOnDemandAuditTask(StartOnDemandAuditTaskRequest startOnDemandAuditTaskRequest) { ExecutionContext executionContext = createExecutionContext(startOnDemandAuditTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new StartOnDemandAuditTaskRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(startOnDemandAuditTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "StartOnDemandAuditTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new StartOnDemandAuditTaskResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a bulk thing provisioning task. *

*

* Requires permission to access the StartThingRegistrationTask action. *

* * @param startThingRegistrationTaskRequest * @return Result of the StartThingRegistrationTask operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.StartThingRegistrationTask */ @Override public StartThingRegistrationTaskResult startThingRegistrationTask(StartThingRegistrationTaskRequest request) { request = beforeClientExecution(request); return executeStartThingRegistrationTask(request); } @SdkInternalApi final StartThingRegistrationTaskResult executeStartThingRegistrationTask(StartThingRegistrationTaskRequest startThingRegistrationTaskRequest) { ExecutionContext executionContext = createExecutionContext(startThingRegistrationTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new StartThingRegistrationTaskRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(startThingRegistrationTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "StartThingRegistrationTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new StartThingRegistrationTaskResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Cancels a bulk thing provisioning task. *

*

* Requires permission to access the StopThingRegistrationTask action. *

* * @param stopThingRegistrationTaskRequest * @return Result of the StopThingRegistrationTask operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.StopThingRegistrationTask */ @Override public StopThingRegistrationTaskResult stopThingRegistrationTask(StopThingRegistrationTaskRequest request) { request = beforeClientExecution(request); return executeStopThingRegistrationTask(request); } @SdkInternalApi final StopThingRegistrationTaskResult executeStopThingRegistrationTask(StopThingRegistrationTaskRequest stopThingRegistrationTaskRequest) { ExecutionContext executionContext = createExecutionContext(stopThingRegistrationTaskRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new StopThingRegistrationTaskRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(stopThingRegistrationTaskRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "StopThingRegistrationTask"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new StopThingRegistrationTaskResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Adds to or modifies the tags of the given resource. Tags are metadata which can be used to manage a resource. *

*

* Requires permission to access the TagResource action. *

* * @param tagResourceRequest * @return Result of the TagResource operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws LimitExceededException * A limit has been exceeded. * @sample AWSIot.TagResource */ @Override public TagResourceResult tagResource(TagResourceRequest request) { request = beforeClientExecution(request); return executeTagResource(request); } @SdkInternalApi final TagResourceResult executeTagResource(TagResourceRequest tagResourceRequest) { ExecutionContext executionContext = createExecutionContext(tagResourceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new TagResourceRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(tagResourceRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "TagResource"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new TagResourceResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Tests if a specified principal is authorized to perform an IoT action on a specified resource. Use this to test * and debug the authorization behavior of devices that connect to the IoT device gateway. *

*

* Requires permission to access the TestAuthorization action. *

* * @param testAuthorizationRequest * @return Result of the TestAuthorization operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws LimitExceededException * A limit has been exceeded. * @sample AWSIot.TestAuthorization */ @Override public TestAuthorizationResult testAuthorization(TestAuthorizationRequest request) { request = beforeClientExecution(request); return executeTestAuthorization(request); } @SdkInternalApi final TestAuthorizationResult executeTestAuthorization(TestAuthorizationRequest testAuthorizationRequest) { ExecutionContext executionContext = createExecutionContext(testAuthorizationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new TestAuthorizationRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(testAuthorizationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "TestAuthorization"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new TestAuthorizationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Tests a custom authorization behavior by invoking a specified custom authorizer. Use this to test and debug the * custom authorization behavior of devices that connect to the IoT device gateway. *

*

* Requires permission to access the TestInvokeAuthorizer action. *

* * @param testInvokeAuthorizerRequest * @return Result of the TestInvokeAuthorizer operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidResponseException * The response is invalid. * @sample AWSIot.TestInvokeAuthorizer */ @Override public TestInvokeAuthorizerResult testInvokeAuthorizer(TestInvokeAuthorizerRequest request) { request = beforeClientExecution(request); return executeTestInvokeAuthorizer(request); } @SdkInternalApi final TestInvokeAuthorizerResult executeTestInvokeAuthorizer(TestInvokeAuthorizerRequest testInvokeAuthorizerRequest) { ExecutionContext executionContext = createExecutionContext(testInvokeAuthorizerRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new TestInvokeAuthorizerRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(testInvokeAuthorizerRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "TestInvokeAuthorizer"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new TestInvokeAuthorizerResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Transfers the specified certificate to the specified Amazon Web Services account. *

*

* Requires permission to access the TransferCertificate action. *

*

* 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 * action to deactivate it. *

*

* The certificate must not have any policies attached to it. You can use the DetachPolicy action to detach * them. *

* * @param transferCertificateRequest * The input for the TransferCertificate operation. * @return Result of the TransferCertificate operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws CertificateStateException * The certificate operation is not allowed. * @throws TransferConflictException * You can't transfer the certificate because authorization policies are still attached. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.TransferCertificate */ @Override public TransferCertificateResult transferCertificate(TransferCertificateRequest request) { request = beforeClientExecution(request); return executeTransferCertificate(request); } @SdkInternalApi final TransferCertificateResult executeTransferCertificate(TransferCertificateRequest transferCertificateRequest) { ExecutionContext executionContext = createExecutionContext(transferCertificateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new TransferCertificateRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(transferCertificateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "TransferCertificate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new TransferCertificateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Removes the given tags (metadata) from the resource. *

*

* Requires permission to access the UntagResource action. *

* * @param untagResourceRequest * @return Result of the UntagResource operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.UntagResource */ @Override public UntagResourceResult untagResource(UntagResourceRequest request) { request = beforeClientExecution(request); return executeUntagResource(request); } @SdkInternalApi final UntagResourceResult executeUntagResource(UntagResourceRequest untagResourceRequest) { ExecutionContext executionContext = createExecutionContext(untagResourceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UntagResourceRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(untagResourceRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UntagResource"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UntagResourceResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Configures or reconfigures the Device Defender audit settings for this account. Settings include how audit * notifications are sent and which audit checks are enabled or disabled. *

*

* Requires permission to access the UpdateAccountAuditConfiguration action. *

* * @param updateAccountAuditConfigurationRequest * @return Result of the UpdateAccountAuditConfiguration operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.UpdateAccountAuditConfiguration */ @Override public UpdateAccountAuditConfigurationResult updateAccountAuditConfiguration(UpdateAccountAuditConfigurationRequest request) { request = beforeClientExecution(request); return executeUpdateAccountAuditConfiguration(request); } @SdkInternalApi final UpdateAccountAuditConfigurationResult executeUpdateAccountAuditConfiguration( UpdateAccountAuditConfigurationRequest updateAccountAuditConfigurationRequest) { ExecutionContext executionContext = createExecutionContext(updateAccountAuditConfigurationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateAccountAuditConfigurationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(updateAccountAuditConfigurationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateAccountAuditConfiguration"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateAccountAuditConfigurationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates a Device Defender audit suppression. *

* * @param updateAuditSuppressionRequest * @return Result of the UpdateAuditSuppression operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.UpdateAuditSuppression */ @Override public UpdateAuditSuppressionResult updateAuditSuppression(UpdateAuditSuppressionRequest request) { request = beforeClientExecution(request); return executeUpdateAuditSuppression(request); } @SdkInternalApi final UpdateAuditSuppressionResult executeUpdateAuditSuppression(UpdateAuditSuppressionRequest updateAuditSuppressionRequest) { ExecutionContext executionContext = createExecutionContext(updateAuditSuppressionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateAuditSuppressionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateAuditSuppressionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateAuditSuppression"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateAuditSuppressionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates an authorizer. *

*

* Requires permission to access the UpdateAuthorizer action. *

* * @param updateAuthorizerRequest * @return Result of the UpdateAuthorizer operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws LimitExceededException * A limit has been exceeded. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.UpdateAuthorizer */ @Override public UpdateAuthorizerResult updateAuthorizer(UpdateAuthorizerRequest request) { request = beforeClientExecution(request); return executeUpdateAuthorizer(request); } @SdkInternalApi final UpdateAuthorizerResult executeUpdateAuthorizer(UpdateAuthorizerRequest updateAuthorizerRequest) { ExecutionContext executionContext = createExecutionContext(updateAuthorizerRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateAuthorizerRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateAuthorizerRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateAuthorizer"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateAuthorizerResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates information about the billing group. *

*

* Requires permission to access the UpdateBillingGroup action. *

* * @param updateBillingGroupRequest * @return Result of the UpdateBillingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws VersionConflictException * An exception thrown when the version of an entity specified with the expectedVersion * parameter does not match the latest version in the system. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.UpdateBillingGroup */ @Override public UpdateBillingGroupResult updateBillingGroup(UpdateBillingGroupRequest request) { request = beforeClientExecution(request); return executeUpdateBillingGroup(request); } @SdkInternalApi final UpdateBillingGroupResult executeUpdateBillingGroup(UpdateBillingGroupRequest updateBillingGroupRequest) { ExecutionContext executionContext = createExecutionContext(updateBillingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateBillingGroupRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateBillingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateBillingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateBillingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates a registered CA certificate. *

*

* Requires permission to access the UpdateCACertificate action. *

* * @param updateCACertificateRequest * The input to the UpdateCACertificate operation. * @return Result of the UpdateCACertificate operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.UpdateCACertificate */ @Override public UpdateCACertificateResult updateCACertificate(UpdateCACertificateRequest request) { request = beforeClientExecution(request); return executeUpdateCACertificate(request); } @SdkInternalApi final UpdateCACertificateResult executeUpdateCACertificate(UpdateCACertificateRequest updateCACertificateRequest) { ExecutionContext executionContext = createExecutionContext(updateCACertificateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateCACertificateRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateCACertificateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateCACertificate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateCACertificateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

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

*

* Requires permission to access the UpdateCertificate action. *

*

* Certificates must be in the ACTIVE state to authenticate devices that use a certificate to connect to IoT. *

*

* Within a few minutes of updating a certificate from the ACTIVE state to any other state, IoT disconnects all * devices that used that certificate to connect. Devices cannot use a certificate that is not in the ACTIVE state * to reconnect. *

* * @param updateCertificateRequest * The input for the UpdateCertificate operation. * @return Result of the UpdateCertificate operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws CertificateStateException * The certificate operation is not allowed. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.UpdateCertificate */ @Override public UpdateCertificateResult updateCertificate(UpdateCertificateRequest request) { request = beforeClientExecution(request); return executeUpdateCertificate(request); } @SdkInternalApi final UpdateCertificateResult executeUpdateCertificate(UpdateCertificateRequest updateCertificateRequest) { ExecutionContext executionContext = createExecutionContext(updateCertificateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateCertificateRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateCertificateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateCertificate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateCertificateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates a Device Defender detect custom metric. *

*

* Requires permission to access the UpdateCustomMetric action. *

* * @param updateCustomMetricRequest * @return Result of the UpdateCustomMetric operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.UpdateCustomMetric */ @Override public UpdateCustomMetricResult updateCustomMetric(UpdateCustomMetricRequest request) { request = beforeClientExecution(request); return executeUpdateCustomMetric(request); } @SdkInternalApi final UpdateCustomMetricResult executeUpdateCustomMetric(UpdateCustomMetricRequest updateCustomMetricRequest) { ExecutionContext executionContext = createExecutionContext(updateCustomMetricRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateCustomMetricRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateCustomMetricRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateCustomMetric"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateCustomMetricResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates the definition for a dimension. You cannot change the type of a dimension after it is created (you can * delete it and recreate it). *

*

* Requires permission to access the UpdateDimension action. *

* * @param updateDimensionRequest * @return Result of the UpdateDimension operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.UpdateDimension */ @Override public UpdateDimensionResult updateDimension(UpdateDimensionRequest request) { request = beforeClientExecution(request); return executeUpdateDimension(request); } @SdkInternalApi final UpdateDimensionResult executeUpdateDimension(UpdateDimensionRequest updateDimensionRequest) { ExecutionContext executionContext = createExecutionContext(updateDimensionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateDimensionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateDimensionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateDimension"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateDimensionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates values stored in the domain configuration. Domain configurations for default endpoints can't be updated. *

*

* Requires permission to access the UpdateDomainConfiguration action. *

* * @param updateDomainConfigurationRequest * @return Result of the UpdateDomainConfiguration operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws CertificateValidationException * The certificate is invalid. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.UpdateDomainConfiguration */ @Override public UpdateDomainConfigurationResult updateDomainConfiguration(UpdateDomainConfigurationRequest request) { request = beforeClientExecution(request); return executeUpdateDomainConfiguration(request); } @SdkInternalApi final UpdateDomainConfigurationResult executeUpdateDomainConfiguration(UpdateDomainConfigurationRequest updateDomainConfigurationRequest) { ExecutionContext executionContext = createExecutionContext(updateDomainConfigurationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateDomainConfigurationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(updateDomainConfigurationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateDomainConfiguration"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateDomainConfigurationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates a dynamic thing group. *

*

* Requires permission to access the UpdateDynamicThingGroup action. *

* * @param updateDynamicThingGroupRequest * @return Result of the UpdateDynamicThingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws VersionConflictException * An exception thrown when the version of an entity specified with the expectedVersion * parameter does not match the latest version in the system. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidQueryException * The query is invalid. * @sample AWSIot.UpdateDynamicThingGroup */ @Override public UpdateDynamicThingGroupResult updateDynamicThingGroup(UpdateDynamicThingGroupRequest request) { request = beforeClientExecution(request); return executeUpdateDynamicThingGroup(request); } @SdkInternalApi final UpdateDynamicThingGroupResult executeUpdateDynamicThingGroup(UpdateDynamicThingGroupRequest updateDynamicThingGroupRequest) { ExecutionContext executionContext = createExecutionContext(updateDynamicThingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateDynamicThingGroupRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(updateDynamicThingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateDynamicThingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateDynamicThingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates the event configurations. *

*

* Requires permission to access the UpdateEventConfigurations action. *

* * @param updateEventConfigurationsRequest * @return Result of the UpdateEventConfigurations operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws InternalFailureException * An unexpected error has occurred. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.UpdateEventConfigurations */ @Override public UpdateEventConfigurationsResult updateEventConfigurations(UpdateEventConfigurationsRequest request) { request = beforeClientExecution(request); return executeUpdateEventConfigurations(request); } @SdkInternalApi final UpdateEventConfigurationsResult executeUpdateEventConfigurations(UpdateEventConfigurationsRequest updateEventConfigurationsRequest) { ExecutionContext executionContext = createExecutionContext(updateEventConfigurationsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateEventConfigurationsRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(updateEventConfigurationsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateEventConfigurations"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateEventConfigurationsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates the data for a fleet metric. *

*

* Requires permission to access the UpdateFleetMetric action. *

* * @param updateFleetMetricRequest * @return Result of the UpdateFleetMetric operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidQueryException * The query is invalid. * @throws InvalidAggregationException * The aggregation is invalid. * @throws VersionConflictException * An exception thrown when the version of an entity specified with the expectedVersion * parameter does not match the latest version in the system. * @throws IndexNotReadyException * The index is not ready. * @sample AWSIot.UpdateFleetMetric */ @Override public UpdateFleetMetricResult updateFleetMetric(UpdateFleetMetricRequest request) { request = beforeClientExecution(request); return executeUpdateFleetMetric(request); } @SdkInternalApi final UpdateFleetMetricResult executeUpdateFleetMetric(UpdateFleetMetricRequest updateFleetMetricRequest) { ExecutionContext executionContext = createExecutionContext(updateFleetMetricRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateFleetMetricRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateFleetMetricRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateFleetMetric"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateFleetMetricResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates the search configuration. *

*

* Requires permission to access the UpdateIndexingConfiguration action. *

* * @param updateIndexingConfigurationRequest * @return Result of the UpdateIndexingConfiguration operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.UpdateIndexingConfiguration */ @Override public UpdateIndexingConfigurationResult updateIndexingConfiguration(UpdateIndexingConfigurationRequest request) { request = beforeClientExecution(request); return executeUpdateIndexingConfiguration(request); } @SdkInternalApi final UpdateIndexingConfigurationResult executeUpdateIndexingConfiguration(UpdateIndexingConfigurationRequest updateIndexingConfigurationRequest) { ExecutionContext executionContext = createExecutionContext(updateIndexingConfigurationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateIndexingConfigurationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(updateIndexingConfigurationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateIndexingConfiguration"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateIndexingConfigurationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates supported fields of the specified job. *

*

* Requires permission to access the UpdateJob action. *

* * @param updateJobRequest * @return Result of the UpdateJob operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.UpdateJob */ @Override public UpdateJobResult updateJob(UpdateJobRequest request) { request = beforeClientExecution(request); return executeUpdateJob(request); } @SdkInternalApi final UpdateJobResult executeUpdateJob(UpdateJobRequest updateJobRequest) { ExecutionContext executionContext = createExecutionContext(updateJobRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateJobRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateJobRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateJob"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler(new JsonOperationMetadata() .withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateJobResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates the definition for the specified mitigation action. *

*

* Requires permission to access the UpdateMitigationAction action. *

* * @param updateMitigationActionRequest * @return Result of the UpdateMitigationAction operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.UpdateMitigationAction */ @Override public UpdateMitigationActionResult updateMitigationAction(UpdateMitigationActionRequest request) { request = beforeClientExecution(request); return executeUpdateMitigationAction(request); } @SdkInternalApi final UpdateMitigationActionResult executeUpdateMitigationAction(UpdateMitigationActionRequest updateMitigationActionRequest) { ExecutionContext executionContext = createExecutionContext(updateMitigationActionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateMitigationActionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateMitigationActionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateMitigationAction"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateMitigationActionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates the supported fields for a specific package. *

*

* Requires permission to access the UpdatePackage and GetIndexingConfiguration actions. *

* * @param updatePackageRequest * @return Result of the UpdatePackage operation returned by the service. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalServerException * Internal error from the service that indicates an unexpected error or that the service is unavailable. * @throws ValidationException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.UpdatePackage */ @Override public UpdatePackageResult updatePackage(UpdatePackageRequest request) { request = beforeClientExecution(request); return executeUpdatePackage(request); } @SdkInternalApi final UpdatePackageResult executeUpdatePackage(UpdatePackageRequest updatePackageRequest) { ExecutionContext executionContext = createExecutionContext(updatePackageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdatePackageRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updatePackageRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdatePackage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdatePackageResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates the package configuration. *

*

* Requires permission to access the UpdatePackageConfiguration and iam:PassRole actions. *

* * @param updatePackageConfigurationRequest * @return Result of the UpdatePackageConfiguration operation returned by the service. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalServerException * Internal error from the service that indicates an unexpected error or that the service is unavailable. * @throws ValidationException * The request is not valid. * @sample AWSIot.UpdatePackageConfiguration */ @Override public UpdatePackageConfigurationResult updatePackageConfiguration(UpdatePackageConfigurationRequest request) { request = beforeClientExecution(request); return executeUpdatePackageConfiguration(request); } @SdkInternalApi final UpdatePackageConfigurationResult executeUpdatePackageConfiguration(UpdatePackageConfigurationRequest updatePackageConfigurationRequest) { ExecutionContext executionContext = createExecutionContext(updatePackageConfigurationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdatePackageConfigurationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(updatePackageConfigurationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdatePackageConfiguration"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdatePackageConfigurationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates the supported fields for a specific package version. *

*

* Requires permission to access the UpdatePackageVersion and GetIndexingConfiguration actions. *

* * @param updatePackageVersionRequest * @return Result of the UpdatePackageVersion operation returned by the service. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalServerException * Internal error from the service that indicates an unexpected error or that the service is unavailable. * @throws ValidationException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.UpdatePackageVersion */ @Override public UpdatePackageVersionResult updatePackageVersion(UpdatePackageVersionRequest request) { request = beforeClientExecution(request); return executeUpdatePackageVersion(request); } @SdkInternalApi final UpdatePackageVersionResult executeUpdatePackageVersion(UpdatePackageVersionRequest updatePackageVersionRequest) { ExecutionContext executionContext = createExecutionContext(updatePackageVersionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdatePackageVersionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updatePackageVersionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdatePackageVersion"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdatePackageVersionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates a provisioning template. *

*

* Requires permission to access the UpdateProvisioningTemplate action. *

* * @param updateProvisioningTemplateRequest * @return Result of the UpdateProvisioningTemplate operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ConflictingResourceUpdateException * A conflicting resource update exception. This exception is thrown when two pending updates cause a * conflict. * @sample AWSIot.UpdateProvisioningTemplate */ @Override public UpdateProvisioningTemplateResult updateProvisioningTemplate(UpdateProvisioningTemplateRequest request) { request = beforeClientExecution(request); return executeUpdateProvisioningTemplate(request); } @SdkInternalApi final UpdateProvisioningTemplateResult executeUpdateProvisioningTemplate(UpdateProvisioningTemplateRequest updateProvisioningTemplateRequest) { ExecutionContext executionContext = createExecutionContext(updateProvisioningTemplateRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateProvisioningTemplateRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(updateProvisioningTemplateRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateProvisioningTemplate"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateProvisioningTemplateResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates a role alias. *

*

* Requires permission to access the UpdateRoleAlias action. *

* * @param updateRoleAliasRequest * @return Result of the UpdateRoleAlias operation returned by the service. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.UpdateRoleAlias */ @Override public UpdateRoleAliasResult updateRoleAlias(UpdateRoleAliasRequest request) { request = beforeClientExecution(request); return executeUpdateRoleAlias(request); } @SdkInternalApi final UpdateRoleAliasResult executeUpdateRoleAlias(UpdateRoleAliasRequest updateRoleAliasRequest) { ExecutionContext executionContext = createExecutionContext(updateRoleAliasRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateRoleAliasRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateRoleAliasRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateRoleAlias"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateRoleAliasResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates a scheduled audit, including which checks are performed and how often the audit takes place. *

*

* Requires permission to access the UpdateScheduledAudit action. *

* * @param updateScheduledAuditRequest * @return Result of the UpdateScheduledAudit operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.UpdateScheduledAudit */ @Override public UpdateScheduledAuditResult updateScheduledAudit(UpdateScheduledAuditRequest request) { request = beforeClientExecution(request); return executeUpdateScheduledAudit(request); } @SdkInternalApi final UpdateScheduledAuditResult executeUpdateScheduledAudit(UpdateScheduledAuditRequest updateScheduledAuditRequest) { ExecutionContext executionContext = createExecutionContext(updateScheduledAuditRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateScheduledAuditRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateScheduledAuditRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateScheduledAudit"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateScheduledAuditResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates a Device Defender security profile. *

*

* Requires permission to access the UpdateSecurityProfile action. *

* * @param updateSecurityProfileRequest * @return Result of the UpdateSecurityProfile operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws VersionConflictException * An exception thrown when the version of an entity specified with the expectedVersion * parameter does not match the latest version in the system. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.UpdateSecurityProfile */ @Override public UpdateSecurityProfileResult updateSecurityProfile(UpdateSecurityProfileRequest request) { request = beforeClientExecution(request); return executeUpdateSecurityProfile(request); } @SdkInternalApi final UpdateSecurityProfileResult executeUpdateSecurityProfile(UpdateSecurityProfileRequest updateSecurityProfileRequest) { ExecutionContext executionContext = createExecutionContext(updateSecurityProfileRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateSecurityProfileRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateSecurityProfileRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateSecurityProfile"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateSecurityProfileResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates an existing stream. The stream version will be incremented by one. *

*

* Requires permission to access the UpdateStream action. *

* * @param updateStreamRequest * @return Result of the UpdateStream operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ResourceNotFoundException * The specified resource does not exist. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.UpdateStream */ @Override public UpdateStreamResult updateStream(UpdateStreamRequest request) { request = beforeClientExecution(request); return executeUpdateStream(request); } @SdkInternalApi final UpdateStreamResult executeUpdateStream(UpdateStreamRequest updateStreamRequest) { ExecutionContext executionContext = createExecutionContext(updateStreamRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateStreamRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateStreamRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateStream"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateStreamResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates the data for a thing. *

*

* Requires permission to access the UpdateThing action. *

* * @param updateThingRequest * The input for the UpdateThing operation. * @return Result of the UpdateThing operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws VersionConflictException * An exception thrown when the version of an entity specified with the expectedVersion * parameter does not match the latest version in the system. * @throws ThrottlingException * The rate exceeds the limit. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.UpdateThing */ @Override public UpdateThingResult updateThing(UpdateThingRequest request) { request = beforeClientExecution(request); return executeUpdateThing(request); } @SdkInternalApi final UpdateThingResult executeUpdateThing(UpdateThingRequest updateThingRequest) { ExecutionContext executionContext = createExecutionContext(updateThingRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateThingRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateThingRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateThing"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateThingResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Update a thing group. *

*

* Requires permission to access the UpdateThingGroup action. *

* * @param updateThingGroupRequest * @return Result of the UpdateThingGroup operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws VersionConflictException * An exception thrown when the version of an entity specified with the expectedVersion * parameter does not match the latest version in the system. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.UpdateThingGroup */ @Override public UpdateThingGroupResult updateThingGroup(UpdateThingGroupRequest request) { request = beforeClientExecution(request); return executeUpdateThingGroup(request); } @SdkInternalApi final UpdateThingGroupResult executeUpdateThingGroup(UpdateThingGroupRequest updateThingGroupRequest) { ExecutionContext executionContext = createExecutionContext(updateThingGroupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateThingGroupRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateThingGroupRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateThingGroup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateThingGroupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates the groups to which the thing belongs. *

*

* Requires permission to access the UpdateThingGroupsForThing action. *

* * @param updateThingGroupsForThingRequest * @return Result of the UpdateThingGroupsForThing operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @throws ResourceNotFoundException * The specified resource does not exist. * @sample AWSIot.UpdateThingGroupsForThing */ @Override public UpdateThingGroupsForThingResult updateThingGroupsForThing(UpdateThingGroupsForThingRequest request) { request = beforeClientExecution(request); return executeUpdateThingGroupsForThing(request); } @SdkInternalApi final UpdateThingGroupsForThingResult executeUpdateThingGroupsForThing(UpdateThingGroupsForThingRequest updateThingGroupsForThingRequest) { ExecutionContext executionContext = createExecutionContext(updateThingGroupsForThingRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateThingGroupsForThingRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(updateThingGroupsForThingRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateThingGroupsForThing"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateThingGroupsForThingResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates a topic rule destination. You use this to change the status, endpoint URL, or confirmation URL of the * destination. *

*

* Requires permission to access the UpdateTopicRuleDestination action. *

* * @param updateTopicRuleDestinationRequest * @return Result of the UpdateTopicRuleDestination operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ConflictingResourceUpdateException * A conflicting resource update exception. This exception is thrown when two pending updates cause a * conflict. * @sample AWSIot.UpdateTopicRuleDestination */ @Override public UpdateTopicRuleDestinationResult updateTopicRuleDestination(UpdateTopicRuleDestinationRequest request) { request = beforeClientExecution(request); return executeUpdateTopicRuleDestination(request); } @SdkInternalApi final UpdateTopicRuleDestinationResult executeUpdateTopicRuleDestination(UpdateTopicRuleDestinationRequest updateTopicRuleDestinationRequest) { ExecutionContext executionContext = createExecutionContext(updateTopicRuleDestinationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateTopicRuleDestinationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(updateTopicRuleDestinationRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateTopicRuleDestination"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateTopicRuleDestinationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Validates a Device Defender security profile behaviors specification. *

*

* Requires permission to access the ValidateSecurityProfileBehaviors action. *

* * @param validateSecurityProfileBehaviorsRequest * @return Result of the ValidateSecurityProfileBehaviors operation returned by the service. * @throws InvalidRequestException * The request is not valid. * @throws ThrottlingException * The rate exceeds the limit. * @throws InternalFailureException * An unexpected error has occurred. * @sample AWSIot.ValidateSecurityProfileBehaviors */ @Override public ValidateSecurityProfileBehaviorsResult validateSecurityProfileBehaviors(ValidateSecurityProfileBehaviorsRequest request) { request = beforeClientExecution(request); return executeValidateSecurityProfileBehaviors(request); } @SdkInternalApi final ValidateSecurityProfileBehaviorsResult executeValidateSecurityProfileBehaviors( ValidateSecurityProfileBehaviorsRequest validateSecurityProfileBehaviorsRequest) { ExecutionContext executionContext = createExecutionContext(validateSecurityProfileBehaviorsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ValidateSecurityProfileBehaviorsRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(validateSecurityProfileBehaviorsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "IoT"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ValidateSecurityProfileBehaviors"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ValidateSecurityProfileBehaviorsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** * 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 the request. * * @param request * The originally executed request * * @return The response metadata for the specified request, or null if none is available. */ public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request) { return client.getResponseMetadataForRequest(request); } /** * Normal invoke with authentication. Credentials are required and may be overriden at the request level. **/ private Response invoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext) { return invoke(request, responseHandler, executionContext, null, null); } /** * Normal invoke with authentication. Credentials are required and may be overriden at the request level. **/ private Response invoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext, URI cachedEndpoint, URI uriFromEndpointTrait) { executionContext.setCredentialsProvider(CredentialUtils.getCredentialsProvider(request.getOriginalRequest(), awsCredentialsProvider)); return doInvoke(request, responseHandler, executionContext, cachedEndpoint, uriFromEndpointTrait); } /** * Invoke with no authentication. Credentials are not required and any credentials set on the client or request will * be ignored for this operation. **/ private Response anonymousInvoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext) { return doInvoke(request, responseHandler, executionContext, null, null); } /** * Invoke the request using the http client. Assumes credentials (or lack thereof) have been configured in the * ExecutionContext beforehand. **/ private Response doInvoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext, URI discoveredEndpoint, URI uriFromEndpointTrait) { if (discoveredEndpoint != null) { request.setEndpoint(discoveredEndpoint); request.getOriginalRequest().getRequestClientOptions().appendUserAgent("endpoint-discovery"); } else if (uriFromEndpointTrait != null) { request.setEndpoint(uriFromEndpointTrait); } else { request.setEndpoint(endpoint); } request.setTimeOffset(timeOffset); HttpResponseHandler errorResponseHandler = protocolFactory.createErrorResponseHandler(new JsonErrorResponseMetadata()); return client.execute(request, responseHandler, errorResponseHandler, executionContext); } @com.amazonaws.annotation.SdkInternalApi static com.amazonaws.protocol.json.SdkJsonProtocolFactory getProtocolFactory() { return protocolFactory; } @Override public void shutdown() { super.shutdown(); } }