Class PrimaryKey
java.lang.Object
software.amazon.jsii.JsiiObject
software.amazon.awscdk.services.appsync.PrimaryKey
- All Implemented Interfaces:
software.amazon.jsii.JsiiSerializable
- Direct Known Subclasses:
PartitionKey
@Generated(value="jsii-pacmak/1.104.0 (build e79254c)",
date="2024-12-27T17:01:57.343Z")
@Stability(Stable)
public class PrimaryKey
extends software.amazon.jsii.JsiiObject
Specifies the assignment to the primary key.
It either contains the full primary key or only the partition key.
Example:
GraphqlApi api = GraphqlApi.Builder.create(this, "Api") .name("demo") .definition(Definition.fromFile(join(__dirname, "schema.graphql"))) .authorizationConfig(AuthorizationConfig.builder() .defaultAuthorization(AuthorizationMode.builder() .authorizationType(AuthorizationType.IAM) .build()) .build()) .xrayEnabled(true) .build(); Table demoTable = Table.Builder.create(this, "DemoTable") .partitionKey(Attribute.builder() .name("id") .type(AttributeType.STRING) .build()) .build(); DynamoDbDataSource demoDS = api.addDynamoDbDataSource("demoDataSource", demoTable); // Resolver for the Query "getDemos" that scans the DynamoDb table and returns the entire list. // Resolver Mapping Template Reference: // https://docs.aws.amazon.com/appsync/latest/devguide/resolver-mapping-template-reference-dynamodb.html demoDS.createResolver("QueryGetDemosResolver", BaseResolverProps.builder() .typeName("Query") .fieldName("getDemos") .requestMappingTemplate(MappingTemplate.dynamoDbScanTable()) .responseMappingTemplate(MappingTemplate.dynamoDbResultList()) .build()); // Resolver for the Mutation "addDemo" that puts the item into the DynamoDb table. demoDS.createResolver("MutationAddDemoResolver", BaseResolverProps.builder() .typeName("Mutation") .fieldName("addDemo") .requestMappingTemplate(MappingTemplate.dynamoDbPutItem(PrimaryKey.partition("id").auto(), Values.projecting("input"))) .responseMappingTemplate(MappingTemplate.dynamoDbResultItem()) .build()); //To enable DynamoDB read consistency with the `MappingTemplate`: demoDS.createResolver("QueryGetDemosConsistentResolver", BaseResolverProps.builder() .typeName("Query") .fieldName("getDemosConsistent") .requestMappingTemplate(MappingTemplate.dynamoDbScanTable(true)) .responseMappingTemplate(MappingTemplate.dynamoDbResultList()) .build());
-
Nested Class Summary
Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationMode
-
Constructor Summary
ModifierConstructorDescriptionPrimaryKey
(Assign pkey) PrimaryKey
(Assign pkey, Assign skey) protected
PrimaryKey
(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) protected
PrimaryKey
(software.amazon.jsii.JsiiObjectRef objRef) -
Method Summary
Modifier and TypeMethodDescriptionprotected Assign
getPkey()
static PartitionKeyStep
Allows assigning a value to the partition key.Renders the key assignment to a VTL string.Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Constructor Details
-
PrimaryKey
protected PrimaryKey(software.amazon.jsii.JsiiObjectRef objRef) -
PrimaryKey
protected PrimaryKey(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
PrimaryKey
- Parameters:
pkey
- This parameter is required.skey
-
-
PrimaryKey
- Parameters:
pkey
- This parameter is required.
-
-
Method Details
-
partition
Allows assigning a value to the partition key.- Parameters:
key
- This parameter is required.
-
renderTemplate
Renders the key assignment to a VTL string. -
getPkey
-