com.amazonaws.services.dynamodb.datamodeling
Class DynamoDBScanExpression

java.lang.Object
  extended by com.amazonaws.services.dynamodb.datamodeling.DynamoDBScanExpression

public class DynamoDBScanExpression
extends Object

Options for filtering results from a scan operation. For example, callers can specify filter conditions so that only objects whose attributes match different conditions are returned (see ComparisonOperator for more information on the available comparison types).

See Also:
DynamoDBMapper.scan(Class, DynamoDBScanExpression)

Constructor Summary
DynamoDBScanExpression()
           
 
Method Summary
 void addFilterCondition(String attributeName, Condition condition)
          Adds a new filter condition to the current scan filter.
 Key getExclusiveStartKey()
          Returns the exclusive start key for this scan.
 Integer getLimit()
          Returns the limit of items to scan during this scan.
 Map<String,Condition> getScanFilter()
          Returns the scan filter as a map of attribute names to conditions.
 void setExclusiveStartKey(Key exclusiveStartKey)
          Sets the exclusive start key for this scan.
 void setLimit(Integer limit)
          Sets the limit of items to scan during this scan.
 void setScanFilter(Map<String,Condition> scanFilter)
          Sets the scan filter to the map of attribute names to conditions.
 DynamoDBScanExpression withExclusiveStartKey(Key exclusiveStartKey)
          Sets the exclusive start key for this scan and returns a pointer to this object for method-chaining.
 DynamoDBScanExpression withLimit(Integer limit)
          Sets the limit of items to scan and returns a pointer to this object for method-chaining.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DynamoDBScanExpression

public DynamoDBScanExpression()
Method Detail

setScanFilter

public void setScanFilter(Map<String,Condition> scanFilter)
Sets the scan filter to the map of attribute names to conditions.

Parameters:
scanFilter - The map of attribute names to conditions to use when filtering scan results.

getScanFilter

public Map<String,Condition> getScanFilter()
Returns the scan filter as a map of attribute names to conditions.

Returns:
The scan filter as a map of attribute names to conditions.

addFilterCondition

public void addFilterCondition(String attributeName,
                               Condition condition)
Adds a new filter condition to the current scan filter.

Parameters:
attributeName - The name of the attribute on which the specified condition operates.
condition - The condition which describes how the specified attribute is compared and if a row of data is included in the results returned by the scan operation.

getExclusiveStartKey

public Key getExclusiveStartKey()
Returns the exclusive start key for this scan.


setExclusiveStartKey

public void setExclusiveStartKey(Key exclusiveStartKey)
Sets the exclusive start key for this scan.


withExclusiveStartKey

public DynamoDBScanExpression withExclusiveStartKey(Key exclusiveStartKey)
Sets the exclusive start key for this scan and returns a pointer to this object for method-chaining.


getLimit

public Integer getLimit()
Returns the limit of items to scan during this scan.

Use with caution. Please note that this is not the same as the number of items to return from the scan operation -- the operation will cease and return as soon as this many items are scanned, even if no matching results are found. Furthermore, PaginatedScanList will execute as many scan operations as necessary until it either reaches the end of the result set as indicated by DynamoDB or enough elements are available to fulfill the list operation (e.g. iteration). Therefore, except when scanning without a scan filter, it's usually bad practice to set a low limit, since doing so will often generate the same amount of traffic to DynamoDB but with a greater number of round trips and therefore more overall latency.


setLimit

public void setLimit(Integer limit)
Sets the limit of items to scan during this scan. Please note that this is not the same as the number of items to return from the scan operation -- the operation will cease and return as soon as this many items are scanned, even if no matching results are found.

See Also:
getLimit()

withLimit

public DynamoDBScanExpression withLimit(Integer limit)
Sets the limit of items to scan and returns a pointer to this object for method-chaining. Please note that this is not the same as the number of items to return from the scan operation -- the operation will cease and return as soon as this many items are scanned, even if no matching results are found.

See Also:
getLimit()


Copyright © 2010 Amazon Web Services, Inc. All Rights Reserved.