Class ServerlessCluster
java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
software.amazon.awscdk.Resource
software.amazon.awscdk.services.rds.ServerlessCluster
- All Implemented Interfaces:
IEnvironmentAware,IResource,IConnectable,IServerlessCluster,ISecretAttachmentTarget,software.amazon.jsii.JsiiSerializable,software.constructs.IConstruct,software.constructs.IDependable
@Generated(value="jsii-pacmak/1.119.0 (build 1634eac)",
date="2025-11-13T16:10:12.740Z")
@Stability(Stable)
public class ServerlessCluster
extends Resource
implements IServerlessCluster
Create an Aurora Serverless v1 Cluster.
Example:
// Build a data source for AppSync to access the database.
GraphqlApi api;
// Create username and password secret for DB Cluster
DatabaseSecret secret = DatabaseSecret.Builder.create(this, "AuroraSecret")
.username("clusteradmin")
.build();
// The VPC to place the cluster in
Vpc vpc = new Vpc(this, "AuroraVpc");
// Create the serverless cluster, provide all values needed to customise the database.
ServerlessCluster cluster = ServerlessCluster.Builder.create(this, "AuroraCluster")
.engine(DatabaseClusterEngine.AURORA_MYSQL)
.vpc(vpc)
.credentials(Map.of("username", "clusteradmin"))
.clusterIdentifier("db-endpoint-test")
.defaultDatabaseName("demos")
.build();
RdsDataSource rdsDS = api.addRdsDataSource("rds", cluster, secret, "demos");
// Set up a resolver for an RDS query.
rdsDS.createResolver("QueryGetDemosRdsResolver", BaseResolverProps.builder()
.typeName("Query")
.fieldName("getDemosRds")
.requestMappingTemplate(MappingTemplate.fromString("\n {\n \"version\": \"2018-05-29\",\n \"statements\": [\n \"SELECT * FROM demos\"\n ]\n }\n "))
.responseMappingTemplate(MappingTemplate.fromString("\n $utils.toJson($utils.rds.toJsonObject($ctx.result)[0])\n "))
.build());
// Set up a resolver for an RDS mutation.
rdsDS.createResolver("MutationAddDemoRdsResolver", BaseResolverProps.builder()
.typeName("Mutation")
.fieldName("addDemoRds")
.requestMappingTemplate(MappingTemplate.fromString("\n {\n \"version\": \"2018-05-29\",\n \"statements\": [\n \"INSERT INTO demos VALUES (:id, :version)\",\n \"SELECT * WHERE id = :id\"\n ],\n \"variableMap\": {\n \":id\": $util.toJson($util.autoId()),\n \":version\": $util.toJson($ctx.args.version)\n }\n }\n "))
.responseMappingTemplate(MappingTemplate.fromString("\n $utils.toJson($utils.rds.toJsonObject($ctx.result)[1][0])\n "))
.build());
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationModeNested classes/interfaces inherited from interface software.constructs.IConstruct
software.constructs.IConstruct.Jsii$DefaultNested classes/interfaces inherited from interface software.amazon.awscdk.IResource
IResource.Jsii$DefaultNested classes/interfaces inherited from interface software.amazon.awscdk.services.rds.IServerlessCluster
IServerlessCluster.Jsii$Default, IServerlessCluster.Jsii$Proxy -
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedServerlessCluster(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) protectedServerlessCluster(software.amazon.jsii.JsiiObjectRef objRef) ServerlessCluster(software.constructs.Construct scope, String id, ServerlessClusterProps props) -
Method Summary
Modifier and TypeMethodDescriptionaddRotationMultiUser(String id, RotationMultiUserOptions options) Adds the multi user rotation to this cluster.Adds the single user rotation of the master password to this cluster.Adds the single user rotation of the master password to this cluster.Renders the secret attachment target specifications.static IServerlessClusterfromServerlessClusterAttributes(software.constructs.Construct scope, String id, ServerlessClusterAttributes attrs) Import an existing DatabaseCluster from properties.The ARN of the cluster.The endpoint to use for read/write operations.Identifier of the cluster.The endpoint to use for read/write operations.Access to the network connections.protected Booleanprotected CfnDBClusterPropsThe secret attached to this cluster.protected List<ISecurityGroup> grantDataApiAccess(IGrantable grantee) Grant the given identity to access to the Data API, including read access to the secret attached to the cluster if present.protected voidsetEnableDataApi(Boolean value) Methods inherited from class software.amazon.awscdk.Resource
applyRemovalPolicy, generatePhysicalName, getEnv, getPhysicalName, getResourceArnAttribute, getResourceNameAttribute, getStack, isOwnedResource, isResourceMethods inherited from class software.constructs.Construct
getNode, isConstruct, toStringMethods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSetMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface software.constructs.IConstruct
getNodeMethods inherited from interface software.amazon.awscdk.interfaces.IEnvironmentAware
getEnvMethods inherited from interface software.amazon.awscdk.IResource
applyRemovalPolicy, getStackMethods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Field Details
-
PROPERTY_INJECTION_ID
Uniquely identifies this class.
-
-
Constructor Details
-
ServerlessCluster
protected ServerlessCluster(software.amazon.jsii.JsiiObjectRef objRef) -
ServerlessCluster
protected ServerlessCluster(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
ServerlessCluster
@Stability(Stable) public ServerlessCluster(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull ServerlessClusterProps props) - Parameters:
scope- This parameter is required.id- This parameter is required.props- This parameter is required.
-
-
Method Details
-
fromServerlessClusterAttributes
@Stability(Stable) @NotNull public static IServerlessCluster fromServerlessClusterAttributes(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull ServerlessClusterAttributes attrs) Import an existing DatabaseCluster from properties.- Parameters:
scope- This parameter is required.id- This parameter is required.attrs- This parameter is required.
-
addRotationMultiUser
@Stability(Stable) @NotNull public SecretRotation addRotationMultiUser(@NotNull String id, @NotNull RotationMultiUserOptions options) Adds the multi user rotation to this cluster.- Parameters:
id- This parameter is required.options- This parameter is required.
-
addRotationSingleUser
@Stability(Stable) @NotNull public SecretRotation addRotationSingleUser(@Nullable RotationSingleUserOptions options) Adds the single user rotation of the master password to this cluster.- Parameters:
options-
-
addRotationSingleUser
Adds the single user rotation of the master password to this cluster. -
asSecretAttachmentTarget
Renders the secret attachment target specifications.- Specified by:
asSecretAttachmentTargetin interfaceISecretAttachmentTarget
-
grantDataApiAccess
Grant the given identity to access to the Data API, including read access to the secret attached to the cluster if present.- Specified by:
grantDataApiAccessin interfaceIServerlessCluster- Parameters:
grantee- The principal to grant access to. This parameter is required.
-
getClusterArn
The ARN of the cluster.- Specified by:
getClusterArnin interfaceIServerlessCluster
-
getClusterEndpoint
The endpoint to use for read/write operations.- Specified by:
getClusterEndpointin interfaceIServerlessCluster
-
getClusterIdentifier
Identifier of the cluster.- Specified by:
getClusterIdentifierin interfaceIServerlessCluster
-
getClusterReadEndpoint
The endpoint to use for read/write operations.- Specified by:
getClusterReadEndpointin interfaceIServerlessCluster
-
getConnections
Access to the network connections.- Specified by:
getConnectionsin interfaceIConnectable
-
getNewCfnProps
-
getSecurityGroups
-
getSecret
The secret attached to this cluster. -
getEnableDataApi
-
setEnableDataApi
-