com.amazonaws.services.docdb.AmazonDocDB Maven / Gradle / Ivy
Show all versions of aws-java-sdk-docdb Show documentation
/*
* Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.docdb;
import javax.annotation.Generated;
import com.amazonaws.*;
import com.amazonaws.regions.*;
import com.amazonaws.services.docdb.model.*;
import com.amazonaws.services.docdb.waiters.AmazonDocDBWaiters;
/**
* Interface for accessing Amazon DocDB.
*
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from
* {@link com.amazonaws.services.docdb.AbstractAmazonDocDB} instead.
*
*
*
* Amazon DocumentDB is a fast, reliable, and fully managed database service. Amazon DocumentDB makes it easy to set up,
* operate, and scale MongoDB-compatible databases in the cloud. With Amazon DocumentDB, you can run the same
* application code and use the same drivers and tools that you use with MongoDB.
*
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public interface AmazonDocDB {
/**
* The region metadata service name for computing region endpoints. You can use this value to retrieve metadata
* (such as supported regions) of the service.
*
* @see RegionUtils#getRegionsForService(String)
*/
String ENDPOINT_PREFIX = "rds";
/**
*
* Adds a source identifier to an existing event notification subscription.
*
*
* @param addSourceIdentifierToSubscriptionRequest
* Represents the input to AddSourceIdentifierToSubscription.
* @return Result of the AddSourceIdentifierToSubscription operation returned by the service.
* @throws SubscriptionNotFoundException
* The subscription name does not exist.
* @throws SourceNotFoundException
* The requested source could not be found.
* @sample AmazonDocDB.AddSourceIdentifierToSubscription
* @see AWS API Documentation
*/
EventSubscription addSourceIdentifierToSubscription(AddSourceIdentifierToSubscriptionRequest addSourceIdentifierToSubscriptionRequest);
/**
*
* Adds metadata tags to an Amazon DocumentDB resource. You can use these tags with cost allocation reporting to
* track costs that are associated with Amazon DocumentDB resources or in a Condition
statement in an
* Identity and Access Management (IAM) policy for Amazon DocumentDB.
*
*
* @param addTagsToResourceRequest
* Represents the input to AddTagsToResource.
* @return Result of the AddTagsToResource operation returned by the service.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier
doesn't refer to an existing instance.
* @throws DBSnapshotNotFoundException
* DBSnapshotIdentifier
doesn't refer to an existing snapshot.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @sample AmazonDocDB.AddTagsToResource
* @see AWS API
* Documentation
*/
AddTagsToResourceResult addTagsToResource(AddTagsToResourceRequest addTagsToResourceRequest);
/**
*
* Applies a pending maintenance action to a resource (for example, to an Amazon DocumentDB instance).
*
*
* @param applyPendingMaintenanceActionRequest
* Represents the input to ApplyPendingMaintenanceAction.
* @return Result of the ApplyPendingMaintenanceAction operation returned by the service.
* @throws ResourceNotFoundException
* The specified resource ID was not found.
* @throws InvalidDBClusterStateException
* The cluster isn't in a valid state.
* @throws InvalidDBInstanceStateException
* The specified instance isn't in the available state.
* @sample AmazonDocDB.ApplyPendingMaintenanceAction
* @see AWS API Documentation
*/
ResourcePendingMaintenanceActions applyPendingMaintenanceAction(ApplyPendingMaintenanceActionRequest applyPendingMaintenanceActionRequest);
/**
*
* Copies the specified cluster parameter group.
*
*
* @param copyDBClusterParameterGroupRequest
* Represents the input to CopyDBClusterParameterGroup.
* @return Result of the CopyDBClusterParameterGroup operation returned by the service.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName
doesn't refer to an existing parameter group.
* @throws DBParameterGroupQuotaExceededException
* This request would cause you to exceed the allowed number of parameter groups.
* @throws DBParameterGroupAlreadyExistsException
* A parameter group with the same name already exists.
* @sample AmazonDocDB.CopyDBClusterParameterGroup
* @see AWS API Documentation
*/
DBClusterParameterGroup copyDBClusterParameterGroup(CopyDBClusterParameterGroupRequest copyDBClusterParameterGroupRequest);
/**
*
* Copies a snapshot of a cluster.
*
*
* To copy a cluster snapshot from a shared manual cluster snapshot, SourceDBClusterSnapshotIdentifier
* must be the Amazon Resource Name (ARN) of the shared cluster snapshot. You can only copy a shared DB cluster
* snapshot, whether encrypted or not, in the same Amazon Web Services Region.
*
*
* To cancel the copy operation after it is in progress, delete the target cluster snapshot identified by
* TargetDBClusterSnapshotIdentifier
while that cluster snapshot is in the copying status.
*
*
* @param copyDBClusterSnapshotRequest
* Represents the input to CopyDBClusterSnapshot.
* @return Result of the CopyDBClusterSnapshot operation returned by the service.
* @throws DBClusterSnapshotAlreadyExistsException
* You already have a cluster snapshot with the given identifier.
* @throws DBClusterSnapshotNotFoundException
* DBClusterSnapshotIdentifier
doesn't refer to an existing cluster snapshot.
* @throws InvalidDBClusterStateException
* The cluster isn't in a valid state.
* @throws InvalidDBClusterSnapshotStateException
* The provided value isn't a valid cluster snapshot state.
* @throws SnapshotQuotaExceededException
* The request would cause you to exceed the allowed number of snapshots.
* @throws KMSKeyNotAccessibleException
* An error occurred when accessing an KMS key.
* @sample AmazonDocDB.CopyDBClusterSnapshot
* @see AWS
* API Documentation
*/
DBClusterSnapshot copyDBClusterSnapshot(CopyDBClusterSnapshotRequest copyDBClusterSnapshotRequest);
/**
*
* Creates a new Amazon DocumentDB cluster.
*
*
* @param createDBClusterRequest
* Represents the input to CreateDBCluster.
* @return Result of the CreateDBCluster operation returned by the service.
* @throws DBClusterAlreadyExistsException
* You already have a cluster with the given identifier.
* @throws InsufficientStorageClusterCapacityException
* There is not enough storage available for the current action. You might be able to resolve this error by
* updating your subnet group to use different Availability Zones that have more storage available.
* @throws DBClusterQuotaExceededException
* The cluster can't be created because you have reached the maximum allowed quota of clusters.
* @throws StorageQuotaExceededException
* The request would cause you to exceed the allowed amount of storage available across all instances.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName
doesn't refer to an existing subnet group.
* @throws InvalidVPCNetworkStateException
* The subnet group doesn't cover all Availability Zones after it is created because of changes that were
* made.
* @throws InvalidDBClusterStateException
* The cluster isn't in a valid state.
* @throws InvalidDBSubnetGroupStateException
* The subnet group can't be deleted because it's in use.
* @throws InvalidSubnetException
* The requested subnet is not valid, or multiple subnets were requested that are not all in a common
* virtual private cloud (VPC).
* @throws InvalidDBInstanceStateException
* The specified instance isn't in the available state.
* @throws DBClusterParameterGroupNotFoundException
* DBClusterParameterGroupName
doesn't refer to an existing cluster parameter group.
* @throws KMSKeyNotAccessibleException
* An error occurred when accessing an KMS key.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier
doesn't refer to an existing instance.
* @throws DBSubnetGroupDoesNotCoverEnoughAZsException
* Subnets in the subnet group should cover at least two Availability Zones unless there is only one
* Availability Zone.
* @throws GlobalClusterNotFoundException
* The GlobalClusterIdentifier
doesn't refer to an existing global cluster.
* @throws InvalidGlobalClusterStateException
* The requested operation can't be performed while the cluster is in this state.
* @sample AmazonDocDB.CreateDBCluster
* @see AWS API
* Documentation
*/
DBCluster createDBCluster(CreateDBClusterRequest createDBClusterRequest);
/**
*
* Creates a new cluster parameter group.
*
*
* Parameters in a cluster parameter group apply to all of the instances in a cluster.
*
*
* A cluster parameter group is initially created with the default parameters for the database engine used by
* instances in the cluster. In Amazon DocumentDB, you cannot make modifications directly to the
* default.docdb3.6
cluster parameter group. If your Amazon DocumentDB cluster is using the default
* cluster parameter group and you want to modify a value in it, you must first create a
* new parameter group or copy an
* existing parameter group, modify it, and then apply the modified parameter group to your cluster. For the new
* cluster parameter group and associated settings to take effect, you must then reboot the instances in the cluster
* without failover. For more information, see
* Modifying Amazon DocumentDB Cluster Parameter Groups.
*
*
* @param createDBClusterParameterGroupRequest
* Represents the input of CreateDBClusterParameterGroup.
* @return Result of the CreateDBClusterParameterGroup operation returned by the service.
* @throws DBParameterGroupQuotaExceededException
* This request would cause you to exceed the allowed number of parameter groups.
* @throws DBParameterGroupAlreadyExistsException
* A parameter group with the same name already exists.
* @sample AmazonDocDB.CreateDBClusterParameterGroup
* @see AWS API Documentation
*/
DBClusterParameterGroup createDBClusterParameterGroup(CreateDBClusterParameterGroupRequest createDBClusterParameterGroupRequest);
/**
*
* Creates a snapshot of a cluster.
*
*
* @param createDBClusterSnapshotRequest
* Represents the input of CreateDBClusterSnapshot.
* @return Result of the CreateDBClusterSnapshot operation returned by the service.
* @throws DBClusterSnapshotAlreadyExistsException
* You already have a cluster snapshot with the given identifier.
* @throws InvalidDBClusterStateException
* The cluster isn't in a valid state.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @throws SnapshotQuotaExceededException
* The request would cause you to exceed the allowed number of snapshots.
* @throws InvalidDBClusterSnapshotStateException
* The provided value isn't a valid cluster snapshot state.
* @sample AmazonDocDB.CreateDBClusterSnapshot
* @see AWS
* API Documentation
*/
DBClusterSnapshot createDBClusterSnapshot(CreateDBClusterSnapshotRequest createDBClusterSnapshotRequest);
/**
*
* Creates a new instance.
*
*
* @param createDBInstanceRequest
* Represents the input to CreateDBInstance.
* @return Result of the CreateDBInstance operation returned by the service.
* @throws DBInstanceAlreadyExistsException
* You already have a instance with the given identifier.
* @throws InsufficientDBInstanceCapacityException
* The specified instance class isn't available in the specified Availability Zone.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName
doesn't refer to an existing parameter group.
* @throws DBSecurityGroupNotFoundException
* DBSecurityGroupName
doesn't refer to an existing security group.
* @throws InstanceQuotaExceededException
* The request would cause you to exceed the allowed number of instances.
* @throws StorageQuotaExceededException
* The request would cause you to exceed the allowed amount of storage available across all instances.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName
doesn't refer to an existing subnet group.
* @throws DBSubnetGroupDoesNotCoverEnoughAZsException
* Subnets in the subnet group should cover at least two Availability Zones unless there is only one
* Availability Zone.
* @throws InvalidDBClusterStateException
* The cluster isn't in a valid state.
* @throws InvalidSubnetException
* The requested subnet is not valid, or multiple subnets were requested that are not all in a common
* virtual private cloud (VPC).
* @throws InvalidVPCNetworkStateException
* The subnet group doesn't cover all Availability Zones after it is created because of changes that were
* made.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @throws StorageTypeNotSupportedException
* Storage of the specified StorageType
can't be associated with the DB instance.
* @throws AuthorizationNotFoundException
* The specified CIDR IP or Amazon EC2 security group isn't authorized for the specified security group.
*
* Amazon DocumentDB also might not be authorized to perform necessary actions on your behalf using IAM.
* @throws KMSKeyNotAccessibleException
* An error occurred when accessing an KMS key.
* @sample AmazonDocDB.CreateDBInstance
* @see AWS API
* Documentation
*/
DBInstance createDBInstance(CreateDBInstanceRequest createDBInstanceRequest);
/**
*
* Creates a new subnet group. subnet groups must contain at least one subnet in at least two Availability Zones in
* the Amazon Web Services Region.
*
*
* @param createDBSubnetGroupRequest
* Represents the input to CreateDBSubnetGroup.
* @return Result of the CreateDBSubnetGroup operation returned by the service.
* @throws DBSubnetGroupAlreadyExistsException
* DBSubnetGroupName
is already being used by an existing subnet group.
* @throws DBSubnetGroupQuotaExceededException
* The request would cause you to exceed the allowed number of subnet groups.
* @throws DBSubnetQuotaExceededException
* The request would cause you to exceed the allowed number of subnets in a subnet group.
* @throws DBSubnetGroupDoesNotCoverEnoughAZsException
* Subnets in the subnet group should cover at least two Availability Zones unless there is only one
* Availability Zone.
* @throws InvalidSubnetException
* The requested subnet is not valid, or multiple subnets were requested that are not all in a common
* virtual private cloud (VPC).
* @sample AmazonDocDB.CreateDBSubnetGroup
* @see AWS API
* Documentation
*/
DBSubnetGroup createDBSubnetGroup(CreateDBSubnetGroupRequest createDBSubnetGroupRequest);
/**
*
* Creates an Amazon DocumentDB event notification subscription. This action requires a topic Amazon Resource Name
* (ARN) created by using the Amazon DocumentDB console, the Amazon SNS console, or the Amazon SNS API. To obtain an
* ARN with Amazon SNS, you must create a topic in Amazon SNS and subscribe to the topic. The ARN is displayed in
* the Amazon SNS console.
*
*
* You can specify the type of source (SourceType
) that you want to be notified of. You can also
* provide a list of Amazon DocumentDB sources (SourceIds
) that trigger the events, and you can provide
* a list of event categories (EventCategories
) for events that you want to be notified of. For
* example, you can specify SourceType = db-instance
,
* SourceIds = mydbinstance1, mydbinstance2
and EventCategories = Availability, Backup
.
*
*
* If you specify both the SourceType
and SourceIds
(such as
* SourceType = db-instance
and SourceIdentifier = myDBInstance1
), you are notified of all
* the db-instance
events for the specified source. If you specify a SourceType
but do not
* specify a SourceIdentifier
, you receive notice of the events for that source type for all your
* Amazon DocumentDB sources. If you do not specify either the SourceType
or the
* SourceIdentifier
, you are notified of events generated from all Amazon DocumentDB sources belonging
* to your customer account.
*
*
* @param createEventSubscriptionRequest
* Represents the input to CreateEventSubscription.
* @return Result of the CreateEventSubscription operation returned by the service.
* @throws EventSubscriptionQuotaExceededException
* You have reached the maximum number of event subscriptions.
* @throws SubscriptionAlreadyExistException
* The provided subscription name already exists.
* @throws SNSInvalidTopicException
* Amazon SNS has responded that there is a problem with the specified topic.
* @throws SNSNoAuthorizationException
* You do not have permission to publish to the SNS topic Amazon Resource Name (ARN).
* @throws SNSTopicArnNotFoundException
* The SNS topic Amazon Resource Name (ARN) does not exist.
* @throws SubscriptionCategoryNotFoundException
* The provided category does not exist.
* @throws SourceNotFoundException
* The requested source could not be found.
* @sample AmazonDocDB.CreateEventSubscription
* @see AWS
* API Documentation
*/
EventSubscription createEventSubscription(CreateEventSubscriptionRequest createEventSubscriptionRequest);
/**
*
* Creates an Amazon DocumentDB global cluster that can span multiple multiple Amazon Web Services Regions. The
* global cluster contains one primary cluster with read-write capability, and up-to give read-only secondary
* clusters. Global clusters uses storage-based fast replication across regions with latencies less than one second,
* using dedicated infrastructure with no impact to your workload’s performance.
*
*
*
* You can create a global cluster that is initially empty, and then add a primary and a secondary to it. Or you can
* specify an existing cluster during the create operation, and this cluster becomes the primary of the global
* cluster.
*
*
*
* This action only applies to Amazon DocumentDB clusters.
*
*
*
* @param createGlobalClusterRequest
* Represents the input to CreateGlobalCluster.
* @return Result of the CreateGlobalCluster operation returned by the service.
* @throws GlobalClusterAlreadyExistsException
* The GlobalClusterIdentifier
already exists. Choose a new global cluster identifier (unique
* name) to create a new global cluster.
* @throws GlobalClusterQuotaExceededException
* The number of global clusters for this account is already at the maximum allowed.
* @throws InvalidDBClusterStateException
* The cluster isn't in a valid state.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @sample AmazonDocDB.CreateGlobalCluster
* @see AWS API
* Documentation
*/
GlobalCluster createGlobalCluster(CreateGlobalClusterRequest createGlobalClusterRequest);
/**
*
* Deletes a previously provisioned cluster. When you delete a cluster, all automated backups for that cluster are
* deleted and can't be recovered. Manual DB cluster snapshots of the specified cluster are not deleted.
*
*
*
* @param deleteDBClusterRequest
* Represents the input to DeleteDBCluster.
* @return Result of the DeleteDBCluster operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @throws InvalidDBClusterStateException
* The cluster isn't in a valid state.
* @throws DBClusterSnapshotAlreadyExistsException
* You already have a cluster snapshot with the given identifier.
* @throws SnapshotQuotaExceededException
* The request would cause you to exceed the allowed number of snapshots.
* @throws InvalidDBClusterSnapshotStateException
* The provided value isn't a valid cluster snapshot state.
* @sample AmazonDocDB.DeleteDBCluster
* @see AWS API
* Documentation
*/
DBCluster deleteDBCluster(DeleteDBClusterRequest deleteDBClusterRequest);
/**
*
* Deletes a specified cluster parameter group. The cluster parameter group to be deleted can't be associated with
* any clusters.
*
*
* @param deleteDBClusterParameterGroupRequest
* Represents the input to DeleteDBClusterParameterGroup.
* @return Result of the DeleteDBClusterParameterGroup operation returned by the service.
* @throws InvalidDBParameterGroupStateException
* The parameter group is in use, or it is in a state that is not valid. If you are trying to delete the
* parameter group, you can't delete it when the parameter group is in this state.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName
doesn't refer to an existing parameter group.
* @sample AmazonDocDB.DeleteDBClusterParameterGroup
* @see AWS API Documentation
*/
DeleteDBClusterParameterGroupResult deleteDBClusterParameterGroup(DeleteDBClusterParameterGroupRequest deleteDBClusterParameterGroupRequest);
/**
*
* Deletes a cluster snapshot. If the snapshot is being copied, the copy operation is terminated.
*
*
*
* The cluster snapshot must be in the available
state to be deleted.
*
*
*
* @param deleteDBClusterSnapshotRequest
* Represents the input to DeleteDBClusterSnapshot.
* @return Result of the DeleteDBClusterSnapshot operation returned by the service.
* @throws InvalidDBClusterSnapshotStateException
* The provided value isn't a valid cluster snapshot state.
* @throws DBClusterSnapshotNotFoundException
* DBClusterSnapshotIdentifier
doesn't refer to an existing cluster snapshot.
* @sample AmazonDocDB.DeleteDBClusterSnapshot
* @see AWS
* API Documentation
*/
DBClusterSnapshot deleteDBClusterSnapshot(DeleteDBClusterSnapshotRequest deleteDBClusterSnapshotRequest);
/**
*
* Deletes a previously provisioned instance.
*
*
* @param deleteDBInstanceRequest
* Represents the input to DeleteDBInstance.
* @return Result of the DeleteDBInstance operation returned by the service.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier
doesn't refer to an existing instance.
* @throws InvalidDBInstanceStateException
* The specified instance isn't in the available state.
* @throws DBSnapshotAlreadyExistsException
* DBSnapshotIdentifier
is already being used by an existing snapshot.
* @throws SnapshotQuotaExceededException
* The request would cause you to exceed the allowed number of snapshots.
* @throws InvalidDBClusterStateException
* The cluster isn't in a valid state.
* @sample AmazonDocDB.DeleteDBInstance
* @see AWS API
* Documentation
*/
DBInstance deleteDBInstance(DeleteDBInstanceRequest deleteDBInstanceRequest);
/**
*
* Deletes a subnet group.
*
*
*
* The specified database subnet group must not be associated with any DB instances.
*
*
*
* @param deleteDBSubnetGroupRequest
* Represents the input to DeleteDBSubnetGroup.
* @return Result of the DeleteDBSubnetGroup operation returned by the service.
* @throws InvalidDBSubnetGroupStateException
* The subnet group can't be deleted because it's in use.
* @throws InvalidDBSubnetStateException
* The subnet isn't in the available state.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName
doesn't refer to an existing subnet group.
* @sample AmazonDocDB.DeleteDBSubnetGroup
* @see AWS API
* Documentation
*/
DeleteDBSubnetGroupResult deleteDBSubnetGroup(DeleteDBSubnetGroupRequest deleteDBSubnetGroupRequest);
/**
*
* Deletes an Amazon DocumentDB event notification subscription.
*
*
* @param deleteEventSubscriptionRequest
* Represents the input to DeleteEventSubscription.
* @return Result of the DeleteEventSubscription operation returned by the service.
* @throws SubscriptionNotFoundException
* The subscription name does not exist.
* @throws InvalidEventSubscriptionStateException
* Someone else might be modifying a subscription. Wait a few seconds, and try again.
* @sample AmazonDocDB.DeleteEventSubscription
* @see AWS
* API Documentation
*/
EventSubscription deleteEventSubscription(DeleteEventSubscriptionRequest deleteEventSubscriptionRequest);
/**
*
* Deletes a global cluster. The primary and secondary clusters must already be detached or deleted before
* attempting to delete a global cluster.
*
*
*
* This action only applies to Amazon DocumentDB clusters.
*
*
*
* @param deleteGlobalClusterRequest
* Represents the input to DeleteGlobalCluster.
* @return Result of the DeleteGlobalCluster operation returned by the service.
* @throws GlobalClusterNotFoundException
* The GlobalClusterIdentifier
doesn't refer to an existing global cluster.
* @throws InvalidGlobalClusterStateException
* The requested operation can't be performed while the cluster is in this state.
* @sample AmazonDocDB.DeleteGlobalCluster
* @see AWS API
* Documentation
*/
GlobalCluster deleteGlobalCluster(DeleteGlobalClusterRequest deleteGlobalClusterRequest);
/**
*
* Returns a list of certificate authority (CA) certificates provided by Amazon DocumentDB for this Amazon Web
* Services account.
*
*
* @param describeCertificatesRequest
* @return Result of the DescribeCertificates operation returned by the service.
* @throws CertificateNotFoundException
* CertificateIdentifier
doesn't refer to an existing certificate.
* @sample AmazonDocDB.DescribeCertificates
* @see AWS API
* Documentation
*/
DescribeCertificatesResult describeCertificates(DescribeCertificatesRequest describeCertificatesRequest);
/**
*
* Returns a list of DBClusterParameterGroup
descriptions. If a
* DBClusterParameterGroupName
parameter is specified, the list contains only the description of the
* specified cluster parameter group.
*
*
* @param describeDBClusterParameterGroupsRequest
* Represents the input to DescribeDBClusterParameterGroups.
* @return Result of the DescribeDBClusterParameterGroups operation returned by the service.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName
doesn't refer to an existing parameter group.
* @sample AmazonDocDB.DescribeDBClusterParameterGroups
* @see AWS API Documentation
*/
DescribeDBClusterParameterGroupsResult describeDBClusterParameterGroups(DescribeDBClusterParameterGroupsRequest describeDBClusterParameterGroupsRequest);
/**
*
* Returns the detailed parameter list for a particular cluster parameter group.
*
*
* @param describeDBClusterParametersRequest
* Represents the input to DescribeDBClusterParameters.
* @return Result of the DescribeDBClusterParameters operation returned by the service.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName
doesn't refer to an existing parameter group.
* @sample AmazonDocDB.DescribeDBClusterParameters
* @see AWS API Documentation
*/
DescribeDBClusterParametersResult describeDBClusterParameters(DescribeDBClusterParametersRequest describeDBClusterParametersRequest);
/**
*
* Returns a list of cluster snapshot attribute names and values for a manual DB cluster snapshot.
*
*
* When you share snapshots with other Amazon Web Services accounts,
* DescribeDBClusterSnapshotAttributes
returns the restore
attribute and a list of IDs for
* the Amazon Web Services accounts that are authorized to copy or restore the manual cluster snapshot. If
* all
is included in the list of values for the restore
attribute, then the manual
* cluster snapshot is public and can be copied or restored by all Amazon Web Services accounts.
*
*
* @param describeDBClusterSnapshotAttributesRequest
* Represents the input to DescribeDBClusterSnapshotAttributes.
* @return Result of the DescribeDBClusterSnapshotAttributes operation returned by the service.
* @throws DBClusterSnapshotNotFoundException
* DBClusterSnapshotIdentifier
doesn't refer to an existing cluster snapshot.
* @sample AmazonDocDB.DescribeDBClusterSnapshotAttributes
* @see AWS API Documentation
*/
DBClusterSnapshotAttributesResult describeDBClusterSnapshotAttributes(DescribeDBClusterSnapshotAttributesRequest describeDBClusterSnapshotAttributesRequest);
/**
*
* Returns information about cluster snapshots. This API operation supports pagination.
*
*
* @param describeDBClusterSnapshotsRequest
* Represents the input to DescribeDBClusterSnapshots.
* @return Result of the DescribeDBClusterSnapshots operation returned by the service.
* @throws DBClusterSnapshotNotFoundException
* DBClusterSnapshotIdentifier
doesn't refer to an existing cluster snapshot.
* @sample AmazonDocDB.DescribeDBClusterSnapshots
* @see AWS API Documentation
*/
DescribeDBClusterSnapshotsResult describeDBClusterSnapshots(DescribeDBClusterSnapshotsRequest describeDBClusterSnapshotsRequest);
/**
*
* Returns information about provisioned Amazon DocumentDB clusters. This API operation supports pagination. For
* certain management features such as cluster and instance lifecycle management, Amazon DocumentDB leverages
* operational technology that is shared with Amazon RDS and Amazon Neptune. Use the
* filterName=engine,Values=docdb
filter parameter to return only Amazon DocumentDB clusters.
*
*
* @param describeDBClustersRequest
* Represents the input to DescribeDBClusters.
* @return Result of the DescribeDBClusters operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @sample AmazonDocDB.DescribeDBClusters
* @see AWS API
* Documentation
*/
DescribeDBClustersResult describeDBClusters(DescribeDBClustersRequest describeDBClustersRequest);
/**
*
* Returns a list of the available engines.
*
*
* @param describeDBEngineVersionsRequest
* Represents the input to DescribeDBEngineVersions.
* @return Result of the DescribeDBEngineVersions operation returned by the service.
* @sample AmazonDocDB.DescribeDBEngineVersions
* @see AWS
* API Documentation
*/
DescribeDBEngineVersionsResult describeDBEngineVersions(DescribeDBEngineVersionsRequest describeDBEngineVersionsRequest);
/**
*
* Returns information about provisioned Amazon DocumentDB instances. This API supports pagination.
*
*
* @param describeDBInstancesRequest
* Represents the input to DescribeDBInstances.
* @return Result of the DescribeDBInstances operation returned by the service.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier
doesn't refer to an existing instance.
* @sample AmazonDocDB.DescribeDBInstances
* @see AWS API
* Documentation
*/
DescribeDBInstancesResult describeDBInstances(DescribeDBInstancesRequest describeDBInstancesRequest);
/**
*
* Returns a list of DBSubnetGroup
descriptions. If a DBSubnetGroupName
is specified, the
* list will contain only the descriptions of the specified DBSubnetGroup
.
*
*
* @param describeDBSubnetGroupsRequest
* Represents the input to DescribeDBSubnetGroups.
* @return Result of the DescribeDBSubnetGroups operation returned by the service.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName
doesn't refer to an existing subnet group.
* @sample AmazonDocDB.DescribeDBSubnetGroups
* @see AWS
* API Documentation
*/
DescribeDBSubnetGroupsResult describeDBSubnetGroups(DescribeDBSubnetGroupsRequest describeDBSubnetGroupsRequest);
/**
*
* Returns the default engine and system parameter information for the cluster database engine.
*
*
* @param describeEngineDefaultClusterParametersRequest
* Represents the input to DescribeEngineDefaultClusterParameters.
* @return Result of the DescribeEngineDefaultClusterParameters operation returned by the service.
* @sample AmazonDocDB.DescribeEngineDefaultClusterParameters
* @see AWS API Documentation
*/
EngineDefaults describeEngineDefaultClusterParameters(DescribeEngineDefaultClusterParametersRequest describeEngineDefaultClusterParametersRequest);
/**
*
* Displays a list of categories for all event source types, or, if specified, for a specified source type.
*
*
* @param describeEventCategoriesRequest
* Represents the input to DescribeEventCategories.
* @return Result of the DescribeEventCategories operation returned by the service.
* @sample AmazonDocDB.DescribeEventCategories
* @see AWS
* API Documentation
*/
DescribeEventCategoriesResult describeEventCategories(DescribeEventCategoriesRequest describeEventCategoriesRequest);
/**
*
* Lists all the subscription descriptions for a customer account. The description for a subscription includes
* SubscriptionName
, SNSTopicARN
, CustomerID
, SourceType
,
* SourceID
, CreationTime
, and Status
.
*
*
* If you specify a SubscriptionName
, lists the description for that subscription.
*
*
* @param describeEventSubscriptionsRequest
* Represents the input to DescribeEventSubscriptions.
* @return Result of the DescribeEventSubscriptions operation returned by the service.
* @throws SubscriptionNotFoundException
* The subscription name does not exist.
* @sample AmazonDocDB.DescribeEventSubscriptions
* @see AWS API Documentation
*/
DescribeEventSubscriptionsResult describeEventSubscriptions(DescribeEventSubscriptionsRequest describeEventSubscriptionsRequest);
/**
*
* Returns events related to instances, security groups, snapshots, and DB parameter groups for the past 14 days.
* You can obtain events specific to a particular DB instance, security group, snapshot, or parameter group by
* providing the name as a parameter. By default, the events of the past hour are returned.
*
*
* @param describeEventsRequest
* Represents the input to DescribeEvents.
* @return Result of the DescribeEvents operation returned by the service.
* @sample AmazonDocDB.DescribeEvents
* @see AWS API
* Documentation
*/
DescribeEventsResult describeEvents(DescribeEventsRequest describeEventsRequest);
/**
*
* Returns information about Amazon DocumentDB global clusters. This API supports pagination.
*
*
*
* This action only applies to Amazon DocumentDB clusters.
*
*
*
* @param describeGlobalClustersRequest
* @return Result of the DescribeGlobalClusters operation returned by the service.
* @throws GlobalClusterNotFoundException
* The GlobalClusterIdentifier
doesn't refer to an existing global cluster.
* @sample AmazonDocDB.DescribeGlobalClusters
* @see AWS
* API Documentation
*/
DescribeGlobalClustersResult describeGlobalClusters(DescribeGlobalClustersRequest describeGlobalClustersRequest);
/**
*
* Returns a list of orderable instance options for the specified engine.
*
*
* @param describeOrderableDBInstanceOptionsRequest
* Represents the input to DescribeOrderableDBInstanceOptions.
* @return Result of the DescribeOrderableDBInstanceOptions operation returned by the service.
* @sample AmazonDocDB.DescribeOrderableDBInstanceOptions
* @see AWS API Documentation
*/
DescribeOrderableDBInstanceOptionsResult describeOrderableDBInstanceOptions(
DescribeOrderableDBInstanceOptionsRequest describeOrderableDBInstanceOptionsRequest);
/**
*
* Returns a list of resources (for example, instances) that have at least one pending maintenance action.
*
*
* @param describePendingMaintenanceActionsRequest
* Represents the input to DescribePendingMaintenanceActions.
* @return Result of the DescribePendingMaintenanceActions operation returned by the service.
* @throws ResourceNotFoundException
* The specified resource ID was not found.
* @sample AmazonDocDB.DescribePendingMaintenanceActions
* @see AWS API Documentation
*/
DescribePendingMaintenanceActionsResult describePendingMaintenanceActions(DescribePendingMaintenanceActionsRequest describePendingMaintenanceActionsRequest);
/**
*
* Forces a failover for a cluster.
*
*
* A failover for a cluster promotes one of the Amazon DocumentDB replicas (read-only instances) in the cluster to
* be the primary instance (the cluster writer).
*
*
* If the primary instance fails, Amazon DocumentDB automatically fails over to an Amazon DocumentDB replica, if one
* exists. You can force a failover when you want to simulate a failure of a primary instance for testing.
*
*
* @param failoverDBClusterRequest
* Represents the input to FailoverDBCluster.
* @return Result of the FailoverDBCluster operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @throws InvalidDBClusterStateException
* The cluster isn't in a valid state.
* @throws InvalidDBInstanceStateException
* The specified instance isn't in the available state.
* @sample AmazonDocDB.FailoverDBCluster
* @see AWS API
* Documentation
*/
DBCluster failoverDBCluster(FailoverDBClusterRequest failoverDBClusterRequest);
/**
*
* Lists all tags on an Amazon DocumentDB resource.
*
*
* @param listTagsForResourceRequest
* Represents the input to ListTagsForResource.
* @return Result of the ListTagsForResource operation returned by the service.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier
doesn't refer to an existing instance.
* @throws DBSnapshotNotFoundException
* DBSnapshotIdentifier
doesn't refer to an existing snapshot.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @sample AmazonDocDB.ListTagsForResource
* @see AWS API
* Documentation
*/
ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest);
/**
*
* Modifies a setting for an Amazon DocumentDB cluster. You can change one or more database configuration parameters
* by specifying these parameters and the new values in the request.
*
*
* @param modifyDBClusterRequest
* Represents the input to ModifyDBCluster.
* @return Result of the ModifyDBCluster operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @throws InvalidDBClusterStateException
* The cluster isn't in a valid state.
* @throws StorageQuotaExceededException
* The request would cause you to exceed the allowed amount of storage available across all instances.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName
doesn't refer to an existing subnet group.
* @throws InvalidVPCNetworkStateException
* The subnet group doesn't cover all Availability Zones after it is created because of changes that were
* made.
* @throws InvalidDBSubnetGroupStateException
* The subnet group can't be deleted because it's in use.
* @throws InvalidSubnetException
* The requested subnet is not valid, or multiple subnets were requested that are not all in a common
* virtual private cloud (VPC).
* @throws DBClusterParameterGroupNotFoundException
* DBClusterParameterGroupName
doesn't refer to an existing cluster parameter group.
* @throws InvalidDBSecurityGroupStateException
* The state of the security group doesn't allow deletion.
* @throws InvalidDBInstanceStateException
* The specified instance isn't in the available state.
* @throws DBClusterAlreadyExistsException
* You already have a cluster with the given identifier.
* @sample AmazonDocDB.ModifyDBCluster
* @see AWS API
* Documentation
*/
DBCluster modifyDBCluster(ModifyDBClusterRequest modifyDBClusterRequest);
/**
*
* Modifies the parameters of a cluster parameter group. To modify more than one parameter, submit a list of the
* following: ParameterName
, ParameterValue
, and ApplyMethod
. A maximum of 20
* parameters can be modified in a single request.
*
*
*
* Changes to dynamic parameters are applied immediately. Changes to static parameters require a reboot or
* maintenance window before the change can take effect.
*
*
*
* After you create a cluster parameter group, you should wait at least 5 minutes before creating your first cluster
* that uses that cluster parameter group as the default parameter group. This allows Amazon DocumentDB to fully
* complete the create action before the parameter group is used as the default for a new cluster. This step is
* especially important for parameters that are critical when creating the default database for a cluster, such as
* the character set for the default database defined by the character_set_database
parameter.
*
*
*
* @param modifyDBClusterParameterGroupRequest
* Represents the input to ModifyDBClusterParameterGroup.
* @return Result of the ModifyDBClusterParameterGroup operation returned by the service.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName
doesn't refer to an existing parameter group.
* @throws InvalidDBParameterGroupStateException
* The parameter group is in use, or it is in a state that is not valid. If you are trying to delete the
* parameter group, you can't delete it when the parameter group is in this state.
* @sample AmazonDocDB.ModifyDBClusterParameterGroup
* @see AWS API Documentation
*/
ModifyDBClusterParameterGroupResult modifyDBClusterParameterGroup(ModifyDBClusterParameterGroupRequest modifyDBClusterParameterGroupRequest);
/**
*
* Adds an attribute and values to, or removes an attribute and values from, a manual cluster snapshot.
*
*
* To share a manual cluster snapshot with other Amazon Web Services accounts, specify restore
as the
* AttributeName
, and use the ValuesToAdd
parameter to add a list of IDs of the Amazon Web
* Services accounts that are authorized to restore the manual cluster snapshot. Use the value all
to
* make the manual cluster snapshot public, which means that it can be copied or restored by all Amazon Web Services
* accounts. Do not add the all
value for any manual cluster snapshots that contain private information
* that you don't want available to all Amazon Web Services accounts. If a manual cluster snapshot is encrypted, it
* can be shared, but only by specifying a list of authorized Amazon Web Services account IDs for the
* ValuesToAdd
parameter. You can't use all
as a value for that parameter in this case.
*
*
* @param modifyDBClusterSnapshotAttributeRequest
* Represents the input to ModifyDBClusterSnapshotAttribute.
* @return Result of the ModifyDBClusterSnapshotAttribute operation returned by the service.
* @throws DBClusterSnapshotNotFoundException
* DBClusterSnapshotIdentifier
doesn't refer to an existing cluster snapshot.
* @throws InvalidDBClusterSnapshotStateException
* The provided value isn't a valid cluster snapshot state.
* @throws SharedSnapshotQuotaExceededException
* You have exceeded the maximum number of accounts that you can share a manual DB snapshot with.
* @sample AmazonDocDB.ModifyDBClusterSnapshotAttribute
* @see AWS API Documentation
*/
DBClusterSnapshotAttributesResult modifyDBClusterSnapshotAttribute(ModifyDBClusterSnapshotAttributeRequest modifyDBClusterSnapshotAttributeRequest);
/**
*
* Modifies settings for an instance. You can change one or more database configuration parameters by specifying
* these parameters and the new values in the request.
*
*
* @param modifyDBInstanceRequest
* Represents the input to ModifyDBInstance.
* @return Result of the ModifyDBInstance operation returned by the service.
* @throws InvalidDBInstanceStateException
* The specified instance isn't in the available state.
* @throws InvalidDBSecurityGroupStateException
* The state of the security group doesn't allow deletion.
* @throws DBInstanceAlreadyExistsException
* You already have a instance with the given identifier.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier
doesn't refer to an existing instance.
* @throws DBSecurityGroupNotFoundException
* DBSecurityGroupName
doesn't refer to an existing security group.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName
doesn't refer to an existing parameter group.
* @throws InsufficientDBInstanceCapacityException
* The specified instance class isn't available in the specified Availability Zone.
* @throws StorageQuotaExceededException
* The request would cause you to exceed the allowed amount of storage available across all instances.
* @throws InvalidVPCNetworkStateException
* The subnet group doesn't cover all Availability Zones after it is created because of changes that were
* made.
* @throws DBUpgradeDependencyFailureException
* The upgrade failed because a resource that the depends on can't be modified.
* @throws StorageTypeNotSupportedException
* Storage of the specified StorageType
can't be associated with the DB instance.
* @throws AuthorizationNotFoundException
* The specified CIDR IP or Amazon EC2 security group isn't authorized for the specified security group.
*
* Amazon DocumentDB also might not be authorized to perform necessary actions on your behalf using IAM.
* @throws CertificateNotFoundException
* CertificateIdentifier
doesn't refer to an existing certificate.
* @sample AmazonDocDB.ModifyDBInstance
* @see AWS API
* Documentation
*/
DBInstance modifyDBInstance(ModifyDBInstanceRequest modifyDBInstanceRequest);
/**
*
* Modifies an existing subnet group. subnet groups must contain at least one subnet in at least two Availability
* Zones in the Amazon Web Services Region.
*
*
* @param modifyDBSubnetGroupRequest
* Represents the input to ModifyDBSubnetGroup.
* @return Result of the ModifyDBSubnetGroup operation returned by the service.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName
doesn't refer to an existing subnet group.
* @throws DBSubnetQuotaExceededException
* The request would cause you to exceed the allowed number of subnets in a subnet group.
* @throws SubnetAlreadyInUseException
* The subnet is already in use in the Availability Zone.
* @throws DBSubnetGroupDoesNotCoverEnoughAZsException
* Subnets in the subnet group should cover at least two Availability Zones unless there is only one
* Availability Zone.
* @throws InvalidSubnetException
* The requested subnet is not valid, or multiple subnets were requested that are not all in a common
* virtual private cloud (VPC).
* @sample AmazonDocDB.ModifyDBSubnetGroup
* @see AWS API
* Documentation
*/
DBSubnetGroup modifyDBSubnetGroup(ModifyDBSubnetGroupRequest modifyDBSubnetGroupRequest);
/**
*
* Modifies an existing Amazon DocumentDB event notification subscription.
*
*
* @param modifyEventSubscriptionRequest
* Represents the input to ModifyEventSubscription.
* @return Result of the ModifyEventSubscription operation returned by the service.
* @throws EventSubscriptionQuotaExceededException
* You have reached the maximum number of event subscriptions.
* @throws SubscriptionNotFoundException
* The subscription name does not exist.
* @throws SNSInvalidTopicException
* Amazon SNS has responded that there is a problem with the specified topic.
* @throws SNSNoAuthorizationException
* You do not have permission to publish to the SNS topic Amazon Resource Name (ARN).
* @throws SNSTopicArnNotFoundException
* The SNS topic Amazon Resource Name (ARN) does not exist.
* @throws SubscriptionCategoryNotFoundException
* The provided category does not exist.
* @sample AmazonDocDB.ModifyEventSubscription
* @see AWS
* API Documentation
*/
EventSubscription modifyEventSubscription(ModifyEventSubscriptionRequest modifyEventSubscriptionRequest);
/**
*
* Modify a setting for an Amazon DocumentDB global cluster. You can change one or more configuration parameters
* (for example: deletion protection), or the global cluster identifier by specifying these parameters and the new
* values in the request.
*
*
*
* This action only applies to Amazon DocumentDB clusters.
*
*
*
* @param modifyGlobalClusterRequest
* Represents the input to ModifyGlobalCluster.
* @return Result of the ModifyGlobalCluster operation returned by the service.
* @throws GlobalClusterNotFoundException
* The GlobalClusterIdentifier
doesn't refer to an existing global cluster.
* @throws InvalidGlobalClusterStateException
* The requested operation can't be performed while the cluster is in this state.
* @sample AmazonDocDB.ModifyGlobalCluster
* @see AWS API
* Documentation
*/
GlobalCluster modifyGlobalCluster(ModifyGlobalClusterRequest modifyGlobalClusterRequest);
/**
*
* You might need to reboot your instance, usually for maintenance reasons. For example, if you make certain
* changes, or if you change the cluster parameter group that is associated with the instance, you must reboot the
* instance for the changes to take effect.
*
*
* Rebooting an instance restarts the database engine service. Rebooting an instance results in a momentary outage,
* during which the instance status is set to rebooting.
*
*
* @param rebootDBInstanceRequest
* Represents the input to RebootDBInstance.
* @return Result of the RebootDBInstance operation returned by the service.
* @throws InvalidDBInstanceStateException
* The specified instance isn't in the available state.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier
doesn't refer to an existing instance.
* @sample AmazonDocDB.RebootDBInstance
* @see AWS API
* Documentation
*/
DBInstance rebootDBInstance(RebootDBInstanceRequest rebootDBInstanceRequest);
/**
*
* Detaches an Amazon DocumentDB secondary cluster from a global cluster. The cluster becomes a standalone cluster
* with read-write capability instead of being read-only and receiving data from a primary in a different region.
*
*
*
* This action only applies to Amazon DocumentDB clusters.
*
*
*
* @param removeFromGlobalClusterRequest
* Represents the input to RemoveFromGlobalCluster.
* @return Result of the RemoveFromGlobalCluster operation returned by the service.
* @throws GlobalClusterNotFoundException
* The GlobalClusterIdentifier
doesn't refer to an existing global cluster.
* @throws InvalidGlobalClusterStateException
* The requested operation can't be performed while the cluster is in this state.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @sample AmazonDocDB.RemoveFromGlobalCluster
* @see AWS
* API Documentation
*/
GlobalCluster removeFromGlobalCluster(RemoveFromGlobalClusterRequest removeFromGlobalClusterRequest);
/**
*
* Removes a source identifier from an existing Amazon DocumentDB event notification subscription.
*
*
* @param removeSourceIdentifierFromSubscriptionRequest
* Represents the input to RemoveSourceIdentifierFromSubscription.
* @return Result of the RemoveSourceIdentifierFromSubscription operation returned by the service.
* @throws SubscriptionNotFoundException
* The subscription name does not exist.
* @throws SourceNotFoundException
* The requested source could not be found.
* @sample AmazonDocDB.RemoveSourceIdentifierFromSubscription
* @see AWS API Documentation
*/
EventSubscription removeSourceIdentifierFromSubscription(RemoveSourceIdentifierFromSubscriptionRequest removeSourceIdentifierFromSubscriptionRequest);
/**
*
* Removes metadata tags from an Amazon DocumentDB resource.
*
*
* @param removeTagsFromResourceRequest
* Represents the input to RemoveTagsFromResource.
* @return Result of the RemoveTagsFromResource operation returned by the service.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier
doesn't refer to an existing instance.
* @throws DBSnapshotNotFoundException
* DBSnapshotIdentifier
doesn't refer to an existing snapshot.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @sample AmazonDocDB.RemoveTagsFromResource
* @see AWS
* API Documentation
*/
RemoveTagsFromResourceResult removeTagsFromResource(RemoveTagsFromResourceRequest removeTagsFromResourceRequest);
/**
*
* Modifies the parameters of a cluster parameter group to the default value. To reset specific parameters, submit a
* list of the following: ParameterName
and ApplyMethod
. To reset the entire cluster
* parameter group, specify the DBClusterParameterGroupName
and ResetAllParameters
* parameters.
*
*
* When you reset the entire group, dynamic parameters are updated immediately and static parameters are set to
* pending-reboot
to take effect on the next DB instance reboot.
*
*
* @param resetDBClusterParameterGroupRequest
* Represents the input to ResetDBClusterParameterGroup.
* @return Result of the ResetDBClusterParameterGroup operation returned by the service.
* @throws InvalidDBParameterGroupStateException
* The parameter group is in use, or it is in a state that is not valid. If you are trying to delete the
* parameter group, you can't delete it when the parameter group is in this state.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName
doesn't refer to an existing parameter group.
* @sample AmazonDocDB.ResetDBClusterParameterGroup
* @see AWS API Documentation
*/
ResetDBClusterParameterGroupResult resetDBClusterParameterGroup(ResetDBClusterParameterGroupRequest resetDBClusterParameterGroupRequest);
/**
*
* Creates a new cluster from a snapshot or cluster snapshot.
*
*
* If a snapshot is specified, the target cluster is created from the source DB snapshot with a default
* configuration and default security group.
*
*
* If a cluster snapshot is specified, the target cluster is created from the source cluster restore point with the
* same configuration as the original source DB cluster, except that the new cluster is created with the default
* security group.
*
*
* @param restoreDBClusterFromSnapshotRequest
* Represents the input to RestoreDBClusterFromSnapshot.
* @return Result of the RestoreDBClusterFromSnapshot operation returned by the service.
* @throws DBClusterAlreadyExistsException
* You already have a cluster with the given identifier.
* @throws DBClusterQuotaExceededException
* The cluster can't be created because you have reached the maximum allowed quota of clusters.
* @throws StorageQuotaExceededException
* The request would cause you to exceed the allowed amount of storage available across all instances.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName
doesn't refer to an existing subnet group.
* @throws DBSnapshotNotFoundException
* DBSnapshotIdentifier
doesn't refer to an existing snapshot.
* @throws DBClusterSnapshotNotFoundException
* DBClusterSnapshotIdentifier
doesn't refer to an existing cluster snapshot.
* @throws InsufficientDBClusterCapacityException
* The cluster doesn't have enough capacity for the current operation.
* @throws InsufficientStorageClusterCapacityException
* There is not enough storage available for the current action. You might be able to resolve this error by
* updating your subnet group to use different Availability Zones that have more storage available.
* @throws InvalidDBSnapshotStateException
* The state of the snapshot doesn't allow deletion.
* @throws InvalidDBClusterSnapshotStateException
* The provided value isn't a valid cluster snapshot state.
* @throws StorageQuotaExceededException
* The request would cause you to exceed the allowed amount of storage available across all instances.
* @throws InvalidVPCNetworkStateException
* The subnet group doesn't cover all Availability Zones after it is created because of changes that were
* made.
* @throws InvalidRestoreException
* You cannot restore from a virtual private cloud (VPC) backup to a non-VPC DB instance.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName
doesn't refer to an existing subnet group.
* @throws InvalidSubnetException
* The requested subnet is not valid, or multiple subnets were requested that are not all in a common
* virtual private cloud (VPC).
* @throws KMSKeyNotAccessibleException
* An error occurred when accessing an KMS key.
* @sample AmazonDocDB.RestoreDBClusterFromSnapshot
* @see AWS API Documentation
*/
DBCluster restoreDBClusterFromSnapshot(RestoreDBClusterFromSnapshotRequest restoreDBClusterFromSnapshotRequest);
/**
*
* Restores a cluster to an arbitrary point in time. Users can restore to any point in time before
* LatestRestorableTime
for up to BackupRetentionPeriod
days. The target cluster is
* created from the source cluster with the same configuration as the original cluster, except that the new cluster
* is created with the default security group.
*
*
* @param restoreDBClusterToPointInTimeRequest
* Represents the input to RestoreDBClusterToPointInTime.
* @return Result of the RestoreDBClusterToPointInTime operation returned by the service.
* @throws DBClusterAlreadyExistsException
* You already have a cluster with the given identifier.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @throws DBClusterQuotaExceededException
* The cluster can't be created because you have reached the maximum allowed quota of clusters.
* @throws DBClusterSnapshotNotFoundException
* DBClusterSnapshotIdentifier
doesn't refer to an existing cluster snapshot.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName
doesn't refer to an existing subnet group.
* @throws InsufficientDBClusterCapacityException
* The cluster doesn't have enough capacity for the current operation.
* @throws InsufficientStorageClusterCapacityException
* There is not enough storage available for the current action. You might be able to resolve this error by
* updating your subnet group to use different Availability Zones that have more storage available.
* @throws InvalidDBClusterSnapshotStateException
* The provided value isn't a valid cluster snapshot state.
* @throws InvalidDBClusterStateException
* The cluster isn't in a valid state.
* @throws InvalidDBSnapshotStateException
* The state of the snapshot doesn't allow deletion.
* @throws InvalidRestoreException
* You cannot restore from a virtual private cloud (VPC) backup to a non-VPC DB instance.
* @throws InvalidSubnetException
* The requested subnet is not valid, or multiple subnets were requested that are not all in a common
* virtual private cloud (VPC).
* @throws InvalidVPCNetworkStateException
* The subnet group doesn't cover all Availability Zones after it is created because of changes that were
* made.
* @throws KMSKeyNotAccessibleException
* An error occurred when accessing an KMS key.
* @throws StorageQuotaExceededException
* The request would cause you to exceed the allowed amount of storage available across all instances.
* @sample AmazonDocDB.RestoreDBClusterToPointInTime
* @see AWS API Documentation
*/
DBCluster restoreDBClusterToPointInTime(RestoreDBClusterToPointInTimeRequest restoreDBClusterToPointInTimeRequest);
/**
*
* Restarts the stopped cluster that is specified by DBClusterIdentifier
. For more information, see Stopping and
* Starting an Amazon DocumentDB Cluster.
*
*
* @param startDBClusterRequest
* @return Result of the StartDBCluster operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @throws InvalidDBClusterStateException
* The cluster isn't in a valid state.
* @throws InvalidDBInstanceStateException
* The specified instance isn't in the available state.
* @sample AmazonDocDB.StartDBCluster
* @see AWS API
* Documentation
*/
DBCluster startDBCluster(StartDBClusterRequest startDBClusterRequest);
/**
*
* Stops the running cluster that is specified by DBClusterIdentifier
. The cluster must be in the
* available state. For more information, see Stopping and
* Starting an Amazon DocumentDB Cluster.
*
*
* @param stopDBClusterRequest
* @return Result of the StopDBCluster operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @throws InvalidDBClusterStateException
* The cluster isn't in a valid state.
* @throws InvalidDBInstanceStateException
* The specified instance isn't in the available state.
* @sample AmazonDocDB.StopDBCluster
* @see AWS API
* Documentation
*/
DBCluster stopDBCluster(StopDBClusterRequest stopDBClusterRequest);
/**
*
* Switches over the specified secondary Amazon DocumentDB cluster to be the new primary Amazon DocumentDB cluster
* in the global database cluster.
*
*
* @param switchoverGlobalClusterRequest
* @return Result of the SwitchoverGlobalCluster operation returned by the service.
* @throws GlobalClusterNotFoundException
* The GlobalClusterIdentifier
doesn't refer to an existing global cluster.
* @throws InvalidGlobalClusterStateException
* The requested operation can't be performed while the cluster is in this state.
* @throws DBClusterNotFoundException
* DBClusterIdentifier
doesn't refer to an existing cluster.
* @throws InvalidDBClusterStateException
* The cluster isn't in a valid state.
* @sample AmazonDocDB.SwitchoverGlobalCluster
* @see AWS
* API Documentation
*/
GlobalCluster switchoverGlobalCluster(SwitchoverGlobalClusterRequest switchoverGlobalClusterRequest);
/**
* Shuts down this client object, releasing any resources that might be held open. This is an optional method, and
* callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client
* has been shutdown, it should not be used to make any more requests.
*/
void shutdown();
/**
* Returns additional metadata for a previously executed successful request, typically used for debugging issues
* where a service isn't acting as expected. This data isn't considered part of the result data returned by an
* operation, so it's available through this separate, diagnostic interface.
*
* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic
* information for an executed request, you should use this method to retrieve it as soon as possible after
* executing a request.
*
* @param request
* The originally executed request.
*
* @return The response metadata for the specified request, or null if none is available.
*/
ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request);
AmazonDocDBWaiters waiters();
}