Values
- class aws_cdk.aws_appsync.Values
Bases:
object
Factory class for attribute value assignments.
- ExampleMetadata:
infused
Example:
api = appsync.GraphqlApi(self, "Api", name="demo", definition=appsync.Definition.from_file(path.join(__dirname, "schema.graphql")), authorization_config=appsync.AuthorizationConfig( default_authorization=appsync.AuthorizationMode( authorization_type=appsync.AuthorizationType.IAM ) ), xray_enabled=True ) demo_table = dynamodb.Table(self, "DemoTable", partition_key=dynamodb.Attribute( name="id", type=dynamodb.AttributeType.STRING ) ) demo_dS = api.add_dynamo_db_data_source("demoDataSource", demo_table) # 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 demo_dS.create_resolver("QueryGetDemosResolver", type_name="Query", field_name="getDemos", request_mapping_template=appsync.MappingTemplate.dynamo_db_scan_table(), response_mapping_template=appsync.MappingTemplate.dynamo_db_result_list() ) # Resolver for the Mutation "addDemo" that puts the item into the DynamoDb table. demo_dS.create_resolver("MutationAddDemoResolver", type_name="Mutation", field_name="addDemo", request_mapping_template=appsync.MappingTemplate.dynamo_db_put_item( appsync.PrimaryKey.partition("id").auto(), appsync.Values.projecting("input")), response_mapping_template=appsync.MappingTemplate.dynamo_db_result_item() ) # To enable DynamoDB read consistency with the `MappingTemplate`: demo_dS.create_resolver("QueryGetDemosConsistentResolver", type_name="Query", field_name="getDemosConsistent", request_mapping_template=appsync.MappingTemplate.dynamo_db_scan_table(True), response_mapping_template=appsync.MappingTemplate.dynamo_db_result_list() )
Static Methods
- classmethod attribute(attr)
Allows assigning a value to the specified attribute.
- Parameters:
attr (
str
) –- Return type:
- classmethod projecting(arg=None)
Treats the specified object as a map of assignments, where the property names represent attribute names.
It’s opinionated about how it represents some of the nested objects: e.g., it will use lists (“L”) rather than sets (“SS”, “NS”, “BS”). By default it projects the argument container (“$ctx.args”).
- Parameters:
arg (
Optional
[str
]) –- Return type: