com.amazonaws.services.neptune.AmazonNeptune Maven / Gradle / Ivy
Show all versions of aws-java-sdk-neptune 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.neptune;
import javax.annotation.Generated;
import com.amazonaws.*;
import com.amazonaws.regions.*;
import com.amazonaws.services.neptune.model.*;
import com.amazonaws.services.neptune.waiters.AmazonNeptuneWaiters;
/**
* Interface for accessing Amazon Neptune.
*
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from
* {@link com.amazonaws.services.neptune.AbstractAmazonNeptune} instead.
*
*
* Amazon Neptune
*
* Amazon Neptune is a fast, reliable, fully-managed graph database service that makes it easy to build and run
* applications that work with highly connected datasets. The core of Amazon Neptune is a purpose-built,
* high-performance graph database engine optimized for storing billions of relationships and querying the graph with
* milliseconds latency. Amazon Neptune supports popular graph models Property Graph and W3C's RDF, and their respective
* query languages Apache TinkerPop Gremlin and SPARQL, allowing you to easily build queries that efficiently navigate
* highly connected datasets. Neptune powers graph use cases such as recommendation engines, fraud detection, knowledge
* graphs, drug discovery, and network security.
*
*
* This interface reference for Amazon Neptune contains documentation for a programming or command line interface you
* can use to manage Amazon Neptune. Note that Amazon Neptune is asynchronous, which means that some interfaces might
* require techniques such as polling or callback functions to determine when a command has been applied. In this
* reference, the parameter descriptions indicate whether a command is applied immediately, on the next instance reboot,
* or during the maintenance window. The reference structure is as follows, and we list following some related topics
* from the user guide.
*
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public interface AmazonNeptune {
/**
* 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";
/**
*
* Associates an Identity and Access Management (IAM) role with an Neptune DB cluster.
*
*
* @param addRoleToDBClusterRequest
* @return Result of the AddRoleToDBCluster operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @throws DBClusterRoleAlreadyExistsException
* The specified IAM role Amazon Resource Name (ARN) is already associated with the specified DB cluster.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @throws DBClusterRoleQuotaExceededException
* You have exceeded the maximum number of IAM roles that can be associated with the specified DB cluster.
* @sample AmazonNeptune.AddRoleToDBCluster
* @see AWS API
* Documentation
*/
AddRoleToDBClusterResult addRoleToDBCluster(AddRoleToDBClusterRequest addRoleToDBClusterRequest);
/**
*
* Adds a source identifier to an existing event notification subscription.
*
*
* @param addSourceIdentifierToSubscriptionRequest
* @return Result of the AddSourceIdentifierToSubscription operation returned by the service.
* @throws SubscriptionNotFoundException
* The designated subscription could not be found.
* @throws SourceNotFoundException
* The source could not be found.
* @sample AmazonNeptune.AddSourceIdentifierToSubscription
* @see AWS API Documentation
*/
EventSubscription addSourceIdentifierToSubscription(AddSourceIdentifierToSubscriptionRequest addSourceIdentifierToSubscriptionRequest);
/**
*
* Adds metadata tags to an Amazon Neptune resource. These tags can also be used with cost allocation reporting to
* track cost associated with Amazon Neptune resources, or used in a Condition statement in an IAM policy for Amazon
* Neptune.
*
*
* @param addTagsToResourceRequest
* @return Result of the AddTagsToResource operation returned by the service.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier does not refer to an existing DB instance.
* @throws DBSnapshotNotFoundException
* DBSnapshotIdentifier does not refer to an existing DB snapshot.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @sample AmazonNeptune.AddTagsToResource
* @see AWS API
* Documentation
*/
AddTagsToResourceResult addTagsToResource(AddTagsToResourceRequest addTagsToResourceRequest);
/**
*
* Applies a pending maintenance action to a resource (for example, to a DB instance).
*
*
* @param applyPendingMaintenanceActionRequest
* @return Result of the ApplyPendingMaintenanceAction operation returned by the service.
* @throws ResourceNotFoundException
* The specified resource ID was not found.
* @sample AmazonNeptune.ApplyPendingMaintenanceAction
* @see AWS API Documentation
*/
ResourcePendingMaintenanceActions applyPendingMaintenanceAction(ApplyPendingMaintenanceActionRequest applyPendingMaintenanceActionRequest);
/**
*
* Copies the specified DB cluster parameter group.
*
*
* @param copyDBClusterParameterGroupRequest
* @return Result of the CopyDBClusterParameterGroup operation returned by the service.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName does not refer to an existing DB parameter group.
* @throws DBParameterGroupQuotaExceededException
* Request would result in user exceeding the allowed number of DB parameter groups.
* @throws DBParameterGroupAlreadyExistsException
* A DB parameter group with the same name exists.
* @sample AmazonNeptune.CopyDBClusterParameterGroup
* @see AWS API Documentation
*/
DBClusterParameterGroup copyDBClusterParameterGroup(CopyDBClusterParameterGroupRequest copyDBClusterParameterGroupRequest);
/**
*
* Copies a snapshot of a DB cluster.
*
*
* To copy a DB cluster snapshot from a shared manual DB cluster snapshot,
* SourceDBClusterSnapshotIdentifier
must be the Amazon Resource Name (ARN) of the shared DB cluster
* snapshot.
*
*
* @param copyDBClusterSnapshotRequest
* @return Result of the CopyDBClusterSnapshot operation returned by the service.
* @throws DBClusterSnapshotAlreadyExistsException
* User already has a DB cluster snapshot with the given identifier.
* @throws DBClusterSnapshotNotFoundException
* DBClusterSnapshotIdentifier does not refer to an existing DB cluster snapshot.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @throws InvalidDBClusterSnapshotStateException
* The supplied value is not a valid DB cluster snapshot state.
* @throws SnapshotQuotaExceededException
* Request would result in user exceeding the allowed number of DB snapshots.
* @throws KMSKeyNotAccessibleException
* Error accessing KMS key.
* @sample AmazonNeptune.CopyDBClusterSnapshot
* @see AWS
* API Documentation
*/
DBClusterSnapshot copyDBClusterSnapshot(CopyDBClusterSnapshotRequest copyDBClusterSnapshotRequest);
/**
*
* Copies the specified DB parameter group.
*
*
* @param copyDBParameterGroupRequest
* @return Result of the CopyDBParameterGroup operation returned by the service.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName does not refer to an existing DB parameter group.
* @throws DBParameterGroupAlreadyExistsException
* A DB parameter group with the same name exists.
* @throws DBParameterGroupQuotaExceededException
* Request would result in user exceeding the allowed number of DB parameter groups.
* @sample AmazonNeptune.CopyDBParameterGroup
* @see AWS
* API Documentation
*/
DBParameterGroup copyDBParameterGroup(CopyDBParameterGroupRequest copyDBParameterGroupRequest);
/**
*
* Creates a new Amazon Neptune DB cluster.
*
*
* You can use the ReplicationSourceIdentifier
parameter to create the DB cluster as a Read Replica of
* another DB cluster or Amazon Neptune DB instance.
*
*
* Note that when you create a new cluster using CreateDBCluster
directly, deletion protection is
* disabled by default (when you create a new production cluster in the console, deletion protection is enabled by
* default). You can only delete a DB cluster if its DeletionProtection
field is set to
* false
.
*
*
* @param createDBClusterRequest
* @return Result of the CreateDBCluster operation returned by the service.
* @throws DBClusterAlreadyExistsException
* User already has a DB cluster with the given identifier.
* @throws InsufficientStorageClusterCapacityException
* There is insufficient storage available for the current action. You may be able to resolve this error by
* updating your subnet group to use different Availability Zones that have more storage available.
* @throws DBClusterQuotaExceededException
* User attempted to create a new DB cluster and the user has already reached the maximum allowed DB cluster
* quota.
* @throws StorageQuotaExceededException
* Request would result in user exceeding the allowed amount of storage available across all DB instances.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName does not refer to an existing DB subnet group.
* @throws InvalidVPCNetworkStateException
* DB subnet group does not cover all Availability Zones after it is created because users' change.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @throws InvalidDBSubnetGroupStateException
* The DB subnet group cannot be deleted because it is in use.
* @throws InvalidSubnetException
* The requested subnet is invalid, or multiple subnets were requested that are not all in a common VPC.
* @throws InvalidDBInstanceStateException
* The specified DB instance is not in the available state.
* @throws DBClusterParameterGroupNotFoundException
* DBClusterParameterGroupName does not refer to an existing DB Cluster parameter group.
* @throws KMSKeyNotAccessibleException
* Error accessing KMS key.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier does not refer to an existing DB instance.
* @throws DBSubnetGroupDoesNotCoverEnoughAZsException
* Subnets in the DB 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 database cluster.
* @throws InvalidGlobalClusterStateException
* The global cluster is in an invalid state and can't perform the requested operation.
* @sample AmazonNeptune.CreateDBCluster
* @see AWS API
* Documentation
*/
DBCluster createDBCluster(CreateDBClusterRequest createDBClusterRequest);
/**
*
* Creates a new custom endpoint and associates it with an Amazon Neptune DB cluster.
*
*
* @param createDBClusterEndpointRequest
* @return Result of the CreateDBClusterEndpoint operation returned by the service.
* @throws DBClusterEndpointQuotaExceededException
* The cluster already has the maximum number of custom endpoints.
* @throws DBClusterEndpointAlreadyExistsException
* The specified custom endpoint cannot be created because it already exists.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier does not refer to an existing DB instance.
* @throws InvalidDBInstanceStateException
* The specified DB instance is not in the available state.
* @sample AmazonNeptune.CreateDBClusterEndpoint
* @see AWS API Documentation
*/
CreateDBClusterEndpointResult createDBClusterEndpoint(CreateDBClusterEndpointRequest createDBClusterEndpointRequest);
/**
*
* Creates a new DB cluster parameter group.
*
*
* Parameters in a DB cluster parameter group apply to all of the instances in a DB cluster.
*
*
* A DB cluster parameter group is initially created with the default parameters for the database engine used by
* instances in the DB cluster. To provide custom values for any of the parameters, you must modify the group after
* creating it using ModifyDBClusterParameterGroup. Once you've created a DB cluster parameter group, you
* need to associate it with your DB cluster using ModifyDBCluster. When you associate a new DB cluster
* parameter group with a running DB cluster, you need to reboot the DB instances in the DB cluster without failover
* for the new DB cluster parameter group and associated settings to take effect.
*
*
*
* After you create a DB cluster parameter group, you should wait at least 5 minutes before creating your first DB
* cluster that uses that DB cluster parameter group as the default parameter group. This allows Amazon Neptune to
* fully complete the create action before the DB cluster parameter group is used as the default for a new DB
* cluster. This is especially important for parameters that are critical when creating the default database for a
* DB cluster, such as the character set for the default database defined by the character_set_database
* parameter. You can use the Parameter Groups option of the Amazon Neptune console or the DescribeDBClusterParameters
* command to verify that your DB cluster parameter group has been created or modified.
*
*
*
* @param createDBClusterParameterGroupRequest
* @return Result of the CreateDBClusterParameterGroup operation returned by the service.
* @throws DBParameterGroupQuotaExceededException
* Request would result in user exceeding the allowed number of DB parameter groups.
* @throws DBParameterGroupAlreadyExistsException
* A DB parameter group with the same name exists.
* @sample AmazonNeptune.CreateDBClusterParameterGroup
* @see AWS API Documentation
*/
DBClusterParameterGroup createDBClusterParameterGroup(CreateDBClusterParameterGroupRequest createDBClusterParameterGroupRequest);
/**
*
* Creates a snapshot of a DB cluster.
*
*
* @param createDBClusterSnapshotRequest
* @return Result of the CreateDBClusterSnapshot operation returned by the service.
* @throws DBClusterSnapshotAlreadyExistsException
* User already has a DB cluster snapshot with the given identifier.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @throws SnapshotQuotaExceededException
* Request would result in user exceeding the allowed number of DB snapshots.
* @throws InvalidDBClusterSnapshotStateException
* The supplied value is not a valid DB cluster snapshot state.
* @sample AmazonNeptune.CreateDBClusterSnapshot
* @see AWS API Documentation
*/
DBClusterSnapshot createDBClusterSnapshot(CreateDBClusterSnapshotRequest createDBClusterSnapshotRequest);
/**
*
* Creates a new DB instance.
*
*
* @param createDBInstanceRequest
* @return Result of the CreateDBInstance operation returned by the service.
* @throws DBInstanceAlreadyExistsException
* User already has a DB instance with the given identifier.
* @throws InsufficientDBInstanceCapacityException
* Specified DB instance class is not available in the specified Availability Zone.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName does not refer to an existing DB parameter group.
* @throws DBSecurityGroupNotFoundException
* DBSecurityGroupName does not refer to an existing DB security group.
* @throws InstanceQuotaExceededException
* Request would result in user exceeding the allowed number of DB instances.
* @throws StorageQuotaExceededException
* Request would result in user exceeding the allowed amount of storage available across all DB instances.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName does not refer to an existing DB subnet group.
* @throws DBSubnetGroupDoesNotCoverEnoughAZsException
* Subnets in the DB subnet group should cover at least two Availability Zones unless there is only one
* Availability Zone.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @throws InvalidSubnetException
* The requested subnet is invalid, or multiple subnets were requested that are not all in a common VPC.
* @throws InvalidVPCNetworkStateException
* DB subnet group does not cover all Availability Zones after it is created because users' change.
* @throws ProvisionedIopsNotAvailableInAZException
* Provisioned IOPS not available in the specified Availability Zone.
* @throws OptionGroupNotFoundException
* The designated option group could not be found.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @throws StorageTypeNotSupportedException
* StorageType specified cannot be associated with the DB Instance.
* @throws AuthorizationNotFoundException
* Specified CIDRIP or EC2 security group is not authorized for the specified DB security group.
*
* Neptune may not also be authorized via IAM to perform necessary actions on your behalf.
* @throws KMSKeyNotAccessibleException
* Error accessing KMS key.
* @throws DomainNotFoundException
* Domain does not refer to an existing Active Directory Domain.
* @sample AmazonNeptune.CreateDBInstance
* @see AWS API
* Documentation
*/
DBInstance createDBInstance(CreateDBInstanceRequest createDBInstanceRequest);
/**
*
* Creates a new DB parameter group.
*
*
* A DB parameter group is initially created with the default parameters for the database engine used by the DB
* instance. To provide custom values for any of the parameters, you must modify the group after creating it using
* ModifyDBParameterGroup. Once you've created a DB parameter group, you need to associate it with your DB
* instance using ModifyDBInstance. When you associate a new DB parameter group with a running DB instance,
* you need to reboot the DB instance without failover for the new DB parameter group and associated settings to
* take effect.
*
*
*
* After you create a DB parameter group, you should wait at least 5 minutes before creating your first DB instance
* that uses that DB parameter group as the default parameter group. This allows Amazon Neptune to fully complete
* the create action before the parameter group is used as the default for a new DB instance. This is especially
* important for parameters that are critical when creating the default database for a DB instance, such as the
* character set for the default database defined by the character_set_database
parameter. You can use
* the Parameter Groups option of the Amazon Neptune console or the DescribeDBParameters command to
* verify that your DB parameter group has been created or modified.
*
*
*
* @param createDBParameterGroupRequest
* @return Result of the CreateDBParameterGroup operation returned by the service.
* @throws DBParameterGroupQuotaExceededException
* Request would result in user exceeding the allowed number of DB parameter groups.
* @throws DBParameterGroupAlreadyExistsException
* A DB parameter group with the same name exists.
* @sample AmazonNeptune.CreateDBParameterGroup
* @see AWS
* API Documentation
*/
DBParameterGroup createDBParameterGroup(CreateDBParameterGroupRequest createDBParameterGroupRequest);
/**
*
* Creates a new DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the
* Amazon Region.
*
*
* @param createDBSubnetGroupRequest
* @return Result of the CreateDBSubnetGroup operation returned by the service.
* @throws DBSubnetGroupAlreadyExistsException
* DBSubnetGroupName is already used by an existing DB subnet group.
* @throws DBSubnetGroupQuotaExceededException
* Request would result in user exceeding the allowed number of DB subnet groups.
* @throws DBSubnetQuotaExceededException
* Request would result in user exceeding the allowed number of subnets in a DB subnet groups.
* @throws DBSubnetGroupDoesNotCoverEnoughAZsException
* Subnets in the DB subnet group should cover at least two Availability Zones unless there is only one
* Availability Zone.
* @throws InvalidSubnetException
* The requested subnet is invalid, or multiple subnets were requested that are not all in a common VPC.
* @sample AmazonNeptune.CreateDBSubnetGroup
* @see AWS
* API Documentation
*/
DBSubnetGroup createDBSubnetGroup(CreateDBSubnetGroupRequest createDBSubnetGroupRequest);
/**
*
* Creates an event notification subscription. This action requires a topic ARN (Amazon Resource Name) created by
* either the Neptune console, the SNS console, or the SNS API. To obtain an ARN with SNS, you must create a topic
* in Amazon SNS and subscribe to the topic. The ARN is displayed in the SNS console.
*
*
* You can specify the type of source (SourceType) you want to be notified of, provide a list of Neptune sources
* (SourceIds) that triggers the events, and provide a list of event categories (EventCategories) for events 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 Neptune sources. If you do not specify either the SourceType nor the SourceIdentifier, you are notified of
* events generated from all Neptune sources belonging to your customer account.
*
*
* @param createEventSubscriptionRequest
* @return Result of the CreateEventSubscription operation returned by the service.
* @throws EventSubscriptionQuotaExceededException
* You have exceeded the number of events you can subscribe to.
* @throws SubscriptionAlreadyExistException
* This subscription already exists.
* @throws SNSInvalidTopicException
* The SNS topic is invalid.
* @throws SNSNoAuthorizationException
* There is no SNS authorization.
* @throws SNSTopicArnNotFoundException
* The ARN of the SNS topic could not be found.
* @throws SubscriptionCategoryNotFoundException
* The designated subscription category could not be found.
* @throws SourceNotFoundException
* The source could not be found.
* @sample AmazonNeptune.CreateEventSubscription
* @see AWS API Documentation
*/
EventSubscription createEventSubscription(CreateEventSubscriptionRequest createEventSubscriptionRequest);
/**
*
* Creates a Neptune global database spread across multiple Amazon Regions. The global database contains a single
* primary cluster with read-write capability, and read-only secondary clusters that receive data from the primary
* cluster through high-speed replication performed by the Neptune storage subsystem.
*
*
* You can create a global database that is initially empty, and then add a primary cluster and secondary clusters
* to it, or you can specify an existing Neptune cluster during the create operation to become the primary cluster
* of the global database.
*
*
* @param createGlobalClusterRequest
* @return Result of the CreateGlobalCluster operation returned by the service.
* @throws GlobalClusterAlreadyExistsException
* The GlobalClusterIdentifier
already exists. Choose a new global database identifier (unique
* name) to create a new global database cluster.
* @throws GlobalClusterQuotaExceededException
* The number of global database clusters for this account is already at the maximum allowed.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @sample AmazonNeptune.CreateGlobalCluster
* @see AWS
* API Documentation
*/
GlobalCluster createGlobalCluster(CreateGlobalClusterRequest createGlobalClusterRequest);
/**
*
* The DeleteDBCluster action deletes a previously provisioned DB cluster. When you delete a DB cluster, all
* automated backups for that DB cluster are deleted and can't be recovered. Manual DB cluster snapshots of the
* specified DB cluster are not deleted.
*
*
* Note that the DB Cluster cannot be deleted if deletion protection is enabled. To delete it, you must first set
* its DeletionProtection
field to False
.
*
*
* @param deleteDBClusterRequest
* @return Result of the DeleteDBCluster operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @throws DBClusterSnapshotAlreadyExistsException
* User already has a DB cluster snapshot with the given identifier.
* @throws SnapshotQuotaExceededException
* Request would result in user exceeding the allowed number of DB snapshots.
* @throws InvalidDBClusterSnapshotStateException
* The supplied value is not a valid DB cluster snapshot state.
* @sample AmazonNeptune.DeleteDBCluster
* @see AWS API
* Documentation
*/
DBCluster deleteDBCluster(DeleteDBClusterRequest deleteDBClusterRequest);
/**
*
* Deletes a custom endpoint and removes it from an Amazon Neptune DB cluster.
*
*
* @param deleteDBClusterEndpointRequest
* @return Result of the DeleteDBClusterEndpoint operation returned by the service.
* @throws InvalidDBClusterEndpointStateException
* The requested operation cannot be performed on the endpoint while the endpoint is in this state.
* @throws DBClusterEndpointNotFoundException
* The specified custom endpoint doesn't exist.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @sample AmazonNeptune.DeleteDBClusterEndpoint
* @see AWS API Documentation
*/
DeleteDBClusterEndpointResult deleteDBClusterEndpoint(DeleteDBClusterEndpointRequest deleteDBClusterEndpointRequest);
/**
*
* Deletes a specified DB cluster parameter group. The DB cluster parameter group to be deleted can't be associated
* with any DB clusters.
*
*
* @param deleteDBClusterParameterGroupRequest
* @return Result of the DeleteDBClusterParameterGroup operation returned by the service.
* @throws InvalidDBParameterGroupStateException
* The DB parameter group is in use or is in an invalid state. If you are attempting to delete the parameter
* group, you cannot delete it when the parameter group is in this state.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName does not refer to an existing DB parameter group.
* @sample AmazonNeptune.DeleteDBClusterParameterGroup
* @see AWS API Documentation
*/
DeleteDBClusterParameterGroupResult deleteDBClusterParameterGroup(DeleteDBClusterParameterGroupRequest deleteDBClusterParameterGroupRequest);
/**
*
* Deletes a DB cluster snapshot. If the snapshot is being copied, the copy operation is terminated.
*
*
*
* The DB cluster snapshot must be in the available
state to be deleted.
*
*
*
* @param deleteDBClusterSnapshotRequest
* @return Result of the DeleteDBClusterSnapshot operation returned by the service.
* @throws InvalidDBClusterSnapshotStateException
* The supplied value is not a valid DB cluster snapshot state.
* @throws DBClusterSnapshotNotFoundException
* DBClusterSnapshotIdentifier does not refer to an existing DB cluster snapshot.
* @sample AmazonNeptune.DeleteDBClusterSnapshot
* @see AWS API Documentation
*/
DBClusterSnapshot deleteDBClusterSnapshot(DeleteDBClusterSnapshotRequest deleteDBClusterSnapshotRequest);
/**
*
* The DeleteDBInstance action deletes a previously provisioned DB instance. When you delete a DB instance, all
* automated backups for that instance are deleted and can't be recovered. Manual DB snapshots of the DB instance to
* be deleted by DeleteDBInstance
are not deleted.
*
*
* If you request a final DB snapshot the status of the Amazon Neptune DB instance is deleting
until
* the DB snapshot is created. The API action DescribeDBInstance
is used to monitor the status of this
* operation. The action can't be canceled or reverted once submitted.
*
*
* Note that when a DB instance is in a failure state and has a status of failed
,
* incompatible-restore
, or incompatible-network
, you can only delete it when the
* SkipFinalSnapshot
parameter is set to true
.
*
*
* You can't delete a DB instance if it is the only instance in the DB cluster, or if it has deletion protection
* enabled.
*
*
* @param deleteDBInstanceRequest
* @return Result of the DeleteDBInstance operation returned by the service.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier does not refer to an existing DB instance.
* @throws InvalidDBInstanceStateException
* The specified DB instance is not in the available state.
* @throws DBSnapshotAlreadyExistsException
* DBSnapshotIdentifier is already used by an existing snapshot.
* @throws SnapshotQuotaExceededException
* Request would result in user exceeding the allowed number of DB snapshots.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @sample AmazonNeptune.DeleteDBInstance
* @see AWS API
* Documentation
*/
DBInstance deleteDBInstance(DeleteDBInstanceRequest deleteDBInstanceRequest);
/**
*
* Deletes a specified DBParameterGroup. The DBParameterGroup to be deleted can't be associated with any DB
* instances.
*
*
* @param deleteDBParameterGroupRequest
* @return Result of the DeleteDBParameterGroup operation returned by the service.
* @throws InvalidDBParameterGroupStateException
* The DB parameter group is in use or is in an invalid state. If you are attempting to delete the parameter
* group, you cannot delete it when the parameter group is in this state.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName does not refer to an existing DB parameter group.
* @sample AmazonNeptune.DeleteDBParameterGroup
* @see AWS
* API Documentation
*/
DeleteDBParameterGroupResult deleteDBParameterGroup(DeleteDBParameterGroupRequest deleteDBParameterGroupRequest);
/**
*
* Deletes a DB subnet group.
*
*
*
* The specified database subnet group must not be associated with any DB instances.
*
*
*
* @param deleteDBSubnetGroupRequest
* @return Result of the DeleteDBSubnetGroup operation returned by the service.
* @throws InvalidDBSubnetGroupStateException
* The DB subnet group cannot be deleted because it is in use.
* @throws InvalidDBSubnetStateException
* The DB subnet is not in the available state.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName does not refer to an existing DB subnet group.
* @sample AmazonNeptune.DeleteDBSubnetGroup
* @see AWS
* API Documentation
*/
DeleteDBSubnetGroupResult deleteDBSubnetGroup(DeleteDBSubnetGroupRequest deleteDBSubnetGroupRequest);
/**
*
* Deletes an event notification subscription.
*
*
* @param deleteEventSubscriptionRequest
* @return Result of the DeleteEventSubscription operation returned by the service.
* @throws SubscriptionNotFoundException
* The designated subscription could not be found.
* @throws InvalidEventSubscriptionStateException
* The event subscription is in an invalid state.
* @sample AmazonNeptune.DeleteEventSubscription
* @see AWS API Documentation
*/
EventSubscription deleteEventSubscription(DeleteEventSubscriptionRequest deleteEventSubscriptionRequest);
/**
*
* Deletes a global database. The primary and all secondary clusters must already be detached or deleted first.
*
*
* @param deleteGlobalClusterRequest
* @return Result of the DeleteGlobalCluster operation returned by the service.
* @throws GlobalClusterNotFoundException
* The GlobalClusterIdentifier
doesn't refer to an existing global database cluster.
* @throws InvalidGlobalClusterStateException
* The global cluster is in an invalid state and can't perform the requested operation.
* @sample AmazonNeptune.DeleteGlobalCluster
* @see AWS
* API Documentation
*/
GlobalCluster deleteGlobalCluster(DeleteGlobalClusterRequest deleteGlobalClusterRequest);
/**
*
* Returns information about endpoints for an Amazon Neptune DB cluster.
*
*
*
* This operation can also return information for Amazon RDS clusters and Amazon DocDB clusters.
*
*
*
* @param describeDBClusterEndpointsRequest
* @return Result of the DescribeDBClusterEndpoints operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @sample AmazonNeptune.DescribeDBClusterEndpoints
* @see AWS API Documentation
*/
DescribeDBClusterEndpointsResult describeDBClusterEndpoints(DescribeDBClusterEndpointsRequest describeDBClusterEndpointsRequest);
/**
*
* Returns a list of DBClusterParameterGroup
descriptions. If a
* DBClusterParameterGroupName
parameter is specified, the list will contain only the description of
* the specified DB cluster parameter group.
*
*
* @param describeDBClusterParameterGroupsRequest
* @return Result of the DescribeDBClusterParameterGroups operation returned by the service.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName does not refer to an existing DB parameter group.
* @sample AmazonNeptune.DescribeDBClusterParameterGroups
* @see AWS API Documentation
*/
DescribeDBClusterParameterGroupsResult describeDBClusterParameterGroups(DescribeDBClusterParameterGroupsRequest describeDBClusterParameterGroupsRequest);
/**
*
* Returns the detailed parameter list for a particular DB cluster parameter group.
*
*
* @param describeDBClusterParametersRequest
* @return Result of the DescribeDBClusterParameters operation returned by the service.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName does not refer to an existing DB parameter group.
* @sample AmazonNeptune.DescribeDBClusterParameters
* @see AWS API Documentation
*/
DescribeDBClusterParametersResult describeDBClusterParameters(DescribeDBClusterParametersRequest describeDBClusterParametersRequest);
/**
*
* Returns a list of DB cluster snapshot attribute names and values for a manual DB cluster snapshot.
*
*
* When sharing snapshots with other Amazon accounts, DescribeDBClusterSnapshotAttributes
returns the
* restore
attribute and a list of IDs for the Amazon accounts that are authorized to copy or restore
* the manual DB cluster snapshot. If all
is included in the list of values for the
* restore
attribute, then the manual DB cluster snapshot is public and can be copied or restored by
* all Amazon accounts.
*
*
* To add or remove access for an Amazon account to copy or restore a manual DB cluster snapshot, or to make the
* manual DB cluster snapshot public or private, use the ModifyDBClusterSnapshotAttribute API action.
*
*
* @param describeDBClusterSnapshotAttributesRequest
* @return Result of the DescribeDBClusterSnapshotAttributes operation returned by the service.
* @throws DBClusterSnapshotNotFoundException
* DBClusterSnapshotIdentifier does not refer to an existing DB cluster snapshot.
* @sample AmazonNeptune.DescribeDBClusterSnapshotAttributes
* @see AWS API Documentation
*/
DBClusterSnapshotAttributesResult describeDBClusterSnapshotAttributes(DescribeDBClusterSnapshotAttributesRequest describeDBClusterSnapshotAttributesRequest);
/**
*
* Returns information about DB cluster snapshots. This API action supports pagination.
*
*
* @param describeDBClusterSnapshotsRequest
* @return Result of the DescribeDBClusterSnapshots operation returned by the service.
* @throws DBClusterSnapshotNotFoundException
* DBClusterSnapshotIdentifier does not refer to an existing DB cluster snapshot.
* @sample AmazonNeptune.DescribeDBClusterSnapshots
* @see AWS API Documentation
*/
DescribeDBClusterSnapshotsResult describeDBClusterSnapshots(DescribeDBClusterSnapshotsRequest describeDBClusterSnapshotsRequest);
/**
*
* Returns information about provisioned DB clusters, and supports pagination.
*
*
*
* This operation can also return information for Amazon RDS clusters and Amazon DocDB clusters.
*
*
*
* @param describeDBClustersRequest
* @return Result of the DescribeDBClusters operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @sample AmazonNeptune.DescribeDBClusters
* @see AWS API
* Documentation
*/
DescribeDBClustersResult describeDBClusters(DescribeDBClustersRequest describeDBClustersRequest);
/**
*
* Returns a list of the available DB engines.
*
*
* @param describeDBEngineVersionsRequest
* @return Result of the DescribeDBEngineVersions operation returned by the service.
* @sample AmazonNeptune.DescribeDBEngineVersions
* @see AWS API Documentation
*/
DescribeDBEngineVersionsResult describeDBEngineVersions(DescribeDBEngineVersionsRequest describeDBEngineVersionsRequest);
/**
*
* Returns information about provisioned instances, and supports pagination.
*
*
*
* This operation can also return information for Amazon RDS instances and Amazon DocDB instances.
*
*
*
* @param describeDBInstancesRequest
* @return Result of the DescribeDBInstances operation returned by the service.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier does not refer to an existing DB instance.
* @sample AmazonNeptune.DescribeDBInstances
* @see AWS
* API Documentation
*/
DescribeDBInstancesResult describeDBInstances(DescribeDBInstancesRequest describeDBInstancesRequest);
/**
*
* Returns a list of DBParameterGroup
descriptions. If a DBParameterGroupName
is
* specified, the list will contain only the description of the specified DB parameter group.
*
*
* @param describeDBParameterGroupsRequest
* @return Result of the DescribeDBParameterGroups operation returned by the service.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName does not refer to an existing DB parameter group.
* @sample AmazonNeptune.DescribeDBParameterGroups
* @see AWS API Documentation
*/
DescribeDBParameterGroupsResult describeDBParameterGroups(DescribeDBParameterGroupsRequest describeDBParameterGroupsRequest);
/**
*
* Returns the detailed parameter list for a particular DB parameter group.
*
*
* @param describeDBParametersRequest
* @return Result of the DescribeDBParameters operation returned by the service.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName does not refer to an existing DB parameter group.
* @sample AmazonNeptune.DescribeDBParameters
* @see AWS
* API Documentation
*/
DescribeDBParametersResult describeDBParameters(DescribeDBParametersRequest describeDBParametersRequest);
/**
*
* Returns a list of DBSubnetGroup descriptions. If a DBSubnetGroupName is specified, the list will contain only the
* descriptions of the specified DBSubnetGroup.
*
*
* For an overview of CIDR ranges, go to the Wikipedia Tutorial.
*
*
* @param describeDBSubnetGroupsRequest
* @return Result of the DescribeDBSubnetGroups operation returned by the service.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName does not refer to an existing DB subnet group.
* @sample AmazonNeptune.DescribeDBSubnetGroups
* @see AWS
* API Documentation
*/
DescribeDBSubnetGroupsResult describeDBSubnetGroups(DescribeDBSubnetGroupsRequest describeDBSubnetGroupsRequest);
/**
*
* Returns the default engine and system parameter information for the cluster database engine.
*
*
* @param describeEngineDefaultClusterParametersRequest
* @return Result of the DescribeEngineDefaultClusterParameters operation returned by the service.
* @sample AmazonNeptune.DescribeEngineDefaultClusterParameters
* @see AWS API Documentation
*/
EngineDefaults describeEngineDefaultClusterParameters(DescribeEngineDefaultClusterParametersRequest describeEngineDefaultClusterParametersRequest);
/**
*
* Returns the default engine and system parameter information for the specified database engine.
*
*
* @param describeEngineDefaultParametersRequest
* @return Result of the DescribeEngineDefaultParameters operation returned by the service.
* @sample AmazonNeptune.DescribeEngineDefaultParameters
* @see AWS API Documentation
*/
EngineDefaults describeEngineDefaultParameters(DescribeEngineDefaultParametersRequest describeEngineDefaultParametersRequest);
/**
*
* Displays a list of categories for all event source types, or, if specified, for a specified source type.
*
*
* @param describeEventCategoriesRequest
* @return Result of the DescribeEventCategories operation returned by the service.
* @sample AmazonNeptune.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
* @return Result of the DescribeEventSubscriptions operation returned by the service.
* @throws SubscriptionNotFoundException
* The designated subscription could not be found.
* @sample AmazonNeptune.DescribeEventSubscriptions
* @see AWS API Documentation
*/
DescribeEventSubscriptionsResult describeEventSubscriptions(DescribeEventSubscriptionsRequest describeEventSubscriptionsRequest);
/**
*
* Returns events related to DB instances, DB security groups, DB snapshots, and DB parameter groups for the past 14
* days. Events specific to a particular DB instance, DB security group, database snapshot, or DB parameter group
* can be obtained by providing the name as a parameter. By default, the past hour of events are returned.
*
*
* @param describeEventsRequest
* @return Result of the DescribeEvents operation returned by the service.
* @sample AmazonNeptune.DescribeEvents
* @see AWS API
* Documentation
*/
DescribeEventsResult describeEvents(DescribeEventsRequest describeEventsRequest);
/**
*
* Returns information about Neptune global database clusters. This API supports pagination.
*
*
* @param describeGlobalClustersRequest
* @return Result of the DescribeGlobalClusters operation returned by the service.
* @throws GlobalClusterNotFoundException
* The GlobalClusterIdentifier
doesn't refer to an existing global database cluster.
* @sample AmazonNeptune.DescribeGlobalClusters
* @see AWS
* API Documentation
*/
DescribeGlobalClustersResult describeGlobalClusters(DescribeGlobalClustersRequest describeGlobalClustersRequest);
/**
*
* Returns a list of orderable DB instance options for the specified engine.
*
*
* @param describeOrderableDBInstanceOptionsRequest
* @return Result of the DescribeOrderableDBInstanceOptions operation returned by the service.
* @sample AmazonNeptune.DescribeOrderableDBInstanceOptions
* @see AWS API Documentation
*/
DescribeOrderableDBInstanceOptionsResult describeOrderableDBInstanceOptions(
DescribeOrderableDBInstanceOptionsRequest describeOrderableDBInstanceOptionsRequest);
/**
*
* Returns a list of resources (for example, DB instances) that have at least one pending maintenance action.
*
*
* @param describePendingMaintenanceActionsRequest
* @return Result of the DescribePendingMaintenanceActions operation returned by the service.
* @throws ResourceNotFoundException
* The specified resource ID was not found.
* @sample AmazonNeptune.DescribePendingMaintenanceActions
* @see AWS API Documentation
*/
DescribePendingMaintenanceActionsResult describePendingMaintenanceActions(DescribePendingMaintenanceActionsRequest describePendingMaintenanceActionsRequest);
/**
*
* You can call DescribeValidDBInstanceModifications to learn what modifications you can make to your DB
* instance. You can use this information when you call ModifyDBInstance.
*
*
* @param describeValidDBInstanceModificationsRequest
* @return Result of the DescribeValidDBInstanceModifications operation returned by the service.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier does not refer to an existing DB instance.
* @throws InvalidDBInstanceStateException
* The specified DB instance is not in the available state.
* @sample AmazonNeptune.DescribeValidDBInstanceModifications
* @see AWS API Documentation
*/
ValidDBInstanceModificationsMessage describeValidDBInstanceModifications(
DescribeValidDBInstanceModificationsRequest describeValidDBInstanceModificationsRequest);
/**
*
* Forces a failover for a DB cluster.
*
*
* A failover for a DB cluster promotes one of the Read Replicas (read-only instances) in the DB cluster to be the
* primary instance (the cluster writer).
*
*
* Amazon Neptune will automatically fail over to a Read Replica, if one exists, when the primary instance fails.
* You can force a failover when you want to simulate a failure of a primary instance for testing. Because each
* instance in a DB cluster has its own endpoint address, you will need to clean up and re-establish any existing
* connections that use those endpoint addresses when the failover is complete.
*
*
* @param failoverDBClusterRequest
* @return Result of the FailoverDBCluster operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @throws InvalidDBInstanceStateException
* The specified DB instance is not in the available state.
* @sample AmazonNeptune.FailoverDBCluster
* @see AWS API
* Documentation
*/
DBCluster failoverDBCluster(FailoverDBClusterRequest failoverDBClusterRequest);
/**
*
* Initiates the failover process for a Neptune global database.
*
*
* A failover for a Neptune global database promotes one of secondary read-only DB clusters to be the primary DB
* cluster and demotes the primary DB cluster to being a secondary (read-only) DB cluster. In other words, the role
* of the current primary DB cluster and the selected target secondary DB cluster are switched. The selected
* secondary DB cluster assumes full read/write capabilities for the Neptune global database.
*
*
*
* This action applies only to Neptune global databases. This action is only intended for use on healthy
* Neptune global databases with healthy Neptune DB clusters and no region-wide outages, to test disaster recovery
* scenarios or to reconfigure the global database topology.
*
*
*
* @param failoverGlobalClusterRequest
* @return Result of the FailoverGlobalCluster operation returned by the service.
* @throws GlobalClusterNotFoundException
* The GlobalClusterIdentifier
doesn't refer to an existing global database cluster.
* @throws InvalidGlobalClusterStateException
* The global cluster is in an invalid state and can't perform the requested operation.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @sample AmazonNeptune.FailoverGlobalCluster
* @see AWS
* API Documentation
*/
GlobalCluster failoverGlobalCluster(FailoverGlobalClusterRequest failoverGlobalClusterRequest);
/**
*
* Lists all tags on an Amazon Neptune resource.
*
*
* @param listTagsForResourceRequest
* @return Result of the ListTagsForResource operation returned by the service.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier does not refer to an existing DB instance.
* @throws DBSnapshotNotFoundException
* DBSnapshotIdentifier does not refer to an existing DB snapshot.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @sample AmazonNeptune.ListTagsForResource
* @see AWS
* API Documentation
*/
ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest);
/**
*
* Modify a setting for a DB cluster. You can change one or more database configuration parameters by specifying
* these parameters and the new values in the request.
*
*
* @param modifyDBClusterRequest
* @return Result of the ModifyDBCluster operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @throws StorageQuotaExceededException
* Request would result in user exceeding the allowed amount of storage available across all DB instances.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName does not refer to an existing DB subnet group.
* @throws InvalidVPCNetworkStateException
* DB subnet group does not cover all Availability Zones after it is created because users' change.
* @throws InvalidDBSubnetGroupStateException
* The DB subnet group cannot be deleted because it is in use.
* @throws InvalidSubnetException
* The requested subnet is invalid, or multiple subnets were requested that are not all in a common VPC.
* @throws DBClusterParameterGroupNotFoundException
* DBClusterParameterGroupName does not refer to an existing DB Cluster parameter group.
* @throws InvalidDBSecurityGroupStateException
* The state of the DB security group does not allow deletion.
* @throws InvalidDBInstanceStateException
* The specified DB instance is not in the available state.
* @throws DBClusterAlreadyExistsException
* User already has a DB cluster with the given identifier.
* @throws StorageTypeNotSupportedException
* StorageType specified cannot be associated with the DB Instance.
* @sample AmazonNeptune.ModifyDBCluster
* @see AWS API
* Documentation
*/
DBCluster modifyDBCluster(ModifyDBClusterRequest modifyDBClusterRequest);
/**
*
* Modifies the properties of an endpoint in an Amazon Neptune DB cluster.
*
*
* @param modifyDBClusterEndpointRequest
* @return Result of the ModifyDBClusterEndpoint operation returned by the service.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @throws InvalidDBClusterEndpointStateException
* The requested operation cannot be performed on the endpoint while the endpoint is in this state.
* @throws DBClusterEndpointNotFoundException
* The specified custom endpoint doesn't exist.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier does not refer to an existing DB instance.
* @throws InvalidDBInstanceStateException
* The specified DB instance is not in the available state.
* @sample AmazonNeptune.ModifyDBClusterEndpoint
* @see AWS API Documentation
*/
ModifyDBClusterEndpointResult modifyDBClusterEndpoint(ModifyDBClusterEndpointRequest modifyDBClusterEndpointRequest);
/**
*
* Modifies the parameters of a DB 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 without
* failover to the DB cluster associated with the parameter group before the change can take effect.
*
*
*
* After you create a DB cluster parameter group, you should wait at least 5 minutes before creating your first DB
* cluster that uses that DB cluster parameter group as the default parameter group. This allows Amazon Neptune to
* fully complete the create action before the parameter group is used as the default for a new DB cluster. This is
* especially important for parameters that are critical when creating the default database for a DB cluster, such
* as the character set for the default database defined by the character_set_database
parameter. You
* can use the Parameter Groups option of the Amazon Neptune console or the
* DescribeDBClusterParameters command to verify that your DB cluster parameter group has been created or
* modified.
*
*
*
* @param modifyDBClusterParameterGroupRequest
* @return Result of the ModifyDBClusterParameterGroup operation returned by the service.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName does not refer to an existing DB parameter group.
* @throws InvalidDBParameterGroupStateException
* The DB parameter group is in use or is in an invalid state. If you are attempting to delete the parameter
* group, you cannot delete it when the parameter group is in this state.
* @sample AmazonNeptune.ModifyDBClusterParameterGroup
* @see AWS API Documentation
*/
ModifyDBClusterParameterGroupResult modifyDBClusterParameterGroup(ModifyDBClusterParameterGroupRequest modifyDBClusterParameterGroupRequest);
/**
*
* Adds an attribute and values to, or removes an attribute and values from, a manual DB cluster snapshot.
*
*
* To share a manual DB cluster snapshot with other Amazon accounts, specify restore
as the
* AttributeName
and use the ValuesToAdd
parameter to add a list of IDs of the Amazon
* accounts that are authorized to restore the manual DB cluster snapshot. Use the value all
to make
* the manual DB cluster snapshot public, which means that it can be copied or restored by all Amazon accounts. Do
* not add the all
value for any manual DB cluster snapshots that contain private information that you
* don't want available to all Amazon accounts. If a manual DB cluster snapshot is encrypted, it can be shared, but
* only by specifying a list of authorized Amazon account IDs for the ValuesToAdd
parameter. You can't
* use all
as a value for that parameter in this case.
*
*
* To view which Amazon accounts have access to copy or restore a manual DB cluster snapshot, or whether a manual DB
* cluster snapshot public or private, use the DescribeDBClusterSnapshotAttributes API action.
*
*
* @param modifyDBClusterSnapshotAttributeRequest
* @return Result of the ModifyDBClusterSnapshotAttribute operation returned by the service.
* @throws DBClusterSnapshotNotFoundException
* DBClusterSnapshotIdentifier does not refer to an existing DB cluster snapshot.
* @throws InvalidDBClusterSnapshotStateException
* The supplied value is not a valid DB cluster snapshot state.
* @throws SharedSnapshotQuotaExceededException
* You have exceeded the maximum number of accounts that you can share a manual DB snapshot with.
* @sample AmazonNeptune.ModifyDBClusterSnapshotAttribute
* @see AWS API Documentation
*/
DBClusterSnapshotAttributesResult modifyDBClusterSnapshotAttribute(ModifyDBClusterSnapshotAttributeRequest modifyDBClusterSnapshotAttributeRequest);
/**
*
* Modifies settings for a DB instance. You can change one or more database configuration parameters by specifying
* these parameters and the new values in the request. To learn what modifications you can make to your DB instance,
* call DescribeValidDBInstanceModifications before you call ModifyDBInstance.
*
*
* @param modifyDBInstanceRequest
* @return Result of the ModifyDBInstance operation returned by the service.
* @throws InvalidDBInstanceStateException
* The specified DB instance is not in the available state.
* @throws InvalidDBSecurityGroupStateException
* The state of the DB security group does not allow deletion.
* @throws DBInstanceAlreadyExistsException
* User already has a DB instance with the given identifier.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier does not refer to an existing DB instance.
* @throws DBSecurityGroupNotFoundException
* DBSecurityGroupName does not refer to an existing DB security group.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName does not refer to an existing DB parameter group.
* @throws InsufficientDBInstanceCapacityException
* Specified DB instance class is not available in the specified Availability Zone.
* @throws StorageQuotaExceededException
* Request would result in user exceeding the allowed amount of storage available across all DB instances.
* @throws InvalidVPCNetworkStateException
* DB subnet group does not cover all Availability Zones after it is created because users' change.
* @throws ProvisionedIopsNotAvailableInAZException
* Provisioned IOPS not available in the specified Availability Zone.
* @throws OptionGroupNotFoundException
* The designated option group could not be found.
* @throws DBUpgradeDependencyFailureException
* The DB upgrade failed because a resource the DB depends on could not be modified.
* @throws StorageTypeNotSupportedException
* StorageType specified cannot be associated with the DB Instance.
* @throws AuthorizationNotFoundException
* Specified CIDRIP or EC2 security group is not authorized for the specified DB security group.
*
* Neptune may not also be authorized via IAM to perform necessary actions on your behalf.
* @throws CertificateNotFoundException
* CertificateIdentifier does not refer to an existing certificate.
* @throws DomainNotFoundException
* Domain does not refer to an existing Active Directory Domain.
* @sample AmazonNeptune.ModifyDBInstance
* @see AWS API
* Documentation
*/
DBInstance modifyDBInstance(ModifyDBInstanceRequest modifyDBInstanceRequest);
/**
*
* Modifies the parameters of a DB 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 without
* failover to the DB instance associated with the parameter group before the change can take effect.
*
*
*
* After you modify a DB parameter group, you should wait at least 5 minutes before creating your first DB instance
* that uses that DB parameter group as the default parameter group. This allows Amazon Neptune to fully complete
* the modify action before the parameter group is used as the default for a new DB instance. This is especially
* important for parameters that are critical when creating the default database for a DB instance, such as the
* character set for the default database defined by the character_set_database
parameter. You can use
* the Parameter Groups option of the Amazon Neptune console or the DescribeDBParameters command to
* verify that your DB parameter group has been created or modified.
*
*
*
* @param modifyDBParameterGroupRequest
* @return Result of the ModifyDBParameterGroup operation returned by the service.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName does not refer to an existing DB parameter group.
* @throws InvalidDBParameterGroupStateException
* The DB parameter group is in use or is in an invalid state. If you are attempting to delete the parameter
* group, you cannot delete it when the parameter group is in this state.
* @sample AmazonNeptune.ModifyDBParameterGroup
* @see AWS
* API Documentation
*/
ModifyDBParameterGroupResult modifyDBParameterGroup(ModifyDBParameterGroupRequest modifyDBParameterGroupRequest);
/**
*
* Modifies an existing DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in
* the Amazon Region.
*
*
* @param modifyDBSubnetGroupRequest
* @return Result of the ModifyDBSubnetGroup operation returned by the service.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName does not refer to an existing DB subnet group.
* @throws DBSubnetQuotaExceededException
* Request would result in user exceeding the allowed number of subnets in a DB subnet groups.
* @throws SubnetAlreadyInUseException
* The DB subnet is already in use in the Availability Zone.
* @throws DBSubnetGroupDoesNotCoverEnoughAZsException
* Subnets in the DB subnet group should cover at least two Availability Zones unless there is only one
* Availability Zone.
* @throws InvalidSubnetException
* The requested subnet is invalid, or multiple subnets were requested that are not all in a common VPC.
* @sample AmazonNeptune.ModifyDBSubnetGroup
* @see AWS
* API Documentation
*/
DBSubnetGroup modifyDBSubnetGroup(ModifyDBSubnetGroupRequest modifyDBSubnetGroupRequest);
/**
*
* Modifies an existing event notification subscription. Note that you can't modify the source identifiers using
* this call; to change source identifiers for a subscription, use the AddSourceIdentifierToSubscription and
* RemoveSourceIdentifierFromSubscription calls.
*
*
* You can see a list of the event categories for a given SourceType by using the DescribeEventCategories
* action.
*
*
* @param modifyEventSubscriptionRequest
* @return Result of the ModifyEventSubscription operation returned by the service.
* @throws EventSubscriptionQuotaExceededException
* You have exceeded the number of events you can subscribe to.
* @throws SubscriptionNotFoundException
* The designated subscription could not be found.
* @throws SNSInvalidTopicException
* The SNS topic is invalid.
* @throws SNSNoAuthorizationException
* There is no SNS authorization.
* @throws SNSTopicArnNotFoundException
* The ARN of the SNS topic could not be found.
* @throws SubscriptionCategoryNotFoundException
* The designated subscription category could not be found.
* @sample AmazonNeptune.ModifyEventSubscription
* @see AWS API Documentation
*/
EventSubscription modifyEventSubscription(ModifyEventSubscriptionRequest modifyEventSubscriptionRequest);
/**
*
* Modify a setting for an Amazon Neptune global cluster. You can change one or more database configuration
* parameters by specifying these parameters and their new values in the request.
*
*
* @param modifyGlobalClusterRequest
* @return Result of the ModifyGlobalCluster operation returned by the service.
* @throws GlobalClusterNotFoundException
* The GlobalClusterIdentifier
doesn't refer to an existing global database cluster.
* @throws InvalidGlobalClusterStateException
* The global cluster is in an invalid state and can't perform the requested operation.
* @sample AmazonNeptune.ModifyGlobalCluster
* @see AWS
* API Documentation
*/
GlobalCluster modifyGlobalCluster(ModifyGlobalClusterRequest modifyGlobalClusterRequest);
/**
*
* Not supported.
*
*
* @param promoteReadReplicaDBClusterRequest
* @return Result of the PromoteReadReplicaDBCluster operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @sample AmazonNeptune.PromoteReadReplicaDBCluster
* @see AWS API Documentation
*/
DBCluster promoteReadReplicaDBCluster(PromoteReadReplicaDBClusterRequest promoteReadReplicaDBClusterRequest);
/**
*
* You might need to reboot your DB instance, usually for maintenance reasons. For example, if you make certain
* modifications, or if you change the DB parameter group associated with the DB instance, you must reboot the
* instance for the changes to take effect.
*
*
* Rebooting a DB instance restarts the database engine service. Rebooting a DB instance results in a momentary
* outage, during which the DB instance status is set to rebooting.
*
*
* @param rebootDBInstanceRequest
* @return Result of the RebootDBInstance operation returned by the service.
* @throws InvalidDBInstanceStateException
* The specified DB instance is not in the available state.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier does not refer to an existing DB instance.
* @sample AmazonNeptune.RebootDBInstance
* @see AWS API
* Documentation
*/
DBInstance rebootDBInstance(RebootDBInstanceRequest rebootDBInstanceRequest);
/**
*
* Detaches a Neptune DB cluster from a Neptune global database. A secondary cluster becomes a normal standalone
* cluster with read-write capability instead of being read-only, and no longer receives data from a the primary
* cluster.
*
*
* @param removeFromGlobalClusterRequest
* @return Result of the RemoveFromGlobalCluster operation returned by the service.
* @throws GlobalClusterNotFoundException
* The GlobalClusterIdentifier
doesn't refer to an existing global database cluster.
* @throws InvalidGlobalClusterStateException
* The global cluster is in an invalid state and can't perform the requested operation.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @sample AmazonNeptune.RemoveFromGlobalCluster
* @see AWS API Documentation
*/
GlobalCluster removeFromGlobalCluster(RemoveFromGlobalClusterRequest removeFromGlobalClusterRequest);
/**
*
* Disassociates an Identity and Access Management (IAM) role from a DB cluster.
*
*
* @param removeRoleFromDBClusterRequest
* @return Result of the RemoveRoleFromDBCluster operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @throws DBClusterRoleNotFoundException
* The specified IAM role Amazon Resource Name (ARN) is not associated with the specified DB cluster.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @sample AmazonNeptune.RemoveRoleFromDBCluster
* @see AWS API Documentation
*/
RemoveRoleFromDBClusterResult removeRoleFromDBCluster(RemoveRoleFromDBClusterRequest removeRoleFromDBClusterRequest);
/**
*
* Removes a source identifier from an existing event notification subscription.
*
*
* @param removeSourceIdentifierFromSubscriptionRequest
* @return Result of the RemoveSourceIdentifierFromSubscription operation returned by the service.
* @throws SubscriptionNotFoundException
* The designated subscription could not be found.
* @throws SourceNotFoundException
* The source could not be found.
* @sample AmazonNeptune.RemoveSourceIdentifierFromSubscription
* @see AWS API Documentation
*/
EventSubscription removeSourceIdentifierFromSubscription(RemoveSourceIdentifierFromSubscriptionRequest removeSourceIdentifierFromSubscriptionRequest);
/**
*
* Removes metadata tags from an Amazon Neptune resource.
*
*
* @param removeTagsFromResourceRequest
* @return Result of the RemoveTagsFromResource operation returned by the service.
* @throws DBInstanceNotFoundException
* DBInstanceIdentifier does not refer to an existing DB instance.
* @throws DBSnapshotNotFoundException
* DBSnapshotIdentifier does not refer to an existing DB snapshot.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @sample AmazonNeptune.RemoveTagsFromResource
* @see AWS
* API Documentation
*/
RemoveTagsFromResourceResult removeTagsFromResource(RemoveTagsFromResourceRequest removeTagsFromResourceRequest);
/**
*
* Modifies the parameters of a DB cluster parameter group to the default value. To reset specific parameters submit
* a list of the following: ParameterName
and ApplyMethod
. To reset the entire DB cluster
* parameter group, specify the DBClusterParameterGroupName
and ResetAllParameters
* parameters.
*
*
* When resetting the entire group, dynamic parameters are updated immediately and static parameters are set to
* pending-reboot
to take effect on the next DB instance restart or RebootDBInstance request.
* You must call RebootDBInstance for every DB instance in your DB cluster that you want the updated static
* parameter to apply to.
*
*
* @param resetDBClusterParameterGroupRequest
* @return Result of the ResetDBClusterParameterGroup operation returned by the service.
* @throws InvalidDBParameterGroupStateException
* The DB parameter group is in use or is in an invalid state. If you are attempting to delete the parameter
* group, you cannot delete it when the parameter group is in this state.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName does not refer to an existing DB parameter group.
* @sample AmazonNeptune.ResetDBClusterParameterGroup
* @see AWS API Documentation
*/
ResetDBClusterParameterGroupResult resetDBClusterParameterGroup(ResetDBClusterParameterGroupRequest resetDBClusterParameterGroupRequest);
/**
*
* Modifies the parameters of a DB parameter group to the engine/system default value. To reset specific parameters,
* provide a list of the following: ParameterName
and ApplyMethod
. To reset the entire DB
* parameter group, specify the DBParameterGroup
name and ResetAllParameters
parameters.
* When resetting the entire group, dynamic parameters are updated immediately and static parameters are set to
* pending-reboot
to take effect on the next DB instance restart or RebootDBInstance
* request.
*
*
* @param resetDBParameterGroupRequest
* @return Result of the ResetDBParameterGroup operation returned by the service.
* @throws InvalidDBParameterGroupStateException
* The DB parameter group is in use or is in an invalid state. If you are attempting to delete the parameter
* group, you cannot delete it when the parameter group is in this state.
* @throws DBParameterGroupNotFoundException
* DBParameterGroupName does not refer to an existing DB parameter group.
* @sample AmazonNeptune.ResetDBParameterGroup
* @see AWS
* API Documentation
*/
ResetDBParameterGroupResult resetDBParameterGroup(ResetDBParameterGroupRequest resetDBParameterGroupRequest);
/**
*
* Creates a new DB cluster from a DB snapshot or DB cluster snapshot.
*
*
* If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default
* configuration and default security group.
*
*
* If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point
* with the same configuration as the original source DB cluster, except that the new DB cluster is created with the
* default security group.
*
*
* @param restoreDBClusterFromSnapshotRequest
* @return Result of the RestoreDBClusterFromSnapshot operation returned by the service.
* @throws DBClusterAlreadyExistsException
* User already has a DB cluster with the given identifier.
* @throws DBClusterQuotaExceededException
* User attempted to create a new DB cluster and the user has already reached the maximum allowed DB cluster
* quota.
* @throws StorageQuotaExceededException
* Request would result in user exceeding the allowed amount of storage available across all DB instances.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName does not refer to an existing DB subnet group.
* @throws DBSnapshotNotFoundException
* DBSnapshotIdentifier does not refer to an existing DB snapshot.
* @throws DBClusterSnapshotNotFoundException
* DBClusterSnapshotIdentifier does not refer to an existing DB cluster snapshot.
* @throws InsufficientDBClusterCapacityException
* The DB cluster does not have enough capacity for the current operation.
* @throws InsufficientStorageClusterCapacityException
* There is insufficient storage available for the current action. You may 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 DB snapshot does not allow deletion.
* @throws InvalidDBClusterSnapshotStateException
* The supplied value is not a valid DB cluster snapshot state.
* @throws StorageQuotaExceededException
* Request would result in user exceeding the allowed amount of storage available across all DB instances.
* @throws InvalidVPCNetworkStateException
* DB subnet group does not cover all Availability Zones after it is created because users' change.
* @throws InvalidRestoreException
* Cannot restore from vpc backup to non-vpc DB instance.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName does not refer to an existing DB subnet group.
* @throws InvalidSubnetException
* The requested subnet is invalid, or multiple subnets were requested that are not all in a common VPC.
* @throws OptionGroupNotFoundException
* The designated option group could not be found.
* @throws KMSKeyNotAccessibleException
* Error accessing KMS key.
* @throws DBClusterParameterGroupNotFoundException
* DBClusterParameterGroupName does not refer to an existing DB Cluster parameter group.
* @sample AmazonNeptune.RestoreDBClusterFromSnapshot
* @see AWS API Documentation
*/
DBCluster restoreDBClusterFromSnapshot(RestoreDBClusterFromSnapshotRequest restoreDBClusterFromSnapshotRequest);
/**
*
* Restores a DB cluster to an arbitrary point in time. Users can restore to any point in time before
* LatestRestorableTime
for up to BackupRetentionPeriod
days. The target DB cluster is
* created from the source DB cluster with the same configuration as the original DB cluster, except that the new DB
* cluster is created with the default DB security group.
*
*
*
* This action only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the
* CreateDBInstance action to create DB instances for the restored DB cluster, specifying the identifier of
* the restored DB cluster in DBClusterIdentifier
. You can create DB instances only after the
* RestoreDBClusterToPointInTime
action has completed and the DB cluster is available.
*
*
*
* @param restoreDBClusterToPointInTimeRequest
* @return Result of the RestoreDBClusterToPointInTime operation returned by the service.
* @throws DBClusterAlreadyExistsException
* User already has a DB cluster with the given identifier.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @throws DBClusterQuotaExceededException
* User attempted to create a new DB cluster and the user has already reached the maximum allowed DB cluster
* quota.
* @throws DBClusterSnapshotNotFoundException
* DBClusterSnapshotIdentifier does not refer to an existing DB cluster snapshot.
* @throws DBSubnetGroupNotFoundException
* DBSubnetGroupName does not refer to an existing DB subnet group.
* @throws InsufficientDBClusterCapacityException
* The DB cluster does not have enough capacity for the current operation.
* @throws InsufficientStorageClusterCapacityException
* There is insufficient storage available for the current action. You may be able to resolve this error by
* updating your subnet group to use different Availability Zones that have more storage available.
* @throws InvalidDBClusterSnapshotStateException
* The supplied value is not a valid DB cluster snapshot state.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @throws InvalidDBSnapshotStateException
* The state of the DB snapshot does not allow deletion.
* @throws InvalidRestoreException
* Cannot restore from vpc backup to non-vpc DB instance.
* @throws InvalidSubnetException
* The requested subnet is invalid, or multiple subnets were requested that are not all in a common VPC.
* @throws InvalidVPCNetworkStateException
* DB subnet group does not cover all Availability Zones after it is created because users' change.
* @throws KMSKeyNotAccessibleException
* Error accessing KMS key.
* @throws OptionGroupNotFoundException
* The designated option group could not be found.
* @throws StorageQuotaExceededException
* Request would result in user exceeding the allowed amount of storage available across all DB instances.
* @throws DBClusterParameterGroupNotFoundException
* DBClusterParameterGroupName does not refer to an existing DB Cluster parameter group.
* @sample AmazonNeptune.RestoreDBClusterToPointInTime
* @see AWS API Documentation
*/
DBCluster restoreDBClusterToPointInTime(RestoreDBClusterToPointInTimeRequest restoreDBClusterToPointInTimeRequest);
/**
*
* Starts an Amazon Neptune DB cluster that was stopped using the Amazon console, the Amazon CLI stop-db-cluster
* command, or the StopDBCluster API.
*
*
* @param startDBClusterRequest
* @return Result of the StartDBCluster operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @throws InvalidDBInstanceStateException
* The specified DB instance is not in the available state.
* @sample AmazonNeptune.StartDBCluster
* @see AWS API
* Documentation
*/
DBCluster startDBCluster(StartDBClusterRequest startDBClusterRequest);
/**
*
* Stops an Amazon Neptune DB cluster. When you stop a DB cluster, Neptune retains the DB cluster's metadata,
* including its endpoints and DB parameter groups.
*
*
* Neptune also retains the transaction logs so you can do a point-in-time restore if necessary.
*
*
* @param stopDBClusterRequest
* @return Result of the StopDBCluster operation returned by the service.
* @throws DBClusterNotFoundException
* DBClusterIdentifier does not refer to an existing DB cluster.
* @throws InvalidDBClusterStateException
* The DB cluster is not in a valid state.
* @throws InvalidDBInstanceStateException
* The specified DB instance is not in the available state.
* @sample AmazonNeptune.StopDBCluster
* @see AWS API
* Documentation
*/
DBCluster stopDBCluster(StopDBClusterRequest stopDBClusterRequest);
/**
* 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);
AmazonNeptuneWaiters waiters();
}