Example usage for com.amazonaws.services.dynamodbv2.model QueryRequest setExpressionAttributeValues

List of usage examples for com.amazonaws.services.dynamodbv2.model QueryRequest setExpressionAttributeValues

Introduction

In this page you can find the example usage for com.amazonaws.services.dynamodbv2.model QueryRequest setExpressionAttributeValues.

Prototype


public void setExpressionAttributeValues(java.util.Map<String, AttributeValue> expressionAttributeValues) 

Source Link

Document

One or more values that can be substituted in an expression.

Usage

From source file:org.iternine.jeppetto.dao.dynamodb.DynamoDBQueryModelDAO.java

License:Apache License

private void applyExpressions(ConditionExpressionBuilder conditionExpressionBuilder,
        QueryRequest queryRequest) {
    Map<String, String> expressionAttributeNames;

    queryRequest.setProjectionExpression(projectionExpression);

    if (conditionExpressionBuilder.hasExpression()) {
        queryRequest.setFilterExpression(conditionExpressionBuilder.getExpression());

        if (!conditionExpressionBuilder.getExpressionAttributeValues().isEmpty()) {
            queryRequest
                    .setExpressionAttributeValues(conditionExpressionBuilder.getExpressionAttributeValues());
        }/*from w  w w.ja  va2s .c  om*/

        if (projectionExpressionNames.isEmpty()) {
            expressionAttributeNames = conditionExpressionBuilder.getExpressionAttributeNames();
        } else if (conditionExpressionBuilder.getExpressionAttributeNames().isEmpty()) {
            expressionAttributeNames = projectionExpressionNames;
        } else {
            expressionAttributeNames = new LinkedHashMap<String, String>();
            expressionAttributeNames.putAll(conditionExpressionBuilder.getExpressionAttributeNames());
            expressionAttributeNames.putAll(projectionExpressionNames);
        }
    } else {
        expressionAttributeNames = projectionExpressionNames;
    }

    if (!expressionAttributeNames.isEmpty()) {
        queryRequest.setExpressionAttributeNames(expressionAttributeNames);
    }
}