public class ScanRequest extends AmazonWebServiceRequest implements Serializable
Scan operation
.
The Scan operation returns one or more items and item attributes by accessing every item in the table. To have DynamoDB return fewer items, you can provide a ScanFilter .
If the total number of scanned items exceeds the maximum data set size limit of 1 MB, the scan stops and results are returned to the user with a LastEvaluatedKey to continue the scan in a subsequent operation. The results also include the number of items exceeding the limit. A scan can result in no table data meeting the filter criteria.
The result set is eventually consistent.
By default, Scan operations proceed sequentially; however, for faster performance on large tables, applications can request a parallel Scan by specifying the Segment and TotalSegments parameters. For more information, see Parallel Scan in the Amazon DynamoDB Developer Guide.
NOOP
Constructor and Description |
---|
ScanRequest()
Default constructor for a new ScanRequest object.
|
ScanRequest(String tableName)
Constructs a new ScanRequest object.
|
Modifier and Type | Method and Description |
---|---|
ScanRequest |
addExclusiveStartKeyEntry(String key,
AttributeValue value)
The primary key of the first item that this operation will evaluate.
|
ScanRequest |
addScanFilterEntry(String key,
Condition value)
Evaluates the scan results and returns only the desired values.
|
ScanRequest |
clearExclusiveStartKeyEntries()
Removes all the entries added into ExclusiveStartKey.
|
ScanRequest |
clearScanFilterEntries()
Removes all the entries added into ScanFilter.
|
boolean |
equals(Object obj) |
List<String> |
getAttributesToGet()
The names of one or more attributes to retrieve.
|
String |
getConditionalOperator()
A logical operator to apply to the conditions in the ScanFilter
map:
|
Map<String,AttributeValue> |
getExclusiveStartKey()
The primary key of the first item that this operation will evaluate.
|
Integer |
getLimit()
The maximum number of items to evaluate (not necessarily the number of
matching items).
|
String |
getReturnConsumedCapacity()
If set to
TOTAL , the response includes
ConsumedCapacity data for tables and indexes. |
Map<String,Condition> |
getScanFilter()
Evaluates the scan results and returns only the desired values.
|
Integer |
getSegment()
For a parallel Scan request, Segment identifies an
individual segment to be scanned by an application worker.
|
String |
getSelect()
The attributes to be returned in the result.
|
String |
getTableName()
The name of the table containing the requested items.
|
Integer |
getTotalSegments()
For a parallel Scan request, TotalSegments represents
the total number of segments into which the Scan operation will
be divided.
|
int |
hashCode() |
void |
setAttributesToGet(Collection<String> attributesToGet)
The names of one or more attributes to retrieve.
|
void |
setConditionalOperator(ConditionalOperator conditionalOperator)
A logical operator to apply to the conditions in the ScanFilter
map:
|
void |
setConditionalOperator(String conditionalOperator)
A logical operator to apply to the conditions in the ScanFilter
map:
|
void |
setExclusiveStartKey(Map.Entry<String,AttributeValue> hashKey,
Map.Entry<String,AttributeValue> rangeKey)
The primary key of the first item that this operation will evaluate.
|
void |
setExclusiveStartKey(Map<String,AttributeValue> exclusiveStartKey)
The primary key of the first item that this operation will evaluate.
|
void |
setLimit(Integer limit)
The maximum number of items to evaluate (not necessarily the number of
matching items).
|
void |
setReturnConsumedCapacity(ReturnConsumedCapacity returnConsumedCapacity)
If set to
TOTAL , the response includes
ConsumedCapacity data for tables and indexes. |
void |
setReturnConsumedCapacity(String returnConsumedCapacity)
If set to
TOTAL , the response includes
ConsumedCapacity data for tables and indexes. |
void |
setScanFilter(Map<String,Condition> scanFilter)
Evaluates the scan results and returns only the desired values.
|
void |
setSegment(Integer segment)
For a parallel Scan request, Segment identifies an
individual segment to be scanned by an application worker.
|
void |
setSelect(Select select)
The attributes to be returned in the result.
|
void |
setSelect(String select)
The attributes to be returned in the result.
|
void |
setTableName(String tableName)
The name of the table containing the requested items.
|
void |
setTotalSegments(Integer totalSegments)
For a parallel Scan request, TotalSegments represents
the total number of segments into which the Scan operation will
be divided.
|
String |
toString()
Returns a string representation of this object; useful for testing and
debugging.
|
ScanRequest |
withAttributesToGet(Collection<String> attributesToGet)
The names of one or more attributes to retrieve.
|
ScanRequest |
withAttributesToGet(String... attributesToGet)
The names of one or more attributes to retrieve.
|
ScanRequest |
withConditionalOperator(ConditionalOperator conditionalOperator)
A logical operator to apply to the conditions in the ScanFilter
map:
|
ScanRequest |
withConditionalOperator(String conditionalOperator)
A logical operator to apply to the conditions in the ScanFilter
map:
|
ScanRequest |
withExclusiveStartKey(Map.Entry<String,AttributeValue> hashKey,
Map.Entry<String,AttributeValue> rangeKey)
The primary key of the first item that this operation will evaluate.
|
ScanRequest |
withExclusiveStartKey(Map<String,AttributeValue> exclusiveStartKey)
The primary key of the first item that this operation will evaluate.
|
ScanRequest |
withLimit(Integer limit)
The maximum number of items to evaluate (not necessarily the number of
matching items).
|
ScanRequest |
withReturnConsumedCapacity(ReturnConsumedCapacity returnConsumedCapacity)
If set to
TOTAL , the response includes
ConsumedCapacity data for tables and indexes. |
ScanRequest |
withReturnConsumedCapacity(String returnConsumedCapacity)
If set to
TOTAL , the response includes
ConsumedCapacity data for tables and indexes. |
ScanRequest |
withScanFilter(Map<String,Condition> scanFilter)
Evaluates the scan results and returns only the desired values.
|
ScanRequest |
withSegment(Integer segment)
For a parallel Scan request, Segment identifies an
individual segment to be scanned by an application worker.
|
ScanRequest |
withSelect(Select select)
The attributes to be returned in the result.
|
ScanRequest |
withSelect(String select)
The attributes to be returned in the result.
|
ScanRequest |
withTableName(String tableName)
The name of the table containing the requested items.
|
ScanRequest |
withTotalSegments(Integer totalSegments)
For a parallel Scan request, TotalSegments represents
the total number of segments into which the Scan operation will
be divided.
|
copyPrivateRequestParameters, getCustomRequestHeaders, getGeneralProgressListener, getReadLimit, getRequestClientOptions, getRequestCredentials, getRequestMetricCollector, putCustomRequestHeader, setGeneralProgressListener, setRequestCredentials, setRequestMetricCollector, withGeneralProgressListener, withRequestMetricCollector
public ScanRequest()
public ScanRequest(String tableName)
tableName
- The name of the table containing the requested items.public String getTableName()
Constraints:
Length: 3 - 255
Pattern: [a-zA-Z0-9_.-]+
public void setTableName(String tableName)
Constraints:
Length: 3 - 255
Pattern: [a-zA-Z0-9_.-]+
tableName
- The name of the table containing the requested items.public ScanRequest withTableName(String tableName)
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 3 - 255
Pattern: [a-zA-Z0-9_.-]+
tableName
- The name of the table containing the requested items.public List<String> getAttributesToGet()
Note that AttributesToGet has no effect on provisioned throughput consumption. DynamoDB determines capacity units consumed based on item size, not on the amount of data that is returned to an application.
Constraints:
Length: 1 -
Note that AttributesToGet has no effect on provisioned throughput consumption. DynamoDB determines capacity units consumed based on item size, not on the amount of data that is returned to an application.
public void setAttributesToGet(Collection<String> attributesToGet)
Note that AttributesToGet has no effect on provisioned throughput consumption. DynamoDB determines capacity units consumed based on item size, not on the amount of data that is returned to an application.
Constraints:
Length: 1 -
attributesToGet
- The names of one or more attributes to retrieve. If no attribute names
are specified, then all attributes will be returned. If any of the
requested attributes are not found, they will not appear in the
result. Note that AttributesToGet has no effect on provisioned throughput consumption. DynamoDB determines capacity units consumed based on item size, not on the amount of data that is returned to an application.
public ScanRequest withAttributesToGet(String... attributesToGet)
Note that AttributesToGet has no effect on provisioned throughput consumption. DynamoDB determines capacity units consumed based on item size, not on the amount of data that is returned to an application.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 1 -
attributesToGet
- The names of one or more attributes to retrieve. If no attribute names
are specified, then all attributes will be returned. If any of the
requested attributes are not found, they will not appear in the
result. Note that AttributesToGet has no effect on provisioned throughput consumption. DynamoDB determines capacity units consumed based on item size, not on the amount of data that is returned to an application.
public ScanRequest withAttributesToGet(Collection<String> attributesToGet)
Note that AttributesToGet has no effect on provisioned throughput consumption. DynamoDB determines capacity units consumed based on item size, not on the amount of data that is returned to an application.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 1 -
attributesToGet
- The names of one or more attributes to retrieve. If no attribute names
are specified, then all attributes will be returned. If any of the
requested attributes are not found, they will not appear in the
result. Note that AttributesToGet has no effect on provisioned throughput consumption. DynamoDB determines capacity units consumed based on item size, not on the amount of data that is returned to an application.
public Integer getLimit()
Constraints:
Range: 1 -
public void setLimit(Integer limit)
Constraints:
Range: 1 -
limit
- The maximum number of items to evaluate (not necessarily the number of
matching items). If DynamoDB processes the number of items up to the
limit while processing the results, it stops the operation and returns
the matching values up to that point, and a LastEvaluatedKey to
apply in a subsequent operation, so that you can pick up where you
left off. Also, if the processed data set size exceeds 1 MB before
DynamoDB reaches this limit, it stops the operation and returns the
matching values up to the limit, and a LastEvaluatedKey to
apply in a subsequent operation to continue the operation. For more
information, see Query
and Scan in the Amazon DynamoDB Developer Guide.public ScanRequest withLimit(Integer limit)
Returns a reference to this object so that method calls can be chained together.
Constraints:
Range: 1 -
limit
- The maximum number of items to evaluate (not necessarily the number of
matching items). If DynamoDB processes the number of items up to the
limit while processing the results, it stops the operation and returns
the matching values up to that point, and a LastEvaluatedKey to
apply in a subsequent operation, so that you can pick up where you
left off. Also, if the processed data set size exceeds 1 MB before
DynamoDB reaches this limit, it stops the operation and returns the
matching values up to the limit, and a LastEvaluatedKey to
apply in a subsequent operation to continue the operation. For more
information, see Query
and Scan in the Amazon DynamoDB Developer Guide.public String getSelect()
ALL_ATTRIBUTES
: Returns all of the item
attributes.
COUNT
: Returns the number of
matching items, rather than the matching items themselves.
SPECIFIC_ATTRIBUTES
: Returns only the attributes
listed in AttributesToGet. This is equivalent to specifying
AttributesToGet without specifying any value for Select.
If neither Select nor AttributesToGet are
specified, DynamoDB defaults to ALL_ATTRIBUTES
. You
cannot use both Select and AttributesToGet together in a
single request, unless the value for Select is
SPECIFIC_ATTRIBUTES
. (This usage is equivalent to
specifying AttributesToGet without any value for
Select.)
Constraints:
Allowed Values: ALL_ATTRIBUTES, ALL_PROJECTED_ATTRIBUTES, SPECIFIC_ATTRIBUTES, COUNT
ALL_ATTRIBUTES
: Returns all of the item
attributes.
COUNT
: Returns the number of
matching items, rather than the matching items themselves.
SPECIFIC_ATTRIBUTES
: Returns only the attributes
listed in AttributesToGet. This is equivalent to specifying
AttributesToGet without specifying any value for Select.
If neither Select nor AttributesToGet are
specified, DynamoDB defaults to ALL_ATTRIBUTES
. You
cannot use both Select and AttributesToGet together in a
single request, unless the value for Select is
SPECIFIC_ATTRIBUTES
. (This usage is equivalent to
specifying AttributesToGet without any value for
Select.)
Select
public void setSelect(String select)
ALL_ATTRIBUTES
: Returns all of the item
attributes.
COUNT
: Returns the number of
matching items, rather than the matching items themselves.
SPECIFIC_ATTRIBUTES
: Returns only the attributes
listed in AttributesToGet. This is equivalent to specifying
AttributesToGet without specifying any value for Select.
If neither Select nor AttributesToGet are
specified, DynamoDB defaults to ALL_ATTRIBUTES
. You
cannot use both Select and AttributesToGet together in a
single request, unless the value for Select is
SPECIFIC_ATTRIBUTES
. (This usage is equivalent to
specifying AttributesToGet without any value for
Select.)
Constraints:
Allowed Values: ALL_ATTRIBUTES, ALL_PROJECTED_ATTRIBUTES, SPECIFIC_ATTRIBUTES, COUNT
select
- The attributes to be returned in the result. You can retrieve all item
attributes, specific item attributes, or the count of matching items.
ALL_ATTRIBUTES
: Returns all of the item
attributes.
COUNT
: Returns the number of
matching items, rather than the matching items themselves.
SPECIFIC_ATTRIBUTES
: Returns only the attributes
listed in AttributesToGet. This is equivalent to specifying
AttributesToGet without specifying any value for Select.
If neither Select nor AttributesToGet are
specified, DynamoDB defaults to ALL_ATTRIBUTES
. You
cannot use both Select and AttributesToGet together in a
single request, unless the value for Select is
SPECIFIC_ATTRIBUTES
. (This usage is equivalent to
specifying AttributesToGet without any value for
Select.)
Select
public ScanRequest withSelect(String select)
ALL_ATTRIBUTES
: Returns all of the item
attributes.
COUNT
: Returns the number of
matching items, rather than the matching items themselves.
SPECIFIC_ATTRIBUTES
: Returns only the attributes
listed in AttributesToGet. This is equivalent to specifying
AttributesToGet without specifying any value for Select.
If neither Select nor AttributesToGet are
specified, DynamoDB defaults to ALL_ATTRIBUTES
. You
cannot use both Select and AttributesToGet together in a
single request, unless the value for Select is
SPECIFIC_ATTRIBUTES
. (This usage is equivalent to
specifying AttributesToGet without any value for
Select.)
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: ALL_ATTRIBUTES, ALL_PROJECTED_ATTRIBUTES, SPECIFIC_ATTRIBUTES, COUNT
select
- The attributes to be returned in the result. You can retrieve all item
attributes, specific item attributes, or the count of matching items.
ALL_ATTRIBUTES
: Returns all of the item
attributes.
COUNT
: Returns the number of
matching items, rather than the matching items themselves.
SPECIFIC_ATTRIBUTES
: Returns only the attributes
listed in AttributesToGet. This is equivalent to specifying
AttributesToGet without specifying any value for Select.
If neither Select nor AttributesToGet are
specified, DynamoDB defaults to ALL_ATTRIBUTES
. You
cannot use both Select and AttributesToGet together in a
single request, unless the value for Select is
SPECIFIC_ATTRIBUTES
. (This usage is equivalent to
specifying AttributesToGet without any value for
Select.)
Select
public void setSelect(Select select)
ALL_ATTRIBUTES
: Returns all of the item
attributes.
COUNT
: Returns the number of
matching items, rather than the matching items themselves.
SPECIFIC_ATTRIBUTES
: Returns only the attributes
listed in AttributesToGet. This is equivalent to specifying
AttributesToGet without specifying any value for Select.
If neither Select nor AttributesToGet are
specified, DynamoDB defaults to ALL_ATTRIBUTES
. You
cannot use both Select and AttributesToGet together in a
single request, unless the value for Select is
SPECIFIC_ATTRIBUTES
. (This usage is equivalent to
specifying AttributesToGet without any value for
Select.)
Constraints:
Allowed Values: ALL_ATTRIBUTES, ALL_PROJECTED_ATTRIBUTES, SPECIFIC_ATTRIBUTES, COUNT
select
- The attributes to be returned in the result. You can retrieve all item
attributes, specific item attributes, or the count of matching items.
ALL_ATTRIBUTES
: Returns all of the item
attributes.
COUNT
: Returns the number of
matching items, rather than the matching items themselves.
SPECIFIC_ATTRIBUTES
: Returns only the attributes
listed in AttributesToGet. This is equivalent to specifying
AttributesToGet without specifying any value for Select.
If neither Select nor AttributesToGet are
specified, DynamoDB defaults to ALL_ATTRIBUTES
. You
cannot use both Select and AttributesToGet together in a
single request, unless the value for Select is
SPECIFIC_ATTRIBUTES
. (This usage is equivalent to
specifying AttributesToGet without any value for
Select.)
Select
public ScanRequest withSelect(Select select)
ALL_ATTRIBUTES
: Returns all of the item
attributes.
COUNT
: Returns the number of
matching items, rather than the matching items themselves.
SPECIFIC_ATTRIBUTES
: Returns only the attributes
listed in AttributesToGet. This is equivalent to specifying
AttributesToGet without specifying any value for Select.
If neither Select nor AttributesToGet are
specified, DynamoDB defaults to ALL_ATTRIBUTES
. You
cannot use both Select and AttributesToGet together in a
single request, unless the value for Select is
SPECIFIC_ATTRIBUTES
. (This usage is equivalent to
specifying AttributesToGet without any value for
Select.)
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: ALL_ATTRIBUTES, ALL_PROJECTED_ATTRIBUTES, SPECIFIC_ATTRIBUTES, COUNT
select
- The attributes to be returned in the result. You can retrieve all item
attributes, specific item attributes, or the count of matching items.
ALL_ATTRIBUTES
: Returns all of the item
attributes.
COUNT
: Returns the number of
matching items, rather than the matching items themselves.
SPECIFIC_ATTRIBUTES
: Returns only the attributes
listed in AttributesToGet. This is equivalent to specifying
AttributesToGet without specifying any value for Select.
If neither Select nor AttributesToGet are
specified, DynamoDB defaults to ALL_ATTRIBUTES
. You
cannot use both Select and AttributesToGet together in a
single request, unless the value for Select is
SPECIFIC_ATTRIBUTES
. (This usage is equivalent to
specifying AttributesToGet without any value for
Select.)
Select
public Map<String,Condition> getScanFilter()
If you specify more than one condition in the ScanFilter map, then by default all of the conditions must evaluate to true. In other words, the conditions are ANDed together. (You can use the ConditionalOperator parameter to OR the conditions instead. If you do this, then at least one of the conditions must evaluate to true, rather than all of them.)
Each ScanFilter element consists of an attribute name to compare, along with the following:
AttributeValueList - One or more values to evaluate against the supplied attribute. The number of values in the list depends on the ComparisonOperator being used.
For type Number, value comparisons are numeric.
String value comparisons for
greater than, equals, or less than are based on ASCII character code
values. For example, a
is greater than A
,
and aa
is greater than B
. For a list of code
values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.
For Binary, DynamoDB treats each byte of the binary data as unsigned when it compares binary values, for example when evaluating query expressions.
For information on specifying data types in JSON, see JSON Data Format in the Amazon DynamoDB Developer Guide.
ComparisonOperator - A comparator for evaluating attributes. For example, equals, greater than, less than, etc.
The following comparison operators are available:
EQ | NE | LE |
LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH
| IN | BETWEEN
For complete descriptions of all comparison operators, see API_Condition.html.
If you specify more than one condition in the ScanFilter map, then by default all of the conditions must evaluate to true. In other words, the conditions are ANDed together. (You can use the ConditionalOperator parameter to OR the conditions instead. If you do this, then at least one of the conditions must evaluate to true, rather than all of them.)
Each ScanFilter element consists of an attribute name to compare, along with the following:
AttributeValueList - One or more values to evaluate against the supplied attribute. The number of values in the list depends on the ComparisonOperator being used.
For type Number, value comparisons are numeric.
String value comparisons for
greater than, equals, or less than are based on ASCII character code
values. For example, a
is greater than A
,
and aa
is greater than B
. For a list of code
values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.
For Binary, DynamoDB treats each byte of the binary data as unsigned when it compares binary values, for example when evaluating query expressions.
For information on specifying data types in JSON, see JSON Data Format in the Amazon DynamoDB Developer Guide.
ComparisonOperator - A comparator for evaluating attributes. For example, equals, greater than, less than, etc.
The following comparison operators are available:
EQ | NE | LE |
LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH
| IN | BETWEEN
For complete descriptions of all comparison operators, see API_Condition.html.
public void setScanFilter(Map<String,Condition> scanFilter)
If you specify more than one condition in the ScanFilter map, then by default all of the conditions must evaluate to true. In other words, the conditions are ANDed together. (You can use the ConditionalOperator parameter to OR the conditions instead. If you do this, then at least one of the conditions must evaluate to true, rather than all of them.)
Each ScanFilter element consists of an attribute name to compare, along with the following:
AttributeValueList - One or more values to evaluate against the supplied attribute. The number of values in the list depends on the ComparisonOperator being used.
For type Number, value comparisons are numeric.
String value comparisons for
greater than, equals, or less than are based on ASCII character code
values. For example, a
is greater than A
,
and aa
is greater than B
. For a list of code
values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.
For Binary, DynamoDB treats each byte of the binary data as unsigned when it compares binary values, for example when evaluating query expressions.
For information on specifying data types in JSON, see JSON Data Format in the Amazon DynamoDB Developer Guide.
ComparisonOperator - A comparator for evaluating attributes. For example, equals, greater than, less than, etc.
The following comparison operators are available:
EQ | NE | LE |
LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH
| IN | BETWEEN
For complete descriptions of all comparison operators, see API_Condition.html.
scanFilter
- Evaluates the scan results and returns only the desired values. If you specify more than one condition in the ScanFilter map, then by default all of the conditions must evaluate to true. In other words, the conditions are ANDed together. (You can use the ConditionalOperator parameter to OR the conditions instead. If you do this, then at least one of the conditions must evaluate to true, rather than all of them.)
Each ScanFilter element consists of an attribute name to compare, along with the following:
AttributeValueList - One or more values to evaluate against the supplied attribute. The number of values in the list depends on the ComparisonOperator being used.
For type Number, value comparisons are numeric.
String value comparisons for
greater than, equals, or less than are based on ASCII character code
values. For example, a
is greater than A
,
and aa
is greater than B
. For a list of code
values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.
For Binary, DynamoDB treats each byte of the binary data as unsigned when it compares binary values, for example when evaluating query expressions.
For information on specifying data types in JSON, see JSON Data Format in the Amazon DynamoDB Developer Guide.
ComparisonOperator - A comparator for evaluating attributes. For example, equals, greater than, less than, etc.
The following comparison operators are available:
EQ | NE | LE |
LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH
| IN | BETWEEN
For complete descriptions of all comparison operators, see API_Condition.html.
public ScanRequest withScanFilter(Map<String,Condition> scanFilter)
If you specify more than one condition in the ScanFilter map, then by default all of the conditions must evaluate to true. In other words, the conditions are ANDed together. (You can use the ConditionalOperator parameter to OR the conditions instead. If you do this, then at least one of the conditions must evaluate to true, rather than all of them.)
Each ScanFilter element consists of an attribute name to compare, along with the following:
AttributeValueList - One or more values to evaluate against the supplied attribute. The number of values in the list depends on the ComparisonOperator being used.
For type Number, value comparisons are numeric.
String value comparisons for
greater than, equals, or less than are based on ASCII character code
values. For example, a
is greater than A
,
and aa
is greater than B
. For a list of code
values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.
For Binary, DynamoDB treats each byte of the binary data as unsigned when it compares binary values, for example when evaluating query expressions.
For information on specifying data types in JSON, see JSON Data Format in the Amazon DynamoDB Developer Guide.
ComparisonOperator - A comparator for evaluating attributes. For example, equals, greater than, less than, etc.
The following comparison operators are available:
EQ | NE | LE |
LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH
| IN | BETWEEN
For complete descriptions of all comparison operators, see API_Condition.html.
Returns a reference to this object so that method calls can be chained together.
scanFilter
- Evaluates the scan results and returns only the desired values. If you specify more than one condition in the ScanFilter map, then by default all of the conditions must evaluate to true. In other words, the conditions are ANDed together. (You can use the ConditionalOperator parameter to OR the conditions instead. If you do this, then at least one of the conditions must evaluate to true, rather than all of them.)
Each ScanFilter element consists of an attribute name to compare, along with the following:
AttributeValueList - One or more values to evaluate against the supplied attribute. The number of values in the list depends on the ComparisonOperator being used.
For type Number, value comparisons are numeric.
String value comparisons for
greater than, equals, or less than are based on ASCII character code
values. For example, a
is greater than A
,
and aa
is greater than B
. For a list of code
values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.
For Binary, DynamoDB treats each byte of the binary data as unsigned when it compares binary values, for example when evaluating query expressions.
For information on specifying data types in JSON, see JSON Data Format in the Amazon DynamoDB Developer Guide.
ComparisonOperator - A comparator for evaluating attributes. For example, equals, greater than, less than, etc.
The following comparison operators are available:
EQ | NE | LE |
LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH
| IN | BETWEEN
For complete descriptions of all comparison operators, see API_Condition.html.
public ScanRequest addScanFilterEntry(String key, Condition value)
If you specify more than one condition in the ScanFilter map, then by default all of the conditions must evaluate to true. In other words, the conditions are ANDed together. (You can use the ConditionalOperator parameter to OR the conditions instead. If you do this, then at least one of the conditions must evaluate to true, rather than all of them.)
Each ScanFilter element consists of an attribute name to compare, along with the following:
AttributeValueList - One or more values to evaluate against the supplied attribute. The number of values in the list depends on the ComparisonOperator being used.
For type Number, value comparisons are numeric.
String value comparisons for
greater than, equals, or less than are based on ASCII character code
values. For example, a
is greater than A
,
and aa
is greater than B
. For a list of code
values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.
For Binary, DynamoDB treats each byte of the binary data as unsigned when it compares binary values, for example when evaluating query expressions.
For information on specifying data types in JSON, see JSON Data Format in the Amazon DynamoDB Developer Guide.
ComparisonOperator - A comparator for evaluating attributes. For example, equals, greater than, less than, etc.
The following comparison operators are available:
EQ | NE | LE |
LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH
| IN | BETWEEN
For complete descriptions of all comparison operators, see API_Condition.html.
The method adds a new key-value pair into ScanFilter parameter, and returns a reference to this object so that method calls can be chained together.
key
- The key of the entry to be added into ScanFilter.value
- The corresponding value of the entry to be added into ScanFilter.public ScanRequest clearScanFilterEntries()
Returns a reference to this object so that method calls can be chained together.
public String getConditionalOperator()
AND
- If all of the conditions
evaluate to true, then the entire map evaluates to true.
OR
- If at least one of the conditions
evaluate to true, then the entire map evaluates to true.
If you omit ConditionalOperator, then AND
is
the default.
The operation will succeed only if the entire map evaluates to true.
Constraints:
Allowed Values: AND, OR
AND
- If all of the conditions
evaluate to true, then the entire map evaluates to true.
OR
- If at least one of the conditions
evaluate to true, then the entire map evaluates to true.
If you omit ConditionalOperator, then AND
is
the default.
The operation will succeed only if the entire map evaluates to true.
ConditionalOperator
public void setConditionalOperator(String conditionalOperator)
AND
- If all of the conditions
evaluate to true, then the entire map evaluates to true.
OR
- If at least one of the conditions
evaluate to true, then the entire map evaluates to true.
If you omit ConditionalOperator, then AND
is
the default.
The operation will succeed only if the entire map evaluates to true.
Constraints:
Allowed Values: AND, OR
conditionalOperator
- A logical operator to apply to the conditions in the ScanFilter
map: AND
- If all of the conditions
evaluate to true, then the entire map evaluates to true.
OR
- If at least one of the conditions
evaluate to true, then the entire map evaluates to true.
If you omit ConditionalOperator, then AND
is
the default.
The operation will succeed only if the entire map evaluates to true.
ConditionalOperator
public ScanRequest withConditionalOperator(String conditionalOperator)
AND
- If all of the conditions
evaluate to true, then the entire map evaluates to true.
OR
- If at least one of the conditions
evaluate to true, then the entire map evaluates to true.
If you omit ConditionalOperator, then AND
is
the default.
The operation will succeed only if the entire map evaluates to true.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: AND, OR
conditionalOperator
- A logical operator to apply to the conditions in the ScanFilter
map: AND
- If all of the conditions
evaluate to true, then the entire map evaluates to true.
OR
- If at least one of the conditions
evaluate to true, then the entire map evaluates to true.
If you omit ConditionalOperator, then AND
is
the default.
The operation will succeed only if the entire map evaluates to true.
ConditionalOperator
public void setConditionalOperator(ConditionalOperator conditionalOperator)
AND
- If all of the conditions
evaluate to true, then the entire map evaluates to true.
OR
- If at least one of the conditions
evaluate to true, then the entire map evaluates to true.
If you omit ConditionalOperator, then AND
is
the default.
The operation will succeed only if the entire map evaluates to true.
Constraints:
Allowed Values: AND, OR
conditionalOperator
- A logical operator to apply to the conditions in the ScanFilter
map: AND
- If all of the conditions
evaluate to true, then the entire map evaluates to true.
OR
- If at least one of the conditions
evaluate to true, then the entire map evaluates to true.
If you omit ConditionalOperator, then AND
is
the default.
The operation will succeed only if the entire map evaluates to true.
ConditionalOperator
public ScanRequest withConditionalOperator(ConditionalOperator conditionalOperator)
AND
- If all of the conditions
evaluate to true, then the entire map evaluates to true.
OR
- If at least one of the conditions
evaluate to true, then the entire map evaluates to true.
If you omit ConditionalOperator, then AND
is
the default.
The operation will succeed only if the entire map evaluates to true.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: AND, OR
conditionalOperator
- A logical operator to apply to the conditions in the ScanFilter
map: AND
- If all of the conditions
evaluate to true, then the entire map evaluates to true.
OR
- If at least one of the conditions
evaluate to true, then the entire map evaluates to true.
If you omit ConditionalOperator, then AND
is
the default.
The operation will succeed only if the entire map evaluates to true.
ConditionalOperator
public Map<String,AttributeValue> getExclusiveStartKey()
The data type for ExclusiveStartKey must be String, Number or Binary. No set data types are allowed.
In a parallel scan, a Scan request that includes ExclusiveStartKey must specify the same segment whose previous Scan returned the corresponding value of LastEvaluatedKey.
The data type for ExclusiveStartKey must be String, Number or Binary. No set data types are allowed.
In a parallel scan, a Scan request that includes ExclusiveStartKey must specify the same segment whose previous Scan returned the corresponding value of LastEvaluatedKey.
public void setExclusiveStartKey(Map<String,AttributeValue> exclusiveStartKey)
The data type for ExclusiveStartKey must be String, Number or Binary. No set data types are allowed.
In a parallel scan, a Scan request that includes ExclusiveStartKey must specify the same segment whose previous Scan returned the corresponding value of LastEvaluatedKey.
exclusiveStartKey
- The primary key of the first item that this operation will evaluate.
Use the value that was returned for LastEvaluatedKey in the
previous operation. The data type for ExclusiveStartKey must be String, Number or Binary. No set data types are allowed.
In a parallel scan, a Scan request that includes ExclusiveStartKey must specify the same segment whose previous Scan returned the corresponding value of LastEvaluatedKey.
public ScanRequest withExclusiveStartKey(Map<String,AttributeValue> exclusiveStartKey)
The data type for ExclusiveStartKey must be String, Number or Binary. No set data types are allowed.
In a parallel scan, a Scan request that includes ExclusiveStartKey must specify the same segment whose previous Scan returned the corresponding value of LastEvaluatedKey.
Returns a reference to this object so that method calls can be chained together.
exclusiveStartKey
- The primary key of the first item that this operation will evaluate.
Use the value that was returned for LastEvaluatedKey in the
previous operation. The data type for ExclusiveStartKey must be String, Number or Binary. No set data types are allowed.
In a parallel scan, a Scan request that includes ExclusiveStartKey must specify the same segment whose previous Scan returned the corresponding value of LastEvaluatedKey.
public void setExclusiveStartKey(Map.Entry<String,AttributeValue> hashKey, Map.Entry<String,AttributeValue> rangeKey) throws IllegalArgumentException
The data type for ExclusiveStartKey must be String, Number or Binary. No set data types are allowed.
In a parallel scan, a Scan request that includes ExclusiveStartKey must specify the same segment whose previous Scan returned the corresponding value of LastEvaluatedKey.
This method accepts the hashKey, rangeKey of ExclusiveStartKey as
java.util.Map.Entry
hashKey
- Primary hash key.rangeKey
- Primary range key. (null if it a hash-only table)IllegalArgumentException
public ScanRequest withExclusiveStartKey(Map.Entry<String,AttributeValue> hashKey, Map.Entry<String,AttributeValue> rangeKey) throws IllegalArgumentException
The data type for ExclusiveStartKey must be String, Number or Binary. No set data types are allowed.
In a parallel scan, a Scan request that includes ExclusiveStartKey must specify the same segment whose previous Scan returned the corresponding value of LastEvaluatedKey.
This method accepts the hashKey, rangeKey of ExclusiveStartKey as
java.util.Map.Entry
Returns a reference to this object so that method calls can be chained together.
hashKey
- Primary hash key.rangeKey
- Primary range key. (null if it a hash-only table)IllegalArgumentException
public ScanRequest addExclusiveStartKeyEntry(String key, AttributeValue value)
The data type for ExclusiveStartKey must be String, Number or Binary. No set data types are allowed.
In a parallel scan, a Scan request that includes ExclusiveStartKey must specify the same segment whose previous Scan returned the corresponding value of LastEvaluatedKey.
The method adds a new key-value pair into ExclusiveStartKey parameter, and returns a reference to this object so that method calls can be chained together.
key
- The key of the entry to be added into ExclusiveStartKey.value
- The corresponding value of the entry to be added into ExclusiveStartKey.public ScanRequest clearExclusiveStartKeyEntries()
Returns a reference to this object so that method calls can be chained together.
public String getReturnConsumedCapacity()
TOTAL
, the response includes
ConsumedCapacity data for tables and indexes. If set to
INDEXES
, the response includes ConsumedCapacity
for indexes. If set to NONE
(the default),
ConsumedCapacity is not included in the response.
Constraints:
Allowed Values: INDEXES, TOTAL, NONE
TOTAL
, the response includes
ConsumedCapacity data for tables and indexes. If set to
INDEXES
, the response includes ConsumedCapacity
for indexes. If set to NONE
(the default),
ConsumedCapacity is not included in the response.ReturnConsumedCapacity
public void setReturnConsumedCapacity(String returnConsumedCapacity)
TOTAL
, the response includes
ConsumedCapacity data for tables and indexes. If set to
INDEXES
, the response includes ConsumedCapacity
for indexes. If set to NONE
(the default),
ConsumedCapacity is not included in the response.
Constraints:
Allowed Values: INDEXES, TOTAL, NONE
returnConsumedCapacity
- If set to TOTAL
, the response includes
ConsumedCapacity data for tables and indexes. If set to
INDEXES
, the response includes ConsumedCapacity
for indexes. If set to NONE
(the default),
ConsumedCapacity is not included in the response.ReturnConsumedCapacity
public ScanRequest withReturnConsumedCapacity(String returnConsumedCapacity)
TOTAL
, the response includes
ConsumedCapacity data for tables and indexes. If set to
INDEXES
, the response includes ConsumedCapacity
for indexes. If set to NONE
(the default),
ConsumedCapacity is not included in the response.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: INDEXES, TOTAL, NONE
returnConsumedCapacity
- If set to TOTAL
, the response includes
ConsumedCapacity data for tables and indexes. If set to
INDEXES
, the response includes ConsumedCapacity
for indexes. If set to NONE
(the default),
ConsumedCapacity is not included in the response.ReturnConsumedCapacity
public void setReturnConsumedCapacity(ReturnConsumedCapacity returnConsumedCapacity)
TOTAL
, the response includes
ConsumedCapacity data for tables and indexes. If set to
INDEXES
, the response includes ConsumedCapacity
for indexes. If set to NONE
(the default),
ConsumedCapacity is not included in the response.
Constraints:
Allowed Values: INDEXES, TOTAL, NONE
returnConsumedCapacity
- If set to TOTAL
, the response includes
ConsumedCapacity data for tables and indexes. If set to
INDEXES
, the response includes ConsumedCapacity
for indexes. If set to NONE
(the default),
ConsumedCapacity is not included in the response.ReturnConsumedCapacity
public ScanRequest withReturnConsumedCapacity(ReturnConsumedCapacity returnConsumedCapacity)
TOTAL
, the response includes
ConsumedCapacity data for tables and indexes. If set to
INDEXES
, the response includes ConsumedCapacity
for indexes. If set to NONE
(the default),
ConsumedCapacity is not included in the response.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: INDEXES, TOTAL, NONE
returnConsumedCapacity
- If set to TOTAL
, the response includes
ConsumedCapacity data for tables and indexes. If set to
INDEXES
, the response includes ConsumedCapacity
for indexes. If set to NONE
(the default),
ConsumedCapacity is not included in the response.ReturnConsumedCapacity
public Integer getTotalSegments()
The value for TotalSegments must be greater than or equal to 1, and less than or equal to 4096. If you specify a TotalSegments value of 1, the Scan will be sequential rather than parallel.
If you specify TotalSegments, you must also specify Segment.
Constraints:
Range: 1 - 1000000
The value for TotalSegments must be greater than or equal to 1, and less than or equal to 4096. If you specify a TotalSegments value of 1, the Scan will be sequential rather than parallel.
If you specify TotalSegments, you must also specify Segment.
public void setTotalSegments(Integer totalSegments)
The value for TotalSegments must be greater than or equal to 1, and less than or equal to 4096. If you specify a TotalSegments value of 1, the Scan will be sequential rather than parallel.
If you specify TotalSegments, you must also specify Segment.
Constraints:
Range: 1 - 1000000
totalSegments
- For a parallel Scan request, TotalSegments represents
the total number of segments into which the Scan operation will
be divided. The value of TotalSegments corresponds to the
number of application workers that will perform the parallel scan. For
example, if you want to scan a table using four application threads,
you would specify a TotalSegments value of 4. The value for TotalSegments must be greater than or equal to 1, and less than or equal to 4096. If you specify a TotalSegments value of 1, the Scan will be sequential rather than parallel.
If you specify TotalSegments, you must also specify Segment.
public ScanRequest withTotalSegments(Integer totalSegments)
The value for TotalSegments must be greater than or equal to 1, and less than or equal to 4096. If you specify a TotalSegments value of 1, the Scan will be sequential rather than parallel.
If you specify TotalSegments, you must also specify Segment.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Range: 1 - 1000000
totalSegments
- For a parallel Scan request, TotalSegments represents
the total number of segments into which the Scan operation will
be divided. The value of TotalSegments corresponds to the
number of application workers that will perform the parallel scan. For
example, if you want to scan a table using four application threads,
you would specify a TotalSegments value of 4. The value for TotalSegments must be greater than or equal to 1, and less than or equal to 4096. If you specify a TotalSegments value of 1, the Scan will be sequential rather than parallel.
If you specify TotalSegments, you must also specify Segment.
public Integer getSegment()
Segment IDs are zero-based, so the first segment is always 0. For example, if you want to scan a table using four application threads, the first thread would specify a Segment value of 0, the second thread would specify 1, and so on.
The value of LastEvaluatedKey returned from a parallel Scan request must be used as ExclusiveStartKey with the same Segment ID in a subsequent Scan operation.
The value for Segment must be greater than or equal to 0, and less than the value provided for TotalSegments.
If you specify Segment, you must also specify TotalSegments.
Constraints:
Range: 0 - 999999
Segment IDs are zero-based, so the first segment is always 0. For example, if you want to scan a table using four application threads, the first thread would specify a Segment value of 0, the second thread would specify 1, and so on.
The value of LastEvaluatedKey returned from a parallel Scan request must be used as ExclusiveStartKey with the same Segment ID in a subsequent Scan operation.
The value for Segment must be greater than or equal to 0, and less than the value provided for TotalSegments.
If you specify Segment, you must also specify TotalSegments.
public void setSegment(Integer segment)
Segment IDs are zero-based, so the first segment is always 0. For example, if you want to scan a table using four application threads, the first thread would specify a Segment value of 0, the second thread would specify 1, and so on.
The value of LastEvaluatedKey returned from a parallel Scan request must be used as ExclusiveStartKey with the same Segment ID in a subsequent Scan operation.
The value for Segment must be greater than or equal to 0, and less than the value provided for TotalSegments.
If you specify Segment, you must also specify TotalSegments.
Constraints:
Range: 0 - 999999
segment
- For a parallel Scan request, Segment identifies an
individual segment to be scanned by an application worker. Segment IDs are zero-based, so the first segment is always 0. For example, if you want to scan a table using four application threads, the first thread would specify a Segment value of 0, the second thread would specify 1, and so on.
The value of LastEvaluatedKey returned from a parallel Scan request must be used as ExclusiveStartKey with the same Segment ID in a subsequent Scan operation.
The value for Segment must be greater than or equal to 0, and less than the value provided for TotalSegments.
If you specify Segment, you must also specify TotalSegments.
public ScanRequest withSegment(Integer segment)
Segment IDs are zero-based, so the first segment is always 0. For example, if you want to scan a table using four application threads, the first thread would specify a Segment value of 0, the second thread would specify 1, and so on.
The value of LastEvaluatedKey returned from a parallel Scan request must be used as ExclusiveStartKey with the same Segment ID in a subsequent Scan operation.
The value for Segment must be greater than or equal to 0, and less than the value provided for TotalSegments.
If you specify Segment, you must also specify TotalSegments.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Range: 0 - 999999
segment
- For a parallel Scan request, Segment identifies an
individual segment to be scanned by an application worker. Segment IDs are zero-based, so the first segment is always 0. For example, if you want to scan a table using four application threads, the first thread would specify a Segment value of 0, the second thread would specify 1, and so on.
The value of LastEvaluatedKey returned from a parallel Scan request must be used as ExclusiveStartKey with the same Segment ID in a subsequent Scan operation.
The value for Segment must be greater than or equal to 0, and less than the value provided for TotalSegments.
If you specify Segment, you must also specify TotalSegments.
public String toString()
toString
in class Object
Object.toString()
Copyright © 2015. All rights reserved.