#set( $limit = $util.defaultIfNull($context.args.limit, 100) ) #set( $query = { "expression": "#connectionAttribute = :connectionAttribute", "expressionNames": { "#connectionAttribute": "seasonId" }, "expressionValues": { ":connectionAttribute": { "S": "$context.source.id" } } } ) ## [Start] Applying Key Condition ** #if( !$util.isNull($ctx.args.name) && !$util.isNull($ctx.args.name.beginsWith) ) #set( $query.expression = "$query.expression AND begins_with(#sortKey, :sortKey)" ) $util.qr($query.expressionNames.put("#sortKey", "name")) $util.qr($query.expressionValues.put(":sortKey", { "S": "$ctx.args.name.beginsWith" })) #end #if( !$util.isNull($ctx.args.name) && !$util.isNull($ctx.args.name.between) ) #set( $query.expression = "$query.expression AND #sortKey BETWEEN :sortKey0 AND :sortKey1" ) $util.qr($query.expressionNames.put("#sortKey", "name")) $util.qr($query.expressionValues.put(":sortKey0", { "S": "$ctx.args.name.between[0]" })) $util.qr($query.expressionValues.put(":sortKey1", { "S": "$ctx.args.name.between[1]" })) #end #if( !$util.isNull($ctx.args.name) && !$util.isNull($ctx.args.name.eq) ) #set( $query.expression = "$query.expression AND #sortKey = :sortKey" ) $util.qr($query.expressionNames.put("#sortKey", "name")) $util.qr($query.expressionValues.put(":sortKey", { "S": "$ctx.args.name.eq" })) #end #if( !$util.isNull($ctx.args.name) && !$util.isNull($ctx.args.name.lt) ) #set( $query.expression = "$query.expression AND #sortKey < :sortKey" ) $util.qr($query.expressionNames.put("#sortKey", "name")) $util.qr($query.expressionValues.put(":sortKey", { "S": "$ctx.args.name.lt" })) #end #if( !$util.isNull($ctx.args.name) && !$util.isNull($ctx.args.name.le) ) #set( $query.expression = "$query.expression AND #sortKey <= :sortKey" ) $util.qr($query.expressionNames.put("#sortKey", "name")) $util.qr($query.expressionValues.put(":sortKey", { "S": "$ctx.args.name.le" })) #end #if( !$util.isNull($ctx.args.name) && !$util.isNull($ctx.args.name.gt) ) #set( $query.expression = "$query.expression AND #sortKey > :sortKey" ) $util.qr($query.expressionNames.put("#sortKey", "name")) $util.qr($query.expressionValues.put(":sortKey", { "S": "$ctx.args.name.gt" })) #end #if( !$util.isNull($ctx.args.name) && !$util.isNull($ctx.args.name.ge) ) #set( $query.expression = "$query.expression AND #sortKey >= :sortKey" ) $util.qr($query.expressionNames.put("#sortKey", "name")) $util.qr($query.expressionValues.put(":sortKey", { "S": "$ctx.args.name.ge" })) #end ## [End] Applying Key Condition ** { "version": "2017-02-28", "operation": "Query", "query": $util.toJson($query), "scanIndexForward": #if( $context.args.sortDirection ) #if( $context.args.sortDirection == "ASC" ) true #else false #end #else true #end, "filter": #if( $context.args.filter ) $util.transform.toDynamoDBFilterExpression($ctx.args.filter) #else null #end, "limit": $limit, "nextToken": #if( $context.args.nextToken ) $util.toJson($context.args.nextToken) #else null #end, "index": "gsi-SeasonStages" }