software.amazon.awssdk.services.databasemigration.DefaultDatabaseMigrationClient Maven / Gradle / Ivy
Show all versions of dms Show documentation
/*
* Copyright 2013-2018 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 software.amazon.awssdk.services.databasemigration;
import java.util.function.Consumer;
import software.amazon.awssdk.annotations.Generated;
import software.amazon.awssdk.annotations.SdkInternalApi;
import software.amazon.awssdk.awscore.AwsRequestOverrideConfiguration;
import software.amazon.awssdk.awscore.client.handler.AwsSyncClientHandler;
import software.amazon.awssdk.awscore.exception.AwsServiceException;
import software.amazon.awssdk.awscore.internal.protocol.json.AwsJsonProtocol;
import software.amazon.awssdk.awscore.protocol.json.AwsJsonProtocolFactory;
import software.amazon.awssdk.awscore.protocol.json.AwsJsonProtocolMetadata;
import software.amazon.awssdk.core.ApiName;
import software.amazon.awssdk.core.client.handler.ClientExecutionParams;
import software.amazon.awssdk.core.client.handler.SyncClientHandler;
import software.amazon.awssdk.core.exception.SdkClientException;
import software.amazon.awssdk.core.http.HttpResponseHandler;
import software.amazon.awssdk.core.internal.client.config.SdkClientConfiguration;
import software.amazon.awssdk.core.protocol.json.JsonClientMetadata;
import software.amazon.awssdk.core.protocol.json.JsonErrorResponseMetadata;
import software.amazon.awssdk.core.protocol.json.JsonErrorShapeMetadata;
import software.amazon.awssdk.core.protocol.json.JsonOperationMetadata;
import software.amazon.awssdk.core.util.VersionInfo;
import software.amazon.awssdk.services.databasemigration.model.AccessDeniedException;
import software.amazon.awssdk.services.databasemigration.model.AddTagsToResourceRequest;
import software.amazon.awssdk.services.databasemigration.model.AddTagsToResourceResponse;
import software.amazon.awssdk.services.databasemigration.model.CreateEndpointRequest;
import software.amazon.awssdk.services.databasemigration.model.CreateEndpointResponse;
import software.amazon.awssdk.services.databasemigration.model.CreateEventSubscriptionRequest;
import software.amazon.awssdk.services.databasemigration.model.CreateEventSubscriptionResponse;
import software.amazon.awssdk.services.databasemigration.model.CreateReplicationInstanceRequest;
import software.amazon.awssdk.services.databasemigration.model.CreateReplicationInstanceResponse;
import software.amazon.awssdk.services.databasemigration.model.CreateReplicationSubnetGroupRequest;
import software.amazon.awssdk.services.databasemigration.model.CreateReplicationSubnetGroupResponse;
import software.amazon.awssdk.services.databasemigration.model.CreateReplicationTaskRequest;
import software.amazon.awssdk.services.databasemigration.model.CreateReplicationTaskResponse;
import software.amazon.awssdk.services.databasemigration.model.DatabaseMigrationException;
import software.amazon.awssdk.services.databasemigration.model.DatabaseMigrationRequest;
import software.amazon.awssdk.services.databasemigration.model.DeleteCertificateRequest;
import software.amazon.awssdk.services.databasemigration.model.DeleteCertificateResponse;
import software.amazon.awssdk.services.databasemigration.model.DeleteEndpointRequest;
import software.amazon.awssdk.services.databasemigration.model.DeleteEndpointResponse;
import software.amazon.awssdk.services.databasemigration.model.DeleteEventSubscriptionRequest;
import software.amazon.awssdk.services.databasemigration.model.DeleteEventSubscriptionResponse;
import software.amazon.awssdk.services.databasemigration.model.DeleteReplicationInstanceRequest;
import software.amazon.awssdk.services.databasemigration.model.DeleteReplicationInstanceResponse;
import software.amazon.awssdk.services.databasemigration.model.DeleteReplicationSubnetGroupRequest;
import software.amazon.awssdk.services.databasemigration.model.DeleteReplicationSubnetGroupResponse;
import software.amazon.awssdk.services.databasemigration.model.DeleteReplicationTaskRequest;
import software.amazon.awssdk.services.databasemigration.model.DeleteReplicationTaskResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeAccountAttributesRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeAccountAttributesResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeCertificatesRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeCertificatesResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeConnectionsRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeConnectionsResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeEndpointTypesRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeEndpointTypesResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeEndpointsRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeEndpointsResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeEventCategoriesRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeEventCategoriesResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeEventSubscriptionsRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeEventSubscriptionsResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeEventsRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeEventsResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeOrderableReplicationInstancesRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeOrderableReplicationInstancesResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeRefreshSchemasStatusRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeRefreshSchemasStatusResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeReplicationInstancesRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeReplicationInstancesResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeReplicationSubnetGroupsRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeReplicationSubnetGroupsResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeReplicationTaskAssessmentResultsRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeReplicationTaskAssessmentResultsResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeReplicationTasksRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeReplicationTasksResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeSchemasRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeSchemasResponse;
import software.amazon.awssdk.services.databasemigration.model.DescribeTableStatisticsRequest;
import software.amazon.awssdk.services.databasemigration.model.DescribeTableStatisticsResponse;
import software.amazon.awssdk.services.databasemigration.model.ImportCertificateRequest;
import software.amazon.awssdk.services.databasemigration.model.ImportCertificateResponse;
import software.amazon.awssdk.services.databasemigration.model.InsufficientResourceCapacityException;
import software.amazon.awssdk.services.databasemigration.model.InvalidCertificateException;
import software.amazon.awssdk.services.databasemigration.model.InvalidResourceStateException;
import software.amazon.awssdk.services.databasemigration.model.InvalidSubnetException;
import software.amazon.awssdk.services.databasemigration.model.KmsKeyNotAccessibleException;
import software.amazon.awssdk.services.databasemigration.model.ListTagsForResourceRequest;
import software.amazon.awssdk.services.databasemigration.model.ListTagsForResourceResponse;
import software.amazon.awssdk.services.databasemigration.model.ModifyEndpointRequest;
import software.amazon.awssdk.services.databasemigration.model.ModifyEndpointResponse;
import software.amazon.awssdk.services.databasemigration.model.ModifyEventSubscriptionRequest;
import software.amazon.awssdk.services.databasemigration.model.ModifyEventSubscriptionResponse;
import software.amazon.awssdk.services.databasemigration.model.ModifyReplicationInstanceRequest;
import software.amazon.awssdk.services.databasemigration.model.ModifyReplicationInstanceResponse;
import software.amazon.awssdk.services.databasemigration.model.ModifyReplicationSubnetGroupRequest;
import software.amazon.awssdk.services.databasemigration.model.ModifyReplicationSubnetGroupResponse;
import software.amazon.awssdk.services.databasemigration.model.ModifyReplicationTaskRequest;
import software.amazon.awssdk.services.databasemigration.model.ModifyReplicationTaskResponse;
import software.amazon.awssdk.services.databasemigration.model.RefreshSchemasRequest;
import software.amazon.awssdk.services.databasemigration.model.RefreshSchemasResponse;
import software.amazon.awssdk.services.databasemigration.model.ReloadTablesRequest;
import software.amazon.awssdk.services.databasemigration.model.ReloadTablesResponse;
import software.amazon.awssdk.services.databasemigration.model.RemoveTagsFromResourceRequest;
import software.amazon.awssdk.services.databasemigration.model.RemoveTagsFromResourceResponse;
import software.amazon.awssdk.services.databasemigration.model.ReplicationSubnetGroupDoesNotCoverEnoughAZsException;
import software.amazon.awssdk.services.databasemigration.model.ResourceAlreadyExistsException;
import software.amazon.awssdk.services.databasemigration.model.ResourceNotFoundException;
import software.amazon.awssdk.services.databasemigration.model.ResourceQuotaExceededException;
import software.amazon.awssdk.services.databasemigration.model.SnsInvalidTopicException;
import software.amazon.awssdk.services.databasemigration.model.SnsNoAuthorizationException;
import software.amazon.awssdk.services.databasemigration.model.StartReplicationTaskAssessmentRequest;
import software.amazon.awssdk.services.databasemigration.model.StartReplicationTaskAssessmentResponse;
import software.amazon.awssdk.services.databasemigration.model.StartReplicationTaskRequest;
import software.amazon.awssdk.services.databasemigration.model.StartReplicationTaskResponse;
import software.amazon.awssdk.services.databasemigration.model.StopReplicationTaskRequest;
import software.amazon.awssdk.services.databasemigration.model.StopReplicationTaskResponse;
import software.amazon.awssdk.services.databasemigration.model.StorageQuotaExceededException;
import software.amazon.awssdk.services.databasemigration.model.SubnetAlreadyInUseException;
import software.amazon.awssdk.services.databasemigration.model.TestConnectionRequest;
import software.amazon.awssdk.services.databasemigration.model.TestConnectionResponse;
import software.amazon.awssdk.services.databasemigration.model.UpgradeDependencyFailureException;
import software.amazon.awssdk.services.databasemigration.paginators.DescribeCertificatesIterable;
import software.amazon.awssdk.services.databasemigration.paginators.DescribeConnectionsIterable;
import software.amazon.awssdk.services.databasemigration.paginators.DescribeEndpointTypesIterable;
import software.amazon.awssdk.services.databasemigration.paginators.DescribeEndpointsIterable;
import software.amazon.awssdk.services.databasemigration.paginators.DescribeEventSubscriptionsIterable;
import software.amazon.awssdk.services.databasemigration.paginators.DescribeEventsIterable;
import software.amazon.awssdk.services.databasemigration.paginators.DescribeOrderableReplicationInstancesIterable;
import software.amazon.awssdk.services.databasemigration.paginators.DescribeReplicationInstancesIterable;
import software.amazon.awssdk.services.databasemigration.paginators.DescribeReplicationSubnetGroupsIterable;
import software.amazon.awssdk.services.databasemigration.paginators.DescribeReplicationTasksIterable;
import software.amazon.awssdk.services.databasemigration.paginators.DescribeSchemasIterable;
import software.amazon.awssdk.services.databasemigration.paginators.DescribeTableStatisticsIterable;
import software.amazon.awssdk.services.databasemigration.transform.AddTagsToResourceRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.AddTagsToResourceResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.CreateEndpointRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.CreateEndpointResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.CreateEventSubscriptionRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.CreateEventSubscriptionResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.CreateReplicationInstanceRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.CreateReplicationInstanceResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.CreateReplicationSubnetGroupRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.CreateReplicationSubnetGroupResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.CreateReplicationTaskRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.CreateReplicationTaskResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DeleteCertificateRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DeleteCertificateResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DeleteEndpointRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DeleteEndpointResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DeleteEventSubscriptionRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DeleteEventSubscriptionResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DeleteReplicationInstanceRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DeleteReplicationInstanceResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DeleteReplicationSubnetGroupRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DeleteReplicationSubnetGroupResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DeleteReplicationTaskRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DeleteReplicationTaskResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeAccountAttributesRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeAccountAttributesResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeCertificatesRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeCertificatesResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeConnectionsRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeConnectionsResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeEndpointTypesRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeEndpointTypesResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeEndpointsRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeEndpointsResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeEventCategoriesRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeEventCategoriesResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeEventSubscriptionsRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeEventSubscriptionsResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeEventsRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeEventsResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeOrderableReplicationInstancesRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeOrderableReplicationInstancesResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeRefreshSchemasStatusRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeRefreshSchemasStatusResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeReplicationInstancesRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeReplicationInstancesResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeReplicationSubnetGroupsRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeReplicationSubnetGroupsResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeReplicationTaskAssessmentResultsRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeReplicationTaskAssessmentResultsResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeReplicationTasksRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeReplicationTasksResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeSchemasRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeSchemasResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeTableStatisticsRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.DescribeTableStatisticsResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ImportCertificateRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ImportCertificateResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ListTagsForResourceRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ListTagsForResourceResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ModifyEndpointRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ModifyEndpointResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ModifyEventSubscriptionRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ModifyEventSubscriptionResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ModifyReplicationInstanceRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ModifyReplicationInstanceResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ModifyReplicationSubnetGroupRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ModifyReplicationSubnetGroupResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ModifyReplicationTaskRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ModifyReplicationTaskResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.RefreshSchemasRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.RefreshSchemasResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ReloadTablesRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.ReloadTablesResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.RemoveTagsFromResourceRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.RemoveTagsFromResourceResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.StartReplicationTaskAssessmentRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.StartReplicationTaskAssessmentResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.StartReplicationTaskRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.StartReplicationTaskResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.StopReplicationTaskRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.StopReplicationTaskResponseUnmarshaller;
import software.amazon.awssdk.services.databasemigration.transform.TestConnectionRequestMarshaller;
import software.amazon.awssdk.services.databasemigration.transform.TestConnectionResponseUnmarshaller;
/**
* Internal implementation of {@link DatabaseMigrationClient}.
*
* @see DatabaseMigrationClient#builder()
*/
@Generated("software.amazon.awssdk:codegen")
@SdkInternalApi
final class DefaultDatabaseMigrationClient implements DatabaseMigrationClient {
private final SyncClientHandler clientHandler;
private final AwsJsonProtocolFactory protocolFactory;
private final SdkClientConfiguration clientConfiguration;
protected DefaultDatabaseMigrationClient(SdkClientConfiguration clientConfiguration) {
this.clientHandler = new AwsSyncClientHandler(clientConfiguration);
this.protocolFactory = init();
this.clientConfiguration = clientConfiguration;
}
@Override
public final String serviceName() {
return SERVICE_NAME;
}
/**
*
* Adds metadata tags to a DMS resource, including replication instance, endpoint, security group, and migration
* task. These tags can also be used with cost allocation reporting to track cost associated with DMS resources, or
* used in a Condition statement in an IAM policy for DMS.
*
*
* @param addTagsToResourceRequest
* @return Result of the AddTagsToResource operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.AddTagsToResource
* @see AWS API
* Documentation
*/
@Override
public AddTagsToResourceResponse addTagsToResource(AddTagsToResourceRequest addTagsToResourceRequest)
throws ResourceNotFoundException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new AddTagsToResourceResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(addTagsToResourceRequest).withMarshaller(new AddTagsToResourceRequestMarshaller(protocolFactory)));
}
/**
*
* Creates an endpoint using the provided settings.
*
*
* @param createEndpointRequest
* @return Result of the CreateEndpoint operation returned by the service.
* @throws KmsKeyNotAccessibleException
* AWS DMS cannot access the KMS key.
* @throws ResourceAlreadyExistsException
* The resource you are attempting to create already exists.
* @throws ResourceQuotaExceededException
* The quota for this resource quota has been exceeded.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws AccessDeniedException
* AWS DMS was denied access to the endpoint.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.CreateEndpoint
* @see AWS API
* Documentation
*/
@Override
public CreateEndpointResponse createEndpoint(CreateEndpointRequest createEndpointRequest)
throws KmsKeyNotAccessibleException, ResourceAlreadyExistsException, ResourceQuotaExceededException,
InvalidResourceStateException, ResourceNotFoundException, AccessDeniedException, AwsServiceException,
SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new CreateEndpointResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(createEndpointRequest).withMarshaller(new CreateEndpointRequestMarshaller(protocolFactory)));
}
/**
*
* Creates an AWS DMS event notification subscription.
*
*
* You can specify the type of source (SourceType
) you want to be notified of, provide a list of AWS
* DMS source IDs (SourceIds
) that triggers the events, and provide a list of event categories (
* EventCategories
) for events you want to be notified of. If you specify both the
* SourceType
and SourceIds
, such as SourceType = replication-instance
and
* SourceIdentifier = my-replinstance
, you will be notified of all the replication instance events for
* the specified source. If you specify a SourceType
but don't specify a SourceIdentifier
,
* you receive notice of the events for that source type for all your AWS DMS sources. If you don't specify either
* SourceType
nor SourceIdentifier
, you will be notified of events generated from all AWS
* DMS sources belonging to your customer account.
*
*
* For more information about AWS DMS events, see Working with Events and Notifications
* in the AWS Database MIgration Service User Guide.
*
*
* @param createEventSubscriptionRequest
* @return Result of the CreateEventSubscription operation returned by the service.
* @throws ResourceQuotaExceededException
* The quota for this resource quota has been exceeded.
* @throws ResourceAlreadyExistsException
* The resource you are attempting to create already exists.
* @throws SnsInvalidTopicException
* The SNS topic is invalid.
* @throws SnsNoAuthorizationException
* You are not authorized for the SNS subscription.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.CreateEventSubscription
* @see AWS
* API Documentation
*/
@Override
public CreateEventSubscriptionResponse createEventSubscription(CreateEventSubscriptionRequest createEventSubscriptionRequest)
throws ResourceQuotaExceededException, ResourceAlreadyExistsException, SnsInvalidTopicException,
SnsNoAuthorizationException, ResourceNotFoundException, AwsServiceException, SdkClientException,
DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new CreateEventSubscriptionResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(createEventSubscriptionRequest)
.withMarshaller(new CreateEventSubscriptionRequestMarshaller(protocolFactory)));
}
/**
*
* Creates the replication instance using the specified parameters.
*
*
* @param createReplicationInstanceRequest
* @return Result of the CreateReplicationInstance operation returned by the service.
* @throws AccessDeniedException
* AWS DMS was denied access to the endpoint.
* @throws ResourceAlreadyExistsException
* The resource you are attempting to create already exists.
* @throws InsufficientResourceCapacityException
* There are not enough resources allocated to the database migration.
* @throws ResourceQuotaExceededException
* The quota for this resource quota has been exceeded.
* @throws StorageQuotaExceededException
* The storage quota has been exceeded.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws ReplicationSubnetGroupDoesNotCoverEnoughAZsException
* The replication subnet group does not cover enough Availability Zones (AZs). Edit the replication subnet
* group and add more AZs.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws InvalidSubnetException
* The subnet provided is invalid.
* @throws KmsKeyNotAccessibleException
* AWS DMS cannot access the KMS key.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.CreateReplicationInstance
* @see AWS
* API Documentation
*/
@Override
public CreateReplicationInstanceResponse createReplicationInstance(
CreateReplicationInstanceRequest createReplicationInstanceRequest) throws AccessDeniedException,
ResourceAlreadyExistsException, InsufficientResourceCapacityException, ResourceQuotaExceededException,
StorageQuotaExceededException, ResourceNotFoundException, ReplicationSubnetGroupDoesNotCoverEnoughAZsException,
InvalidResourceStateException, InvalidSubnetException, KmsKeyNotAccessibleException, AwsServiceException,
SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new CreateReplicationInstanceResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler
.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(createReplicationInstanceRequest)
.withMarshaller(new CreateReplicationInstanceRequestMarshaller(protocolFactory)));
}
/**
*
* Creates a replication subnet group given a list of the subnet IDs in a VPC.
*
*
* @param createReplicationSubnetGroupRequest
* @return Result of the CreateReplicationSubnetGroup operation returned by the service.
* @throws AccessDeniedException
* AWS DMS was denied access to the endpoint.
* @throws ResourceAlreadyExistsException
* The resource you are attempting to create already exists.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws ResourceQuotaExceededException
* The quota for this resource quota has been exceeded.
* @throws ReplicationSubnetGroupDoesNotCoverEnoughAZsException
* The replication subnet group does not cover enough Availability Zones (AZs). Edit the replication subnet
* group and add more AZs.
* @throws InvalidSubnetException
* The subnet provided is invalid.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.CreateReplicationSubnetGroup
* @see AWS API Documentation
*/
@Override
public CreateReplicationSubnetGroupResponse createReplicationSubnetGroup(
CreateReplicationSubnetGroupRequest createReplicationSubnetGroupRequest) throws AccessDeniedException,
ResourceAlreadyExistsException, ResourceNotFoundException, ResourceQuotaExceededException,
ReplicationSubnetGroupDoesNotCoverEnoughAZsException, InvalidSubnetException, AwsServiceException,
SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new CreateReplicationSubnetGroupResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler
.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(createReplicationSubnetGroupRequest)
.withMarshaller(new CreateReplicationSubnetGroupRequestMarshaller(protocolFactory)));
}
/**
*
* Creates a replication task using the specified parameters.
*
*
* @param createReplicationTaskRequest
* @return Result of the CreateReplicationTask operation returned by the service.
* @throws AccessDeniedException
* AWS DMS was denied access to the endpoint.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws ResourceAlreadyExistsException
* The resource you are attempting to create already exists.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws KmsKeyNotAccessibleException
* AWS DMS cannot access the KMS key.
* @throws ResourceQuotaExceededException
* The quota for this resource quota has been exceeded.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.CreateReplicationTask
* @see AWS API
* Documentation
*/
@Override
public CreateReplicationTaskResponse createReplicationTask(CreateReplicationTaskRequest createReplicationTaskRequest)
throws AccessDeniedException, InvalidResourceStateException, ResourceAlreadyExistsException,
ResourceNotFoundException, KmsKeyNotAccessibleException, ResourceQuotaExceededException, AwsServiceException,
SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new CreateReplicationTaskResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(createReplicationTaskRequest)
.withMarshaller(new CreateReplicationTaskRequestMarshaller(protocolFactory)));
}
/**
*
* Deletes the specified certificate.
*
*
* @param deleteCertificateRequest
* @return Result of the DeleteCertificate operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DeleteCertificate
* @see AWS API
* Documentation
*/
@Override
public DeleteCertificateResponse deleteCertificate(DeleteCertificateRequest deleteCertificateRequest)
throws ResourceNotFoundException, InvalidResourceStateException, AwsServiceException, SdkClientException,
DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DeleteCertificateResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(deleteCertificateRequest).withMarshaller(new DeleteCertificateRequestMarshaller(protocolFactory)));
}
/**
*
* Deletes the specified endpoint.
*
*
*
* All tasks associated with the endpoint must be deleted before you can delete the endpoint.
*
*
*
*
* @param deleteEndpointRequest
* @return Result of the DeleteEndpoint operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DeleteEndpoint
* @see AWS API
* Documentation
*/
@Override
public DeleteEndpointResponse deleteEndpoint(DeleteEndpointRequest deleteEndpointRequest) throws ResourceNotFoundException,
InvalidResourceStateException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DeleteEndpointResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(deleteEndpointRequest).withMarshaller(new DeleteEndpointRequestMarshaller(protocolFactory)));
}
/**
*
* Deletes an AWS DMS event subscription.
*
*
* @param deleteEventSubscriptionRequest
* @return Result of the DeleteEventSubscription operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DeleteEventSubscription
* @see AWS
* API Documentation
*/
@Override
public DeleteEventSubscriptionResponse deleteEventSubscription(DeleteEventSubscriptionRequest deleteEventSubscriptionRequest)
throws ResourceNotFoundException, InvalidResourceStateException, AwsServiceException, SdkClientException,
DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DeleteEventSubscriptionResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(deleteEventSubscriptionRequest)
.withMarshaller(new DeleteEventSubscriptionRequestMarshaller(protocolFactory)));
}
/**
*
* Deletes the specified replication instance.
*
*
*
* You must delete any migration tasks that are associated with the replication instance before you can delete it.
*
*
*
*
* @param deleteReplicationInstanceRequest
* @return Result of the DeleteReplicationInstance operation returned by the service.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DeleteReplicationInstance
* @see AWS
* API Documentation
*/
@Override
public DeleteReplicationInstanceResponse deleteReplicationInstance(
DeleteReplicationInstanceRequest deleteReplicationInstanceRequest) throws InvalidResourceStateException,
ResourceNotFoundException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DeleteReplicationInstanceResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler
.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(deleteReplicationInstanceRequest)
.withMarshaller(new DeleteReplicationInstanceRequestMarshaller(protocolFactory)));
}
/**
*
* Deletes a subnet group.
*
*
* @param deleteReplicationSubnetGroupRequest
* @return Result of the DeleteReplicationSubnetGroup operation returned by the service.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DeleteReplicationSubnetGroup
* @see AWS API Documentation
*/
@Override
public DeleteReplicationSubnetGroupResponse deleteReplicationSubnetGroup(
DeleteReplicationSubnetGroupRequest deleteReplicationSubnetGroupRequest) throws InvalidResourceStateException,
ResourceNotFoundException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DeleteReplicationSubnetGroupResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler
.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(deleteReplicationSubnetGroupRequest)
.withMarshaller(new DeleteReplicationSubnetGroupRequestMarshaller(protocolFactory)));
}
/**
*
* Deletes the specified replication task.
*
*
* @param deleteReplicationTaskRequest
* @return Result of the DeleteReplicationTask operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DeleteReplicationTask
* @see AWS API
* Documentation
*/
@Override
public DeleteReplicationTaskResponse deleteReplicationTask(DeleteReplicationTaskRequest deleteReplicationTaskRequest)
throws ResourceNotFoundException, InvalidResourceStateException, AwsServiceException, SdkClientException,
DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DeleteReplicationTaskResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(deleteReplicationTaskRequest)
.withMarshaller(new DeleteReplicationTaskRequestMarshaller(protocolFactory)));
}
/**
*
* Lists all of the AWS DMS attributes for a customer account. The attributes include AWS DMS quotas for the
* account, such as the number of replication instances allowed. The description for a quota includes the quota
* name, current usage toward that quota, and the quota's maximum value.
*
*
* This command does not take any parameters.
*
*
* @param describeAccountAttributesRequest
* @return Result of the DescribeAccountAttributes operation returned by the service.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeAccountAttributes
* @see AWS
* API Documentation
*/
@Override
public DescribeAccountAttributesResponse describeAccountAttributes(
DescribeAccountAttributesRequest describeAccountAttributesRequest) throws AwsServiceException, SdkClientException,
DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeAccountAttributesResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler
.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeAccountAttributesRequest)
.withMarshaller(new DescribeAccountAttributesRequestMarshaller(protocolFactory)));
}
/**
*
* Provides a description of the certificate.
*
*
* @param describeCertificatesRequest
* @return Result of the DescribeCertificates operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeCertificates
* @see AWS API
* Documentation
*/
@Override
public DescribeCertificatesResponse describeCertificates(DescribeCertificatesRequest describeCertificatesRequest)
throws ResourceNotFoundException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeCertificatesResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeCertificatesRequest)
.withMarshaller(new DescribeCertificatesRequestMarshaller(protocolFactory)));
}
/**
*
* Provides a description of the certificate.
*
*
*
* This is a variant of
* {@link #describeCertificates(software.amazon.awssdk.services.databasemigration.model.DescribeCertificatesRequest)}
* operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will
* internally handle making service calls for you.
*
*
* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no
* guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response
* pages by making service calls until there are no pages left or your iteration stops. If there are errors in your
* request, you will see the failures only after you start iterating through the iterable.
*
*
*
* The following are few ways to iterate through the response pages:
*
* 1) Using a Stream
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeCertificatesIterable responses = client.describeCertificatesPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeCertificatesIterable responses = client
* .describeCertificatesPaginator(request);
* for (software.amazon.awssdk.services.databasemigration.model.DescribeCertificatesResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeCertificatesIterable responses = client.describeCertificatesPaginator(request);
* responses.iterator().forEachRemaining(....);
* }
*
*
* Note: If you prefer to have control on service calls, use the
* {@link #describeCertificates(software.amazon.awssdk.services.databasemigration.model.DescribeCertificatesRequest)}
* operation.
*
*
* @param describeCertificatesRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeCertificates
* @see AWS API
* Documentation
*/
@Override
public DescribeCertificatesIterable describeCertificatesPaginator(DescribeCertificatesRequest describeCertificatesRequest)
throws ResourceNotFoundException, AwsServiceException, SdkClientException, DatabaseMigrationException {
return new DescribeCertificatesIterable(this, applyPaginatorUserAgent(describeCertificatesRequest));
}
/**
*
* Describes the status of the connections that have been made between the replication instance and an endpoint.
* Connections are created when you test an endpoint.
*
*
* @param describeConnectionsRequest
* @return Result of the DescribeConnections operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeConnections
* @see AWS API
* Documentation
*/
@Override
public DescribeConnectionsResponse describeConnections(DescribeConnectionsRequest describeConnectionsRequest)
throws ResourceNotFoundException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeConnectionsResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeConnectionsRequest).withMarshaller(new DescribeConnectionsRequestMarshaller(protocolFactory)));
}
/**
*
* Describes the status of the connections that have been made between the replication instance and an endpoint.
* Connections are created when you test an endpoint.
*
*
*
* This is a variant of
* {@link #describeConnections(software.amazon.awssdk.services.databasemigration.model.DescribeConnectionsRequest)}
* operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will
* internally handle making service calls for you.
*
*
* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no
* guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response
* pages by making service calls until there are no pages left or your iteration stops. If there are errors in your
* request, you will see the failures only after you start iterating through the iterable.
*
*
*
* The following are few ways to iterate through the response pages:
*
* 1) Using a Stream
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeConnectionsIterable responses = client.describeConnectionsPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeConnectionsIterable responses = client
* .describeConnectionsPaginator(request);
* for (software.amazon.awssdk.services.databasemigration.model.DescribeConnectionsResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeConnectionsIterable responses = client.describeConnectionsPaginator(request);
* responses.iterator().forEachRemaining(....);
* }
*
*
* Note: If you prefer to have control on service calls, use the
* {@link #describeConnections(software.amazon.awssdk.services.databasemigration.model.DescribeConnectionsRequest)}
* operation.
*
*
* @param describeConnectionsRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeConnections
* @see AWS API
* Documentation
*/
@Override
public DescribeConnectionsIterable describeConnectionsPaginator(DescribeConnectionsRequest describeConnectionsRequest)
throws ResourceNotFoundException, AwsServiceException, SdkClientException, DatabaseMigrationException {
return new DescribeConnectionsIterable(this, applyPaginatorUserAgent(describeConnectionsRequest));
}
/**
*
* Returns information about the type of endpoints available.
*
*
* @param describeEndpointTypesRequest
* @return Result of the DescribeEndpointTypes operation returned by the service.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeEndpointTypes
* @see AWS API
* Documentation
*/
@Override
public DescribeEndpointTypesResponse describeEndpointTypes(DescribeEndpointTypesRequest describeEndpointTypesRequest)
throws AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeEndpointTypesResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeEndpointTypesRequest)
.withMarshaller(new DescribeEndpointTypesRequestMarshaller(protocolFactory)));
}
/**
*
* Returns information about the type of endpoints available.
*
*
*
* This is a variant of
* {@link #describeEndpointTypes(software.amazon.awssdk.services.databasemigration.model.DescribeEndpointTypesRequest)}
* operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will
* internally handle making service calls for you.
*
*
* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no
* guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response
* pages by making service calls until there are no pages left or your iteration stops. If there are errors in your
* request, you will see the failures only after you start iterating through the iterable.
*
*
*
* The following are few ways to iterate through the response pages:
*
* 1) Using a Stream
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeEndpointTypesIterable responses = client.describeEndpointTypesPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeEndpointTypesIterable responses = client
* .describeEndpointTypesPaginator(request);
* for (software.amazon.awssdk.services.databasemigration.model.DescribeEndpointTypesResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeEndpointTypesIterable responses = client.describeEndpointTypesPaginator(request);
* responses.iterator().forEachRemaining(....);
* }
*
*
* Note: If you prefer to have control on service calls, use the
* {@link #describeEndpointTypes(software.amazon.awssdk.services.databasemigration.model.DescribeEndpointTypesRequest)}
* operation.
*
*
* @param describeEndpointTypesRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeEndpointTypes
* @see AWS API
* Documentation
*/
@Override
public DescribeEndpointTypesIterable describeEndpointTypesPaginator(DescribeEndpointTypesRequest describeEndpointTypesRequest)
throws AwsServiceException, SdkClientException, DatabaseMigrationException {
return new DescribeEndpointTypesIterable(this, applyPaginatorUserAgent(describeEndpointTypesRequest));
}
/**
*
* Returns information about the endpoints for your account in the current region.
*
*
* @param describeEndpointsRequest
* @return Result of the DescribeEndpoints operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeEndpoints
* @see AWS API
* Documentation
*/
@Override
public DescribeEndpointsResponse describeEndpoints(DescribeEndpointsRequest describeEndpointsRequest)
throws ResourceNotFoundException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeEndpointsResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeEndpointsRequest).withMarshaller(new DescribeEndpointsRequestMarshaller(protocolFactory)));
}
/**
*
* Returns information about the endpoints for your account in the current region.
*
*
*
* This is a variant of
* {@link #describeEndpoints(software.amazon.awssdk.services.databasemigration.model.DescribeEndpointsRequest)}
* operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will
* internally handle making service calls for you.
*
*
* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no
* guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response
* pages by making service calls until there are no pages left or your iteration stops. If there are errors in your
* request, you will see the failures only after you start iterating through the iterable.
*
*
*
* The following are few ways to iterate through the response pages:
*
* 1) Using a Stream
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeEndpointsIterable responses = client.describeEndpointsPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeEndpointsIterable responses = client
* .describeEndpointsPaginator(request);
* for (software.amazon.awssdk.services.databasemigration.model.DescribeEndpointsResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeEndpointsIterable responses = client.describeEndpointsPaginator(request);
* responses.iterator().forEachRemaining(....);
* }
*
*
* Note: If you prefer to have control on service calls, use the
* {@link #describeEndpoints(software.amazon.awssdk.services.databasemigration.model.DescribeEndpointsRequest)}
* operation.
*
*
* @param describeEndpointsRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeEndpoints
* @see AWS API
* Documentation
*/
@Override
public DescribeEndpointsIterable describeEndpointsPaginator(DescribeEndpointsRequest describeEndpointsRequest)
throws ResourceNotFoundException, AwsServiceException, SdkClientException, DatabaseMigrationException {
return new DescribeEndpointsIterable(this, applyPaginatorUserAgent(describeEndpointsRequest));
}
/**
*
* Lists categories for all event source types, or, if specified, for a specified source type. You can see a list of
* the event categories and source types in Working with Events and Notifications
* in the AWS Database Migration Service User Guide.
*
*
* @param describeEventCategoriesRequest
* @return Result of the DescribeEventCategories operation returned by the service.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeEventCategories
* @see AWS
* API Documentation
*/
@Override
public DescribeEventCategoriesResponse describeEventCategories(DescribeEventCategoriesRequest describeEventCategoriesRequest)
throws AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeEventCategoriesResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeEventCategoriesRequest)
.withMarshaller(new DescribeEventCategoriesRequestMarshaller(protocolFactory)));
}
/**
*
* Lists all the event subscriptions for a customer account. The description of a subscription includes
* SubscriptionName
, SNSTopicARN
, CustomerID
, SourceType
,
* SourceID
, CreationTime
, and Status
.
*
*
* If you specify SubscriptionName
, this action lists the description for that subscription.
*
*
* @param describeEventSubscriptionsRequest
* @return Result of the DescribeEventSubscriptions operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeEventSubscriptions
* @see AWS
* API Documentation
*/
@Override
public DescribeEventSubscriptionsResponse describeEventSubscriptions(
DescribeEventSubscriptionsRequest describeEventSubscriptionsRequest) throws ResourceNotFoundException,
AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeEventSubscriptionsResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler
.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeEventSubscriptionsRequest)
.withMarshaller(new DescribeEventSubscriptionsRequestMarshaller(protocolFactory)));
}
/**
*
* Lists all the event subscriptions for a customer account. The description of a subscription includes
* SubscriptionName
, SNSTopicARN
, CustomerID
, SourceType
,
* SourceID
, CreationTime
, and Status
.
*
*
* If you specify SubscriptionName
, this action lists the description for that subscription.
*
*
*
* This is a variant of
* {@link #describeEventSubscriptions(software.amazon.awssdk.services.databasemigration.model.DescribeEventSubscriptionsRequest)}
* operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will
* internally handle making service calls for you.
*
*
* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no
* guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response
* pages by making service calls until there are no pages left or your iteration stops. If there are errors in your
* request, you will see the failures only after you start iterating through the iterable.
*
*
*
* The following are few ways to iterate through the response pages:
*
* 1) Using a Stream
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeEventSubscriptionsIterable responses = client.describeEventSubscriptionsPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeEventSubscriptionsIterable responses = client
* .describeEventSubscriptionsPaginator(request);
* for (software.amazon.awssdk.services.databasemigration.model.DescribeEventSubscriptionsResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeEventSubscriptionsIterable responses = client.describeEventSubscriptionsPaginator(request);
* responses.iterator().forEachRemaining(....);
* }
*
*
* Note: If you prefer to have control on service calls, use the
* {@link #describeEventSubscriptions(software.amazon.awssdk.services.databasemigration.model.DescribeEventSubscriptionsRequest)}
* operation.
*
*
* @param describeEventSubscriptionsRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeEventSubscriptions
* @see AWS
* API Documentation
*/
@Override
public DescribeEventSubscriptionsIterable describeEventSubscriptionsPaginator(
DescribeEventSubscriptionsRequest describeEventSubscriptionsRequest) throws ResourceNotFoundException,
AwsServiceException, SdkClientException, DatabaseMigrationException {
return new DescribeEventSubscriptionsIterable(this, applyPaginatorUserAgent(describeEventSubscriptionsRequest));
}
/**
*
* Lists events for a given source identifier and source type. You can also specify a start and end time. For more
* information on AWS DMS events, see
* Working with Events and Notifications .
*
*
* @param describeEventsRequest
* @return Result of the DescribeEvents operation returned by the service.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeEvents
* @see AWS API
* Documentation
*/
@Override
public DescribeEventsResponse describeEvents(DescribeEventsRequest describeEventsRequest) throws AwsServiceException,
SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeEventsResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeEventsRequest).withMarshaller(new DescribeEventsRequestMarshaller(protocolFactory)));
}
/**
*
* Lists events for a given source identifier and source type. You can also specify a start and end time. For more
* information on AWS DMS events, see
* Working with Events and Notifications .
*
*
*
* This is a variant of
* {@link #describeEvents(software.amazon.awssdk.services.databasemigration.model.DescribeEventsRequest)} operation.
* The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally
* handle making service calls for you.
*
*
* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no
* guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response
* pages by making service calls until there are no pages left or your iteration stops. If there are errors in your
* request, you will see the failures only after you start iterating through the iterable.
*
*
*
* The following are few ways to iterate through the response pages:
*
* 1) Using a Stream
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeEventsIterable responses = client.describeEventsPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeEventsIterable responses = client
* .describeEventsPaginator(request);
* for (software.amazon.awssdk.services.databasemigration.model.DescribeEventsResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeEventsIterable responses = client.describeEventsPaginator(request);
* responses.iterator().forEachRemaining(....);
* }
*
*
* Note: If you prefer to have control on service calls, use the
* {@link #describeEvents(software.amazon.awssdk.services.databasemigration.model.DescribeEventsRequest)}
* operation.
*
*
* @param describeEventsRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeEvents
* @see AWS API
* Documentation
*/
@Override
public DescribeEventsIterable describeEventsPaginator(DescribeEventsRequest describeEventsRequest)
throws AwsServiceException, SdkClientException, DatabaseMigrationException {
return new DescribeEventsIterable(this, applyPaginatorUserAgent(describeEventsRequest));
}
/**
*
* Returns information about the replication instance types that can be created in the specified region.
*
*
* @param describeOrderableReplicationInstancesRequest
* @return Result of the DescribeOrderableReplicationInstances operation returned by the service.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeOrderableReplicationInstances
* @see AWS API Documentation
*/
@Override
public DescribeOrderableReplicationInstancesResponse describeOrderableReplicationInstances(
DescribeOrderableReplicationInstancesRequest describeOrderableReplicationInstancesRequest)
throws AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeOrderableReplicationInstancesResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler
.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeOrderableReplicationInstancesRequest)
.withMarshaller(new DescribeOrderableReplicationInstancesRequestMarshaller(protocolFactory)));
}
/**
*
* Returns information about the replication instance types that can be created in the specified region.
*
*
*
* This is a variant of
* {@link #describeOrderableReplicationInstances(software.amazon.awssdk.services.databasemigration.model.DescribeOrderableReplicationInstancesRequest)}
* operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will
* internally handle making service calls for you.
*
*
* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no
* guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response
* pages by making service calls until there are no pages left or your iteration stops. If there are errors in your
* request, you will see the failures only after you start iterating through the iterable.
*
*
*
* The following are few ways to iterate through the response pages:
*
* 1) Using a Stream
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeOrderableReplicationInstancesIterable responses = client.describeOrderableReplicationInstancesPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeOrderableReplicationInstancesIterable responses = client
* .describeOrderableReplicationInstancesPaginator(request);
* for (software.amazon.awssdk.services.databasemigration.model.DescribeOrderableReplicationInstancesResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeOrderableReplicationInstancesIterable responses = client.describeOrderableReplicationInstancesPaginator(request);
* responses.iterator().forEachRemaining(....);
* }
*
*
* Note: If you prefer to have control on service calls, use the
* {@link #describeOrderableReplicationInstances(software.amazon.awssdk.services.databasemigration.model.DescribeOrderableReplicationInstancesRequest)}
* operation.
*
*
* @param describeOrderableReplicationInstancesRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeOrderableReplicationInstances
* @see AWS API Documentation
*/
@Override
public DescribeOrderableReplicationInstancesIterable describeOrderableReplicationInstancesPaginator(
DescribeOrderableReplicationInstancesRequest describeOrderableReplicationInstancesRequest)
throws AwsServiceException, SdkClientException, DatabaseMigrationException {
return new DescribeOrderableReplicationInstancesIterable(this,
applyPaginatorUserAgent(describeOrderableReplicationInstancesRequest));
}
/**
*
* Returns the status of the RefreshSchemas operation.
*
*
* @param describeRefreshSchemasStatusRequest
* @return Result of the DescribeRefreshSchemasStatus operation returned by the service.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeRefreshSchemasStatus
* @see AWS API Documentation
*/
@Override
public DescribeRefreshSchemasStatusResponse describeRefreshSchemasStatus(
DescribeRefreshSchemasStatusRequest describeRefreshSchemasStatusRequest) throws InvalidResourceStateException,
ResourceNotFoundException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeRefreshSchemasStatusResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler
.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeRefreshSchemasStatusRequest)
.withMarshaller(new DescribeRefreshSchemasStatusRequestMarshaller(protocolFactory)));
}
/**
*
* Returns information about replication instances for your account in the current region.
*
*
* @param describeReplicationInstancesRequest
* @return Result of the DescribeReplicationInstances operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeReplicationInstances
* @see AWS API Documentation
*/
@Override
public DescribeReplicationInstancesResponse describeReplicationInstances(
DescribeReplicationInstancesRequest describeReplicationInstancesRequest) throws ResourceNotFoundException,
AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeReplicationInstancesResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler
.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeReplicationInstancesRequest)
.withMarshaller(new DescribeReplicationInstancesRequestMarshaller(protocolFactory)));
}
/**
*
* Returns information about replication instances for your account in the current region.
*
*
*
* This is a variant of
* {@link #describeReplicationInstances(software.amazon.awssdk.services.databasemigration.model.DescribeReplicationInstancesRequest)}
* operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will
* internally handle making service calls for you.
*
*
* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no
* guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response
* pages by making service calls until there are no pages left or your iteration stops. If there are errors in your
* request, you will see the failures only after you start iterating through the iterable.
*
*
*
* The following are few ways to iterate through the response pages:
*
* 1) Using a Stream
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeReplicationInstancesIterable responses = client.describeReplicationInstancesPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeReplicationInstancesIterable responses = client
* .describeReplicationInstancesPaginator(request);
* for (software.amazon.awssdk.services.databasemigration.model.DescribeReplicationInstancesResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeReplicationInstancesIterable responses = client.describeReplicationInstancesPaginator(request);
* responses.iterator().forEachRemaining(....);
* }
*
*
* Note: If you prefer to have control on service calls, use the
* {@link #describeReplicationInstances(software.amazon.awssdk.services.databasemigration.model.DescribeReplicationInstancesRequest)}
* operation.
*
*
* @param describeReplicationInstancesRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeReplicationInstances
* @see AWS API Documentation
*/
@Override
public DescribeReplicationInstancesIterable describeReplicationInstancesPaginator(
DescribeReplicationInstancesRequest describeReplicationInstancesRequest) throws ResourceNotFoundException,
AwsServiceException, SdkClientException, DatabaseMigrationException {
return new DescribeReplicationInstancesIterable(this, applyPaginatorUserAgent(describeReplicationInstancesRequest));
}
/**
*
* Returns information about the replication subnet groups.
*
*
* @param describeReplicationSubnetGroupsRequest
* @return Result of the DescribeReplicationSubnetGroups operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeReplicationSubnetGroups
* @see AWS API Documentation
*/
@Override
public DescribeReplicationSubnetGroupsResponse describeReplicationSubnetGroups(
DescribeReplicationSubnetGroupsRequest describeReplicationSubnetGroupsRequest) throws ResourceNotFoundException,
AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeReplicationSubnetGroupsResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler
.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeReplicationSubnetGroupsRequest)
.withMarshaller(new DescribeReplicationSubnetGroupsRequestMarshaller(protocolFactory)));
}
/**
*
* Returns information about the replication subnet groups.
*
*
*
* This is a variant of
* {@link #describeReplicationSubnetGroups(software.amazon.awssdk.services.databasemigration.model.DescribeReplicationSubnetGroupsRequest)}
* operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will
* internally handle making service calls for you.
*
*
* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no
* guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response
* pages by making service calls until there are no pages left or your iteration stops. If there are errors in your
* request, you will see the failures only after you start iterating through the iterable.
*
*
*
* The following are few ways to iterate through the response pages:
*
* 1) Using a Stream
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeReplicationSubnetGroupsIterable responses = client.describeReplicationSubnetGroupsPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeReplicationSubnetGroupsIterable responses = client
* .describeReplicationSubnetGroupsPaginator(request);
* for (software.amazon.awssdk.services.databasemigration.model.DescribeReplicationSubnetGroupsResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeReplicationSubnetGroupsIterable responses = client.describeReplicationSubnetGroupsPaginator(request);
* responses.iterator().forEachRemaining(....);
* }
*
*
* Note: If you prefer to have control on service calls, use the
* {@link #describeReplicationSubnetGroups(software.amazon.awssdk.services.databasemigration.model.DescribeReplicationSubnetGroupsRequest)}
* operation.
*
*
* @param describeReplicationSubnetGroupsRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeReplicationSubnetGroups
* @see AWS API Documentation
*/
@Override
public DescribeReplicationSubnetGroupsIterable describeReplicationSubnetGroupsPaginator(
DescribeReplicationSubnetGroupsRequest describeReplicationSubnetGroupsRequest) throws ResourceNotFoundException,
AwsServiceException, SdkClientException, DatabaseMigrationException {
return new DescribeReplicationSubnetGroupsIterable(this, applyPaginatorUserAgent(describeReplicationSubnetGroupsRequest));
}
/**
*
* Returns the task assessment results from Amazon S3. This action always returns the latest results.
*
*
* @param describeReplicationTaskAssessmentResultsRequest
* @return Result of the DescribeReplicationTaskAssessmentResults operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeReplicationTaskAssessmentResults
* @see AWS API Documentation
*/
@Override
public DescribeReplicationTaskAssessmentResultsResponse describeReplicationTaskAssessmentResults(
DescribeReplicationTaskAssessmentResultsRequest describeReplicationTaskAssessmentResultsRequest)
throws ResourceNotFoundException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory
.createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeReplicationTaskAssessmentResultsResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler
.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeReplicationTaskAssessmentResultsRequest)
.withMarshaller(new DescribeReplicationTaskAssessmentResultsRequestMarshaller(protocolFactory)));
}
/**
*
* Returns information about replication tasks for your account in the current region.
*
*
* @param describeReplicationTasksRequest
* @return Result of the DescribeReplicationTasks operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeReplicationTasks
* @see AWS
* API Documentation
*/
@Override
public DescribeReplicationTasksResponse describeReplicationTasks(
DescribeReplicationTasksRequest describeReplicationTasksRequest) throws ResourceNotFoundException,
AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeReplicationTasksResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler
.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeReplicationTasksRequest)
.withMarshaller(new DescribeReplicationTasksRequestMarshaller(protocolFactory)));
}
/**
*
* Returns information about replication tasks for your account in the current region.
*
*
*
* This is a variant of
* {@link #describeReplicationTasks(software.amazon.awssdk.services.databasemigration.model.DescribeReplicationTasksRequest)}
* operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will
* internally handle making service calls for you.
*
*
* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no
* guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response
* pages by making service calls until there are no pages left or your iteration stops. If there are errors in your
* request, you will see the failures only after you start iterating through the iterable.
*
*
*
* The following are few ways to iterate through the response pages:
*
* 1) Using a Stream
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeReplicationTasksIterable responses = client.describeReplicationTasksPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeReplicationTasksIterable responses = client
* .describeReplicationTasksPaginator(request);
* for (software.amazon.awssdk.services.databasemigration.model.DescribeReplicationTasksResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeReplicationTasksIterable responses = client.describeReplicationTasksPaginator(request);
* responses.iterator().forEachRemaining(....);
* }
*
*
* Note: If you prefer to have control on service calls, use the
* {@link #describeReplicationTasks(software.amazon.awssdk.services.databasemigration.model.DescribeReplicationTasksRequest)}
* operation.
*
*
* @param describeReplicationTasksRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeReplicationTasks
* @see AWS
* API Documentation
*/
@Override
public DescribeReplicationTasksIterable describeReplicationTasksPaginator(
DescribeReplicationTasksRequest describeReplicationTasksRequest) throws ResourceNotFoundException,
AwsServiceException, SdkClientException, DatabaseMigrationException {
return new DescribeReplicationTasksIterable(this, applyPaginatorUserAgent(describeReplicationTasksRequest));
}
/**
*
* Returns information about the schema for the specified endpoint.
*
*
*
* @param describeSchemasRequest
* @return Result of the DescribeSchemas operation returned by the service.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeSchemas
* @see AWS API
* Documentation
*/
@Override
public DescribeSchemasResponse describeSchemas(DescribeSchemasRequest describeSchemasRequest)
throws InvalidResourceStateException, ResourceNotFoundException, AwsServiceException, SdkClientException,
DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeSchemasResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeSchemasRequest).withMarshaller(new DescribeSchemasRequestMarshaller(protocolFactory)));
}
/**
*
* Returns information about the schema for the specified endpoint.
*
*
*
*
* This is a variant of
* {@link #describeSchemas(software.amazon.awssdk.services.databasemigration.model.DescribeSchemasRequest)}
* operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will
* internally handle making service calls for you.
*
*
* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no
* guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response
* pages by making service calls until there are no pages left or your iteration stops. If there are errors in your
* request, you will see the failures only after you start iterating through the iterable.
*
*
*
* The following are few ways to iterate through the response pages:
*
* 1) Using a Stream
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeSchemasIterable responses = client.describeSchemasPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeSchemasIterable responses = client
* .describeSchemasPaginator(request);
* for (software.amazon.awssdk.services.databasemigration.model.DescribeSchemasResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeSchemasIterable responses = client.describeSchemasPaginator(request);
* responses.iterator().forEachRemaining(....);
* }
*
*
* Note: If you prefer to have control on service calls, use the
* {@link #describeSchemas(software.amazon.awssdk.services.databasemigration.model.DescribeSchemasRequest)}
* operation.
*
*
* @param describeSchemasRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeSchemas
* @see AWS API
* Documentation
*/
@Override
public DescribeSchemasIterable describeSchemasPaginator(DescribeSchemasRequest describeSchemasRequest)
throws InvalidResourceStateException, ResourceNotFoundException, AwsServiceException, SdkClientException,
DatabaseMigrationException {
return new DescribeSchemasIterable(this, applyPaginatorUserAgent(describeSchemasRequest));
}
/**
*
* Returns table statistics on the database migration task, including table name, rows inserted, rows updated, and
* rows deleted.
*
*
* Note that the "last updated" column the DMS console only indicates the time that AWS DMS last updated the table
* statistics record for a table. It does not indicate the time of the last update to the table.
*
*
* @param describeTableStatisticsRequest
* @return Result of the DescribeTableStatistics operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeTableStatistics
* @see AWS
* API Documentation
*/
@Override
public DescribeTableStatisticsResponse describeTableStatistics(DescribeTableStatisticsRequest describeTableStatisticsRequest)
throws ResourceNotFoundException, InvalidResourceStateException, AwsServiceException, SdkClientException,
DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new DescribeTableStatisticsResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(describeTableStatisticsRequest)
.withMarshaller(new DescribeTableStatisticsRequestMarshaller(protocolFactory)));
}
/**
*
* Returns table statistics on the database migration task, including table name, rows inserted, rows updated, and
* rows deleted.
*
*
* Note that the "last updated" column the DMS console only indicates the time that AWS DMS last updated the table
* statistics record for a table. It does not indicate the time of the last update to the table.
*
*
*
* This is a variant of
* {@link #describeTableStatistics(software.amazon.awssdk.services.databasemigration.model.DescribeTableStatisticsRequest)}
* operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will
* internally handle making service calls for you.
*
*
* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no
* guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response
* pages by making service calls until there are no pages left or your iteration stops. If there are errors in your
* request, you will see the failures only after you start iterating through the iterable.
*
*
*
* The following are few ways to iterate through the response pages:
*
* 1) Using a Stream
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeTableStatisticsIterable responses = client.describeTableStatisticsPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeTableStatisticsIterable responses = client
* .describeTableStatisticsPaginator(request);
* for (software.amazon.awssdk.services.databasemigration.model.DescribeTableStatisticsResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.databasemigration.paginators.DescribeTableStatisticsIterable responses = client.describeTableStatisticsPaginator(request);
* responses.iterator().forEachRemaining(....);
* }
*
*
* Note: If you prefer to have control on service calls, use the
* {@link #describeTableStatistics(software.amazon.awssdk.services.databasemigration.model.DescribeTableStatisticsRequest)}
* operation.
*
*
* @param describeTableStatisticsRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.DescribeTableStatistics
* @see AWS
* API Documentation
*/
@Override
public DescribeTableStatisticsIterable describeTableStatisticsPaginator(
DescribeTableStatisticsRequest describeTableStatisticsRequest) throws ResourceNotFoundException,
InvalidResourceStateException, AwsServiceException, SdkClientException, DatabaseMigrationException {
return new DescribeTableStatisticsIterable(this, applyPaginatorUserAgent(describeTableStatisticsRequest));
}
/**
*
* Uploads the specified certificate.
*
*
* @param importCertificateRequest
* @return Result of the ImportCertificate operation returned by the service.
* @throws ResourceAlreadyExistsException
* The resource you are attempting to create already exists.
* @throws InvalidCertificateException
* The certificate was not valid.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.ImportCertificate
* @see AWS API
* Documentation
*/
@Override
public ImportCertificateResponse importCertificate(ImportCertificateRequest importCertificateRequest)
throws ResourceAlreadyExistsException, InvalidCertificateException, AwsServiceException, SdkClientException,
DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new ImportCertificateResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(importCertificateRequest).withMarshaller(new ImportCertificateRequestMarshaller(protocolFactory)));
}
/**
*
* Lists all tags for an AWS DMS resource.
*
*
* @param listTagsForResourceRequest
* @return Result of the ListTagsForResource operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.ListTagsForResource
* @see AWS API
* Documentation
*/
@Override
public ListTagsForResourceResponse listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest)
throws ResourceNotFoundException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new ListTagsForResourceResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(listTagsForResourceRequest).withMarshaller(new ListTagsForResourceRequestMarshaller(protocolFactory)));
}
/**
*
* Modifies the specified endpoint.
*
*
* @param modifyEndpointRequest
* @return Result of the ModifyEndpoint operation returned by the service.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws ResourceAlreadyExistsException
* The resource you are attempting to create already exists.
* @throws KmsKeyNotAccessibleException
* AWS DMS cannot access the KMS key.
* @throws AccessDeniedException
* AWS DMS was denied access to the endpoint.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.ModifyEndpoint
* @see AWS API
* Documentation
*/
@Override
public ModifyEndpointResponse modifyEndpoint(ModifyEndpointRequest modifyEndpointRequest)
throws InvalidResourceStateException, ResourceNotFoundException, ResourceAlreadyExistsException,
KmsKeyNotAccessibleException, AccessDeniedException, AwsServiceException, SdkClientException,
DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new ModifyEndpointResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(modifyEndpointRequest).withMarshaller(new ModifyEndpointRequestMarshaller(protocolFactory)));
}
/**
*
* Modifies an existing AWS DMS event notification subscription.
*
*
* @param modifyEventSubscriptionRequest
* @return Result of the ModifyEventSubscription operation returned by the service.
* @throws ResourceQuotaExceededException
* The quota for this resource quota has been exceeded.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SnsInvalidTopicException
* The SNS topic is invalid.
* @throws SnsNoAuthorizationException
* You are not authorized for the SNS subscription.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.ModifyEventSubscription
* @see AWS
* API Documentation
*/
@Override
public ModifyEventSubscriptionResponse modifyEventSubscription(ModifyEventSubscriptionRequest modifyEventSubscriptionRequest)
throws ResourceQuotaExceededException, ResourceNotFoundException, SnsInvalidTopicException,
SnsNoAuthorizationException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new ModifyEventSubscriptionResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(modifyEventSubscriptionRequest)
.withMarshaller(new ModifyEventSubscriptionRequestMarshaller(protocolFactory)));
}
/**
*
* Modifies the replication instance to apply new settings. You can change one or more parameters by specifying
* these parameters and the new values in the request.
*
*
* Some settings are applied during the maintenance window.
*
*
*
* @param modifyReplicationInstanceRequest
* @return Result of the ModifyReplicationInstance operation returned by the service.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws ResourceAlreadyExistsException
* The resource you are attempting to create already exists.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws InsufficientResourceCapacityException
* There are not enough resources allocated to the database migration.
* @throws StorageQuotaExceededException
* The storage quota has been exceeded.
* @throws UpgradeDependencyFailureException
* An upgrade dependency is preventing the database migration.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.ModifyReplicationInstance
* @see AWS
* API Documentation
*/
@Override
public ModifyReplicationInstanceResponse modifyReplicationInstance(
ModifyReplicationInstanceRequest modifyReplicationInstanceRequest) throws InvalidResourceStateException,
ResourceAlreadyExistsException, ResourceNotFoundException, InsufficientResourceCapacityException,
StorageQuotaExceededException, UpgradeDependencyFailureException, AwsServiceException, SdkClientException,
DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new ModifyReplicationInstanceResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler
.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(modifyReplicationInstanceRequest)
.withMarshaller(new ModifyReplicationInstanceRequestMarshaller(protocolFactory)));
}
/**
*
* Modifies the settings for the specified replication subnet group.
*
*
* @param modifyReplicationSubnetGroupRequest
* @return Result of the ModifyReplicationSubnetGroup operation returned by the service.
* @throws AccessDeniedException
* AWS DMS was denied access to the endpoint.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws ResourceQuotaExceededException
* The quota for this resource quota has been exceeded.
* @throws SubnetAlreadyInUseException
* The specified subnet is already in use.
* @throws ReplicationSubnetGroupDoesNotCoverEnoughAZsException
* The replication subnet group does not cover enough Availability Zones (AZs). Edit the replication subnet
* group and add more AZs.
* @throws InvalidSubnetException
* The subnet provided is invalid.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.ModifyReplicationSubnetGroup
* @see AWS API Documentation
*/
@Override
public ModifyReplicationSubnetGroupResponse modifyReplicationSubnetGroup(
ModifyReplicationSubnetGroupRequest modifyReplicationSubnetGroupRequest) throws AccessDeniedException,
ResourceNotFoundException, ResourceQuotaExceededException, SubnetAlreadyInUseException,
ReplicationSubnetGroupDoesNotCoverEnoughAZsException, InvalidSubnetException, AwsServiceException,
SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new ModifyReplicationSubnetGroupResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler
.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(modifyReplicationSubnetGroupRequest)
.withMarshaller(new ModifyReplicationSubnetGroupRequestMarshaller(protocolFactory)));
}
/**
*
* Modifies the specified replication task.
*
*
* You can't modify the task endpoints. The task must be stopped before you can modify it.
*
*
* For more information about AWS DMS tasks, see the AWS DMS user guide at Working with Migration Tasks
*
*
* @param modifyReplicationTaskRequest
* @return Result of the ModifyReplicationTask operation returned by the service.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws ResourceAlreadyExistsException
* The resource you are attempting to create already exists.
* @throws KmsKeyNotAccessibleException
* AWS DMS cannot access the KMS key.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.ModifyReplicationTask
* @see AWS API
* Documentation
*/
@Override
public ModifyReplicationTaskResponse modifyReplicationTask(ModifyReplicationTaskRequest modifyReplicationTaskRequest)
throws InvalidResourceStateException, ResourceNotFoundException, ResourceAlreadyExistsException,
KmsKeyNotAccessibleException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new ModifyReplicationTaskResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(modifyReplicationTaskRequest)
.withMarshaller(new ModifyReplicationTaskRequestMarshaller(protocolFactory)));
}
/**
*
* Populates the schema for the specified endpoint. This is an asynchronous operation and can take several minutes.
* You can check the status of this operation by calling the DescribeRefreshSchemasStatus operation.
*
*
* @param refreshSchemasRequest
* @return Result of the RefreshSchemas operation returned by the service.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws KmsKeyNotAccessibleException
* AWS DMS cannot access the KMS key.
* @throws ResourceQuotaExceededException
* The quota for this resource quota has been exceeded.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.RefreshSchemas
* @see AWS API
* Documentation
*/
@Override
public RefreshSchemasResponse refreshSchemas(RefreshSchemasRequest refreshSchemasRequest)
throws InvalidResourceStateException, ResourceNotFoundException, KmsKeyNotAccessibleException,
ResourceQuotaExceededException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new RefreshSchemasResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(refreshSchemasRequest).withMarshaller(new RefreshSchemasRequestMarshaller(protocolFactory)));
}
/**
*
* Reloads the target database table with the source data.
*
*
* @param reloadTablesRequest
* @return Result of the ReloadTables operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.ReloadTables
* @see AWS API
* Documentation
*/
@Override
public ReloadTablesResponse reloadTables(ReloadTablesRequest reloadTablesRequest) throws ResourceNotFoundException,
InvalidResourceStateException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new ReloadTablesResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(reloadTablesRequest).withMarshaller(new ReloadTablesRequestMarshaller(protocolFactory)));
}
/**
*
* Removes metadata tags from a DMS resource.
*
*
* @param removeTagsFromResourceRequest
* @return Result of the RemoveTagsFromResource operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.RemoveTagsFromResource
* @see AWS API
* Documentation
*/
@Override
public RemoveTagsFromResourceResponse removeTagsFromResource(RemoveTagsFromResourceRequest removeTagsFromResourceRequest)
throws ResourceNotFoundException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new RemoveTagsFromResourceResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(removeTagsFromResourceRequest)
.withMarshaller(new RemoveTagsFromResourceRequestMarshaller(protocolFactory)));
}
/**
*
* Starts the replication task.
*
*
* For more information about AWS DMS tasks, see the AWS DMS user guide at Working with Migration Tasks
*
*
* @param startReplicationTaskRequest
* @return Result of the StartReplicationTask operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.StartReplicationTask
* @see AWS API
* Documentation
*/
@Override
public StartReplicationTaskResponse startReplicationTask(StartReplicationTaskRequest startReplicationTaskRequest)
throws ResourceNotFoundException, InvalidResourceStateException, AwsServiceException, SdkClientException,
DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new StartReplicationTaskResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(startReplicationTaskRequest)
.withMarshaller(new StartReplicationTaskRequestMarshaller(protocolFactory)));
}
/**
*
* Starts the replication task assessment for unsupported data types in the source database.
*
*
* @param startReplicationTaskAssessmentRequest
* @return Result of the StartReplicationTaskAssessment operation returned by the service.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.StartReplicationTaskAssessment
* @see AWS API Documentation
*/
@Override
public StartReplicationTaskAssessmentResponse startReplicationTaskAssessment(
StartReplicationTaskAssessmentRequest startReplicationTaskAssessmentRequest) throws InvalidResourceStateException,
ResourceNotFoundException, AwsServiceException, SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new StartReplicationTaskAssessmentResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler
.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(startReplicationTaskAssessmentRequest)
.withMarshaller(new StartReplicationTaskAssessmentRequestMarshaller(protocolFactory)));
}
/**
*
* Stops the replication task.
*
*
*
* @param stopReplicationTaskRequest
* @return Result of the StopReplicationTask operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.StopReplicationTask
* @see AWS API
* Documentation
*/
@Override
public StopReplicationTaskResponse stopReplicationTask(StopReplicationTaskRequest stopReplicationTaskRequest)
throws ResourceNotFoundException, InvalidResourceStateException, AwsServiceException, SdkClientException,
DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new StopReplicationTaskResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(stopReplicationTaskRequest).withMarshaller(new StopReplicationTaskRequestMarshaller(protocolFactory)));
}
/**
*
* Tests the connection between the replication instance and the endpoint.
*
*
* @param testConnectionRequest
* @return Result of the TestConnection operation returned by the service.
* @throws ResourceNotFoundException
* The resource could not be found.
* @throws InvalidResourceStateException
* The resource is in a state that prevents it from being used for database migration.
* @throws KmsKeyNotAccessibleException
* AWS DMS cannot access the KMS key.
* @throws ResourceQuotaExceededException
* The quota for this resource quota has been exceeded.
* @throws SdkException
* Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for
* catch all scenarios.
* @throws SdkClientException
* If any client side error occurs such as an IO related failure, failure to get credentials, etc.
* @throws DatabaseMigrationException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample DatabaseMigrationClient.TestConnection
* @see AWS API
* Documentation
*/
@Override
public TestConnectionResponse testConnection(TestConnectionRequest testConnectionRequest) throws ResourceNotFoundException,
InvalidResourceStateException, KmsKeyNotAccessibleException, ResourceQuotaExceededException, AwsServiceException,
SdkClientException, DatabaseMigrationException {
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
new TestConnectionResponseUnmarshaller());
HttpResponseHandler errorResponseHandler = createErrorResponseHandler();
return clientHandler.execute(new ClientExecutionParams()
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(testConnectionRequest).withMarshaller(new TestConnectionRequestMarshaller(protocolFactory)));
}
private HttpResponseHandler createErrorResponseHandler() {
return protocolFactory.createErrorResponseHandler(new JsonErrorResponseMetadata());
}
private software.amazon.awssdk.awscore.protocol.json.AwsJsonProtocolFactory init() {
return new AwsJsonProtocolFactory(new JsonClientMetadata()
.withSupportsCbor(false)
.withSupportsIon(false)
.withBaseServiceExceptionClass(
software.amazon.awssdk.services.databasemigration.model.DatabaseMigrationException.class)
.addErrorMetadata(
new JsonErrorShapeMetadata().withErrorCode("InvalidCertificateFault").withModeledClass(
InvalidCertificateException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata().withErrorCode("UpgradeDependencyFailureFault").withModeledClass(
UpgradeDependencyFailureException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata().withErrorCode("KMSKeyNotAccessibleFault").withModeledClass(
KmsKeyNotAccessibleException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata().withErrorCode("SNSInvalidTopicFault").withModeledClass(
SnsInvalidTopicException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata().withErrorCode("InsufficientResourceCapacityFault").withModeledClass(
InsufficientResourceCapacityException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata().withErrorCode("ResourceQuotaExceededFault").withModeledClass(
ResourceQuotaExceededException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata().withErrorCode("AccessDeniedFault").withModeledClass(
AccessDeniedException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata().withErrorCode("InvalidResourceStateFault").withModeledClass(
InvalidResourceStateException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata().withErrorCode("ResourceNotFoundFault").withModeledClass(
ResourceNotFoundException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata().withErrorCode("SNSNoAuthorizationFault").withModeledClass(
SnsNoAuthorizationException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata().withErrorCode("SubnetAlreadyInUse").withModeledClass(
SubnetAlreadyInUseException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata().withErrorCode("ResourceAlreadyExistsFault").withModeledClass(
ResourceAlreadyExistsException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata().withErrorCode("InvalidSubnet")
.withModeledClass(InvalidSubnetException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata().withErrorCode("StorageQuotaExceededFault").withModeledClass(
StorageQuotaExceededException.class))
.addErrorMetadata(
new JsonErrorShapeMetadata().withErrorCode("ReplicationSubnetGroupDoesNotCoverEnoughAZs")
.withModeledClass(ReplicationSubnetGroupDoesNotCoverEnoughAZsException.class)),
AwsJsonProtocolMetadata.builder().protocolVersion("1.1").protocol(AwsJsonProtocol.AWS_JSON).build());
}
@Override
public void close() {
clientHandler.close();
}
private T applyPaginatorUserAgent(T request) {
Consumer userAgentApplier = b -> b.addApiName(ApiName.builder()
.version(VersionInfo.SDK_VERSION).name("PAGINATED").build());
AwsRequestOverrideConfiguration overrideConfiguration = request.overrideConfiguration()
.map(c -> c.toBuilder().applyMutation(userAgentApplier).build())
.orElse((AwsRequestOverrideConfiguration.builder().applyMutation(userAgentApplier).build()));
return (T) request.toBuilder().overrideConfiguration(overrideConfiguration).build();
}
}