|
Did this page help you?Yes No Tell us about it... |
||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.amazonaws.AmazonWebServiceRequest
com.amazonaws.services.dynamodbv2.model.UpdateItemRequest
public class UpdateItemRequest
Container for the parameters to the UpdateItem operation
.
Edits an existing item's attributes, or inserts a new item if it does not already exist. You can put, delete, or add attribute values. You can also perform a conditional update (insert a new attribute name-value pair if it doesn't exist, or replace an existing name-value pair if it has certain expected attribute values).
In addition to updating an item, you can also return the item's attribute values in the same operation, using the ReturnValues parameter.
AmazonDynamoDB.updateItem(UpdateItemRequest)
,
Serialized FormConstructor Summary | |
---|---|
UpdateItemRequest()
Default constructor for a new UpdateItemRequest object. |
|
UpdateItemRequest(String tableName,
Map<String,AttributeValue> key,
Map<String,AttributeValueUpdate> attributeUpdates)
Constructs a new UpdateItemRequest object. |
Method Summary | |
---|---|
boolean |
equals(Object obj)
|
Map<String,AttributeValueUpdate> |
getAttributeUpdates()
The names of attributes to be modified, the action to perform on each, and the new value for each. |
Map<String,ExpectedAttributeValue> |
getExpected()
A map of attribute/condition pairs. |
Map<String,AttributeValue> |
getKey()
The primary key that defines the item. |
String |
getReturnConsumedCapacity()
If set to TOTAL , ConsumedCapacity is included in
the response; if set to NONE (the default),
ConsumedCapacity is not included. |
String |
getReturnItemCollectionMetrics()
If set to SIZE , statistics about item collections, if
any, that were modified during the operation are returned in the
response. |
String |
getReturnValues()
Use ReturnValues if you want to get the item attributes as they appeared either before or after they were updated. |
String |
getTableName()
The name of the table containing the item to update. |
int |
hashCode()
|
void |
setAttributeUpdates(Map<String,AttributeValueUpdate> attributeUpdates)
The names of attributes to be modified, the action to perform on each, and the new value for each. |
void |
setExpected(Map<String,ExpectedAttributeValue> expected)
A map of attribute/condition pairs. |
void |
setKey(Map<String,AttributeValue> key)
The primary key that defines the item. |
void |
setReturnConsumedCapacity(ReturnConsumedCapacity returnConsumedCapacity)
If set to TOTAL , ConsumedCapacity is included in
the response; if set to NONE (the default),
ConsumedCapacity is not included. |
void |
setReturnConsumedCapacity(String returnConsumedCapacity)
If set to TOTAL , ConsumedCapacity is included in
the response; if set to NONE (the default),
ConsumedCapacity is not included. |
void |
setReturnItemCollectionMetrics(ReturnItemCollectionMetrics returnItemCollectionMetrics)
If set to SIZE , statistics about item collections, if
any, that were modified during the operation are returned in the
response. |
void |
setReturnItemCollectionMetrics(String returnItemCollectionMetrics)
If set to SIZE , statistics about item collections, if
any, that were modified during the operation are returned in the
response. |
void |
setReturnValues(ReturnValue returnValues)
Use ReturnValues if you want to get the item attributes as they appeared either before or after they were updated. |
void |
setReturnValues(String returnValues)
Use ReturnValues if you want to get the item attributes as they appeared either before or after they were updated. |
void |
setTableName(String tableName)
The name of the table containing the item to update. |
String |
toString()
Returns a string representation of this object; useful for testing and debugging. |
UpdateItemRequest |
withAttributeUpdates(Map<String,AttributeValueUpdate> attributeUpdates)
The names of attributes to be modified, the action to perform on each, and the new value for each. |
UpdateItemRequest |
withExpected(Map<String,ExpectedAttributeValue> expected)
A map of attribute/condition pairs. |
UpdateItemRequest |
withKey(Map<String,AttributeValue> key)
The primary key that defines the item. |
UpdateItemRequest |
withReturnConsumedCapacity(ReturnConsumedCapacity returnConsumedCapacity)
If set to TOTAL , ConsumedCapacity is included in
the response; if set to NONE (the default),
ConsumedCapacity is not included. |
UpdateItemRequest |
withReturnConsumedCapacity(String returnConsumedCapacity)
If set to TOTAL , ConsumedCapacity is included in
the response; if set to NONE (the default),
ConsumedCapacity is not included. |
UpdateItemRequest |
withReturnItemCollectionMetrics(ReturnItemCollectionMetrics returnItemCollectionMetrics)
If set to SIZE , statistics about item collections, if
any, that were modified during the operation are returned in the
response. |
UpdateItemRequest |
withReturnItemCollectionMetrics(String returnItemCollectionMetrics)
If set to SIZE , statistics about item collections, if
any, that were modified during the operation are returned in the
response. |
UpdateItemRequest |
withReturnValues(ReturnValue returnValues)
Use ReturnValues if you want to get the item attributes as they appeared either before or after they were updated. |
UpdateItemRequest |
withReturnValues(String returnValues)
Use ReturnValues if you want to get the item attributes as they appeared either before or after they were updated. |
UpdateItemRequest |
withTableName(String tableName)
The name of the table containing the item to update. |
Methods inherited from class com.amazonaws.AmazonWebServiceRequest |
---|
copyPrivateRequestParameters, getRequestClientOptions, getRequestCredentials, setRequestCredentials |
Methods inherited from class java.lang.Object |
---|
getClass, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public UpdateItemRequest()
public UpdateItemRequest(String tableName, Map<String,AttributeValue> key, Map<String,AttributeValueUpdate> attributeUpdates)
tableName
- The name of the table containing the item to update.key
- The primary key that defines the item. Each element
consists of an attribute name and a value for that attribute.attributeUpdates
- The names of attributes to be modified, the
action to perform on each, and the new value for each. If you are
updating an attribute that is an index key attribute for any indexes
on that table, the attribute type must match the index key type
defined in the AttributesDefinition of the table description.
You can use UpdateItem to update any non-key attributes.
Attribute values cannot be null. String and binary type attributes must have lengths greater than zero. Set type attributes must not be empty. Requests with empty values will be rejected with a ValidationException.
Each AttributeUpdates element consists of an attribute name to modify, along with the following:
Value - The new value, if applicable, for this attribute.
Action - Specifies how to perform the
update. Valid values for Action are PUT
,
DELETE
, and ADD
. The behavior depends on
whether the specified primary key already exists in the table.
If an item with the specified Key is found in the table:
PUT
- Adds the specified attribute to the
item. If the attribute already exists, it is replaced by the new
value.
DELETE
- If no value is specified,
the attribute and its value are removed from the item. The data type
of the specified value must match the existing value's data type.
If a set of values is specified, then those values are
subtracted from the old set. For example, if the attribute value was
the set [a,b,c]
and the DELETE action specified
[a,c]
, then the final attribute value would be
[b]
. Specifying an empty set is an error.
ADD
- If the attribute does not already exist, then
the attribute and its values are added to the item. If the attribute
does exist, then the behavior of ADD
depends on the data
type of the attribute:
If the existing attribute is a
number, and if Value is also a number, then the Value is
mathematically added to the existing attribute. If Value is a
negative number, then it is subtracted from the existing attribute.
If you use In addition, if you use
ADD
to increment or decrement a
number value for an item that doesn't exist before the update, Amazon
DynamoDB uses 0 as the initial value. ADD
to update an existing item, and intend to increment
or decrement an attribute value which does not yet exist, Amazon
DynamoDB uses 0
as the initial value. For example,
suppose that the item you want to update does not yet have an
attribute named itemcount, but you decide to ADD
the number 3
to this attribute anyway, even though it
currently does not exist. Amazon DynamoDB will create the
itemcount attribute, set its initial value to 0
,
and finally add 3
to it. The result will be a new
itemcount attribute in the item, with a value of
3
.
If the existing data type is a
set, and if the Value is also a set, then the Value is
added to the existing set. (This is a set operation, not
mathematical addition.) For example, if the attribute value was the
set [1,2]
, and the ADD
action specified
[3]
, then the final attribute value would be
[1,2,3]
. An error occurs if an Add action is specified
for a set attribute and the attribute type specified does not match
the existing set type.
Both sets must have the same primitive data type. For example, if the existing data type is a set of strings, the Value must also be a set of strings. The same holds true for number sets and binary sets.
This action is only valid
for an existing attribute whose data type is number or is a set. Do
not use ADD
for any other data types.
If no item with the specified Key is found:
PUT
- Amazon DynamoDB creates a new item with the
specified primary key, and then adds the attribute.
DELETE
- Nothing happens; there is no attribute to
delete.
ADD
- Amazon DynamoDB creates an
item with the supplied primary key and number (or set of numbers) for
the attribute value. The only data types allowed are number and number
set; no other data types can be specified.
If you specify any attributes that are part of an index key, then the data types for those attributes must match those of the schema in the table's attribute definition.
Method Detail |
---|
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 item to update.public UpdateItemRequest 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 item to update.
public Map<String,AttributeValue> getKey()
public void setKey(Map<String,AttributeValue> key)
key
- The primary key that defines the item. Each element consists of an
attribute name and a value for that attribute.public UpdateItemRequest withKey(Map<String,AttributeValue> key)
Returns a reference to this object so that method calls can be chained together.
key
- The primary key that defines the item. Each element consists of an
attribute name and a value for that attribute.
public Map<String,AttributeValueUpdate> getAttributeUpdates()
Attribute values cannot be null. String and binary type attributes must have lengths greater than zero. Set type attributes must not be empty. Requests with empty values will be rejected with a ValidationException.
Each AttributeUpdates element consists of an attribute name to modify, along with the following:
Value - The new value, if applicable, for this attribute.
Action - Specifies how to perform the
update. Valid values for Action are PUT
,
DELETE
, and ADD
. The behavior depends on
whether the specified primary key already exists in the table.
If an item with the specified Key is found in the table:
PUT
- Adds the specified attribute to the
item. If the attribute already exists, it is replaced by the new
value.
DELETE
- If no value is specified,
the attribute and its value are removed from the item. The data type
of the specified value must match the existing value's data type.
If a set of values is specified, then those values are
subtracted from the old set. For example, if the attribute value was
the set [a,b,c]
and the DELETE action specified
[a,c]
, then the final attribute value would be
[b]
. Specifying an empty set is an error.
ADD
- If the attribute does not already exist, then
the attribute and its values are added to the item. If the attribute
does exist, then the behavior of ADD
depends on the data
type of the attribute:
If the existing attribute is a
number, and if Value is also a number, then the Value is
mathematically added to the existing attribute. If Value is a
negative number, then it is subtracted from the existing attribute.
If you use In addition, if you use
ADD
to increment or decrement a
number value for an item that doesn't exist before the update, Amazon
DynamoDB uses 0 as the initial value. ADD
to update an existing item, and intend to increment
or decrement an attribute value which does not yet exist, Amazon
DynamoDB uses 0
as the initial value. For example,
suppose that the item you want to update does not yet have an
attribute named itemcount, but you decide to ADD
the number 3
to this attribute anyway, even though it
currently does not exist. Amazon DynamoDB will create the
itemcount attribute, set its initial value to 0
,
and finally add 3
to it. The result will be a new
itemcount attribute in the item, with a value of
3
.
If the existing data type is a
set, and if the Value is also a set, then the Value is
added to the existing set. (This is a set operation, not
mathematical addition.) For example, if the attribute value was the
set [1,2]
, and the ADD
action specified
[3]
, then the final attribute value would be
[1,2,3]
. An error occurs if an Add action is specified
for a set attribute and the attribute type specified does not match
the existing set type.
Both sets must have the same primitive data type. For example, if the existing data type is a set of strings, the Value must also be a set of strings. The same holds true for number sets and binary sets.
This action is only valid
for an existing attribute whose data type is number or is a set. Do
not use ADD
for any other data types.
If no item with the specified Key is found:
PUT
- Amazon DynamoDB creates a new item with the
specified primary key, and then adds the attribute.
DELETE
- Nothing happens; there is no attribute to
delete.
ADD
- Amazon DynamoDB creates an
item with the supplied primary key and number (or set of numbers) for
the attribute value. The only data types allowed are number and number
set; no other data types can be specified.
If you specify any attributes that are part of an index key, then the data types for those attributes must match those of the schema in the table's attribute definition.
Attribute values cannot be null. String and binary type attributes must have lengths greater than zero. Set type attributes must not be empty. Requests with empty values will be rejected with a ValidationException.
Each AttributeUpdates element consists of an attribute name to modify, along with the following:
Value - The new value, if applicable, for this attribute.
Action - Specifies how to perform the
update. Valid values for Action are PUT
,
DELETE
, and ADD
. The behavior depends on
whether the specified primary key already exists in the table.
If an item with the specified Key is found in the table:
PUT
- Adds the specified attribute to the
item. If the attribute already exists, it is replaced by the new
value.
DELETE
- If no value is specified,
the attribute and its value are removed from the item. The data type
of the specified value must match the existing value's data type.
If a set of values is specified, then those values are
subtracted from the old set. For example, if the attribute value was
the set [a,b,c]
and the DELETE action specified
[a,c]
, then the final attribute value would be
[b]
. Specifying an empty set is an error.
ADD
- If the attribute does not already exist, then
the attribute and its values are added to the item. If the attribute
does exist, then the behavior of ADD
depends on the data
type of the attribute:
If the existing attribute is a
number, and if Value is also a number, then the Value is
mathematically added to the existing attribute. If Value is a
negative number, then it is subtracted from the existing attribute.
If you use In addition, if you use
ADD
to increment or decrement a
number value for an item that doesn't exist before the update, Amazon
DynamoDB uses 0 as the initial value. ADD
to update an existing item, and intend to increment
or decrement an attribute value which does not yet exist, Amazon
DynamoDB uses 0
as the initial value. For example,
suppose that the item you want to update does not yet have an
attribute named itemcount, but you decide to ADD
the number 3
to this attribute anyway, even though it
currently does not exist. Amazon DynamoDB will create the
itemcount attribute, set its initial value to 0
,
and finally add 3
to it. The result will be a new
itemcount attribute in the item, with a value of
3
.
If the existing data type is a
set, and if the Value is also a set, then the Value is
added to the existing set. (This is a set operation, not
mathematical addition.) For example, if the attribute value was the
set [1,2]
, and the ADD
action specified
[3]
, then the final attribute value would be
[1,2,3]
. An error occurs if an Add action is specified
for a set attribute and the attribute type specified does not match
the existing set type.
Both sets must have the same primitive data type. For example, if the existing data type is a set of strings, the Value must also be a set of strings. The same holds true for number sets and binary sets.
This action is only valid
for an existing attribute whose data type is number or is a set. Do
not use ADD
for any other data types.
If no item with the specified Key is found:
PUT
- Amazon DynamoDB creates a new item with the
specified primary key, and then adds the attribute.
DELETE
- Nothing happens; there is no attribute to
delete.
ADD
- Amazon DynamoDB creates an
item with the supplied primary key and number (or set of numbers) for
the attribute value. The only data types allowed are number and number
set; no other data types can be specified.
If you specify any attributes that are part of an index key, then the data types for those attributes must match those of the schema in the table's attribute definition.
public void setAttributeUpdates(Map<String,AttributeValueUpdate> attributeUpdates)
Attribute values cannot be null. String and binary type attributes must have lengths greater than zero. Set type attributes must not be empty. Requests with empty values will be rejected with a ValidationException.
Each AttributeUpdates element consists of an attribute name to modify, along with the following:
Value - The new value, if applicable, for this attribute.
Action - Specifies how to perform the
update. Valid values for Action are PUT
,
DELETE
, and ADD
. The behavior depends on
whether the specified primary key already exists in the table.
If an item with the specified Key is found in the table:
PUT
- Adds the specified attribute to the
item. If the attribute already exists, it is replaced by the new
value.
DELETE
- If no value is specified,
the attribute and its value are removed from the item. The data type
of the specified value must match the existing value's data type.
If a set of values is specified, then those values are
subtracted from the old set. For example, if the attribute value was
the set [a,b,c]
and the DELETE action specified
[a,c]
, then the final attribute value would be
[b]
. Specifying an empty set is an error.
ADD
- If the attribute does not already exist, then
the attribute and its values are added to the item. If the attribute
does exist, then the behavior of ADD
depends on the data
type of the attribute:
If the existing attribute is a
number, and if Value is also a number, then the Value is
mathematically added to the existing attribute. If Value is a
negative number, then it is subtracted from the existing attribute.
If you use In addition, if you use
ADD
to increment or decrement a
number value for an item that doesn't exist before the update, Amazon
DynamoDB uses 0 as the initial value. ADD
to update an existing item, and intend to increment
or decrement an attribute value which does not yet exist, Amazon
DynamoDB uses 0
as the initial value. For example,
suppose that the item you want to update does not yet have an
attribute named itemcount, but you decide to ADD
the number 3
to this attribute anyway, even though it
currently does not exist. Amazon DynamoDB will create the
itemcount attribute, set its initial value to 0
,
and finally add 3
to it. The result will be a new
itemcount attribute in the item, with a value of
3
.
If the existing data type is a
set, and if the Value is also a set, then the Value is
added to the existing set. (This is a set operation, not
mathematical addition.) For example, if the attribute value was the
set [1,2]
, and the ADD
action specified
[3]
, then the final attribute value would be
[1,2,3]
. An error occurs if an Add action is specified
for a set attribute and the attribute type specified does not match
the existing set type.
Both sets must have the same primitive data type. For example, if the existing data type is a set of strings, the Value must also be a set of strings. The same holds true for number sets and binary sets.
This action is only valid
for an existing attribute whose data type is number or is a set. Do
not use ADD
for any other data types.
If no item with the specified Key is found:
PUT
- Amazon DynamoDB creates a new item with the
specified primary key, and then adds the attribute.
DELETE
- Nothing happens; there is no attribute to
delete.
ADD
- Amazon DynamoDB creates an
item with the supplied primary key and number (or set of numbers) for
the attribute value. The only data types allowed are number and number
set; no other data types can be specified.
If you specify any attributes that are part of an index key, then the data types for those attributes must match those of the schema in the table's attribute definition.
attributeUpdates
- The names of attributes to be modified, the action to perform on each,
and the new value for each. If you are updating an attribute that is
an index key attribute for any indexes on that table, the attribute
type must match the index key type defined in the
AttributesDefinition of the table description. You can use
UpdateItem to update any non-key attributes. Attribute values cannot be null. String and binary type attributes must have lengths greater than zero. Set type attributes must not be empty. Requests with empty values will be rejected with a ValidationException.
Each AttributeUpdates element consists of an attribute name to modify, along with the following:
Value - The new value, if applicable, for this attribute.
Action - Specifies how to perform the
update. Valid values for Action are PUT
,
DELETE
, and ADD
. The behavior depends on
whether the specified primary key already exists in the table.
If an item with the specified Key is found in the table:
PUT
- Adds the specified attribute to the
item. If the attribute already exists, it is replaced by the new
value.
DELETE
- If no value is specified,
the attribute and its value are removed from the item. The data type
of the specified value must match the existing value's data type.
If a set of values is specified, then those values are
subtracted from the old set. For example, if the attribute value was
the set [a,b,c]
and the DELETE action specified
[a,c]
, then the final attribute value would be
[b]
. Specifying an empty set is an error.
ADD
- If the attribute does not already exist, then
the attribute and its values are added to the item. If the attribute
does exist, then the behavior of ADD
depends on the data
type of the attribute:
If the existing attribute is a
number, and if Value is also a number, then the Value is
mathematically added to the existing attribute. If Value is a
negative number, then it is subtracted from the existing attribute.
If you use In addition, if you use
ADD
to increment or decrement a
number value for an item that doesn't exist before the update, Amazon
DynamoDB uses 0 as the initial value. ADD
to update an existing item, and intend to increment
or decrement an attribute value which does not yet exist, Amazon
DynamoDB uses 0
as the initial value. For example,
suppose that the item you want to update does not yet have an
attribute named itemcount, but you decide to ADD
the number 3
to this attribute anyway, even though it
currently does not exist. Amazon DynamoDB will create the
itemcount attribute, set its initial value to 0
,
and finally add 3
to it. The result will be a new
itemcount attribute in the item, with a value of
3
.
If the existing data type is a
set, and if the Value is also a set, then the Value is
added to the existing set. (This is a set operation, not
mathematical addition.) For example, if the attribute value was the
set [1,2]
, and the ADD
action specified
[3]
, then the final attribute value would be
[1,2,3]
. An error occurs if an Add action is specified
for a set attribute and the attribute type specified does not match
the existing set type.
Both sets must have the same primitive data type. For example, if the existing data type is a set of strings, the Value must also be a set of strings. The same holds true for number sets and binary sets.
This action is only valid
for an existing attribute whose data type is number or is a set. Do
not use ADD
for any other data types.
If no item with the specified Key is found:
PUT
- Amazon DynamoDB creates a new item with the
specified primary key, and then adds the attribute.
DELETE
- Nothing happens; there is no attribute to
delete.
ADD
- Amazon DynamoDB creates an
item with the supplied primary key and number (or set of numbers) for
the attribute value. The only data types allowed are number and number
set; no other data types can be specified.
If you specify any attributes that are part of an index key, then the data types for those attributes must match those of the schema in the table's attribute definition.
public UpdateItemRequest withAttributeUpdates(Map<String,AttributeValueUpdate> attributeUpdates)
Attribute values cannot be null. String and binary type attributes must have lengths greater than zero. Set type attributes must not be empty. Requests with empty values will be rejected with a ValidationException.
Each AttributeUpdates element consists of an attribute name to modify, along with the following:
Value - The new value, if applicable, for this attribute.
Action - Specifies how to perform the
update. Valid values for Action are PUT
,
DELETE
, and ADD
. The behavior depends on
whether the specified primary key already exists in the table.
If an item with the specified Key is found in the table:
PUT
- Adds the specified attribute to the
item. If the attribute already exists, it is replaced by the new
value.
DELETE
- If no value is specified,
the attribute and its value are removed from the item. The data type
of the specified value must match the existing value's data type.
If a set of values is specified, then those values are
subtracted from the old set. For example, if the attribute value was
the set [a,b,c]
and the DELETE action specified
[a,c]
, then the final attribute value would be
[b]
. Specifying an empty set is an error.
ADD
- If the attribute does not already exist, then
the attribute and its values are added to the item. If the attribute
does exist, then the behavior of ADD
depends on the data
type of the attribute:
If the existing attribute is a
number, and if Value is also a number, then the Value is
mathematically added to the existing attribute. If Value is a
negative number, then it is subtracted from the existing attribute.
If you use In addition, if you use
ADD
to increment or decrement a
number value for an item that doesn't exist before the update, Amazon
DynamoDB uses 0 as the initial value. ADD
to update an existing item, and intend to increment
or decrement an attribute value which does not yet exist, Amazon
DynamoDB uses 0
as the initial value. For example,
suppose that the item you want to update does not yet have an
attribute named itemcount, but you decide to ADD
the number 3
to this attribute anyway, even though it
currently does not exist. Amazon DynamoDB will create the
itemcount attribute, set its initial value to 0
,
and finally add 3
to it. The result will be a new
itemcount attribute in the item, with a value of
3
.
If the existing data type is a
set, and if the Value is also a set, then the Value is
added to the existing set. (This is a set operation, not
mathematical addition.) For example, if the attribute value was the
set [1,2]
, and the ADD
action specified
[3]
, then the final attribute value would be
[1,2,3]
. An error occurs if an Add action is specified
for a set attribute and the attribute type specified does not match
the existing set type.
Both sets must have the same primitive data type. For example, if the existing data type is a set of strings, the Value must also be a set of strings. The same holds true for number sets and binary sets.
This action is only valid
for an existing attribute whose data type is number or is a set. Do
not use ADD
for any other data types.
If no item with the specified Key is found:
PUT
- Amazon DynamoDB creates a new item with the
specified primary key, and then adds the attribute.
DELETE
- Nothing happens; there is no attribute to
delete.
ADD
- Amazon DynamoDB creates an
item with the supplied primary key and number (or set of numbers) for
the attribute value. The only data types allowed are number and number
set; no other data types can be specified.
If you specify any attributes that are part of an index key, then the data types for those attributes must match those of the schema in the table's attribute definition.
Returns a reference to this object so that method calls can be chained together.
attributeUpdates
- The names of attributes to be modified, the action to perform on each,
and the new value for each. If you are updating an attribute that is
an index key attribute for any indexes on that table, the attribute
type must match the index key type defined in the
AttributesDefinition of the table description. You can use
UpdateItem to update any non-key attributes. Attribute values cannot be null. String and binary type attributes must have lengths greater than zero. Set type attributes must not be empty. Requests with empty values will be rejected with a ValidationException.
Each AttributeUpdates element consists of an attribute name to modify, along with the following:
Value - The new value, if applicable, for this attribute.
Action - Specifies how to perform the
update. Valid values for Action are PUT
,
DELETE
, and ADD
. The behavior depends on
whether the specified primary key already exists in the table.
If an item with the specified Key is found in the table:
PUT
- Adds the specified attribute to the
item. If the attribute already exists, it is replaced by the new
value.
DELETE
- If no value is specified,
the attribute and its value are removed from the item. The data type
of the specified value must match the existing value's data type.
If a set of values is specified, then those values are
subtracted from the old set. For example, if the attribute value was
the set [a,b,c]
and the DELETE action specified
[a,c]
, then the final attribute value would be
[b]
. Specifying an empty set is an error.
ADD
- If the attribute does not already exist, then
the attribute and its values are added to the item. If the attribute
does exist, then the behavior of ADD
depends on the data
type of the attribute:
If the existing attribute is a
number, and if Value is also a number, then the Value is
mathematically added to the existing attribute. If Value is a
negative number, then it is subtracted from the existing attribute.
If you use In addition, if you use
ADD
to increment or decrement a
number value for an item that doesn't exist before the update, Amazon
DynamoDB uses 0 as the initial value. ADD
to update an existing item, and intend to increment
or decrement an attribute value which does not yet exist, Amazon
DynamoDB uses 0
as the initial value. For example,
suppose that the item you want to update does not yet have an
attribute named itemcount, but you decide to ADD
the number 3
to this attribute anyway, even though it
currently does not exist. Amazon DynamoDB will create the
itemcount attribute, set its initial value to 0
,
and finally add 3
to it. The result will be a new
itemcount attribute in the item, with a value of
3
.
If the existing data type is a
set, and if the Value is also a set, then the Value is
added to the existing set. (This is a set operation, not
mathematical addition.) For example, if the attribute value was the
set [1,2]
, and the ADD
action specified
[3]
, then the final attribute value would be
[1,2,3]
. An error occurs if an Add action is specified
for a set attribute and the attribute type specified does not match
the existing set type.
Both sets must have the same primitive data type. For example, if the existing data type is a set of strings, the Value must also be a set of strings. The same holds true for number sets and binary sets.
This action is only valid
for an existing attribute whose data type is number or is a set. Do
not use ADD
for any other data types.
If no item with the specified Key is found:
PUT
- Amazon DynamoDB creates a new item with the
specified primary key, and then adds the attribute.
DELETE
- Nothing happens; there is no attribute to
delete.
ADD
- Amazon DynamoDB creates an
item with the supplied primary key and number (or set of numbers) for
the attribute value. The only data types allowed are number and number
set; no other data types can be specified.
If you specify any attributes that are part of an index key, then the data types for those attributes must match those of the schema in the table's attribute definition.
public Map<String,ExpectedAttributeValue> getExpected()
Expected allows you to provide an attribute name, and whether or not Amazon DynamoDB should check to see if the attribute value already exists; or if the attribute value exists and has a particular value before changing it.
Each item in Expected represents an attribute name for Amazon DynamoDB to check, along with the following:
Value - The attribute value for Amazon DynamoDB to check.
Exists - Causes Amazon DynamoDB to evaluate the value before attempting a conditional operation:
If Exists is
true
, Amazon DynamoDB will check to see if that attribute
value already exists in the table. If it is found, then the operation
succeeds. If it is not found, the operation fails with a
ConditionalCheckFailedException.
If Exists
is false
, Amazon DynamoDB assumes that the attribute
value does not exist in the table. If in fact the value does
not exist, then the assumption is valid and the operation succeeds. If
the value is found, despite the assumption that it does not exist, the
operation fails with a ConditionalCheckFailedException.
The default setting for Exists is true
.
If you supply a Value all by itself, Amazon DynamoDB assumes
the attribute exists: You don't have to set Exists to
true
, because it is implied.
Amazon DynamoDB returns a ValidationException if:
Exists is
true
but there is no Value to check. (You expect a
value to exist, but don't specify what that value is.)
Exists is false
but you also specify a
Value. (You cannot expect an attribute to have a value, while
also expecting it not to exist.)
If you specify more than one condition for Exists, then all of the conditions must evaluate to true. (In other words, the conditions are ANDed together.) Otherwise, the conditional operation will fail.
Expected allows you to provide an attribute name, and whether or not Amazon DynamoDB should check to see if the attribute value already exists; or if the attribute value exists and has a particular value before changing it.
Each item in Expected represents an attribute name for Amazon DynamoDB to check, along with the following:
Value - The attribute value for Amazon DynamoDB to check.
Exists - Causes Amazon DynamoDB to evaluate the value before attempting a conditional operation:
If Exists is
true
, Amazon DynamoDB will check to see if that attribute
value already exists in the table. If it is found, then the operation
succeeds. If it is not found, the operation fails with a
ConditionalCheckFailedException.
If Exists
is false
, Amazon DynamoDB assumes that the attribute
value does not exist in the table. If in fact the value does
not exist, then the assumption is valid and the operation succeeds. If
the value is found, despite the assumption that it does not exist, the
operation fails with a ConditionalCheckFailedException.
The default setting for Exists is true
.
If you supply a Value all by itself, Amazon DynamoDB assumes
the attribute exists: You don't have to set Exists to
true
, because it is implied.
Amazon DynamoDB returns a ValidationException if:
Exists is
true
but there is no Value to check. (You expect a
value to exist, but don't specify what that value is.)
Exists is false
but you also specify a
Value. (You cannot expect an attribute to have a value, while
also expecting it not to exist.)
If you specify more than one condition for Exists, then all of the conditions must evaluate to true. (In other words, the conditions are ANDed together.) Otherwise, the conditional operation will fail.
public void setExpected(Map<String,ExpectedAttributeValue> expected)
Expected allows you to provide an attribute name, and whether or not Amazon DynamoDB should check to see if the attribute value already exists; or if the attribute value exists and has a particular value before changing it.
Each item in Expected represents an attribute name for Amazon DynamoDB to check, along with the following:
Value - The attribute value for Amazon DynamoDB to check.
Exists - Causes Amazon DynamoDB to evaluate the value before attempting a conditional operation:
If Exists is
true
, Amazon DynamoDB will check to see if that attribute
value already exists in the table. If it is found, then the operation
succeeds. If it is not found, the operation fails with a
ConditionalCheckFailedException.
If Exists
is false
, Amazon DynamoDB assumes that the attribute
value does not exist in the table. If in fact the value does
not exist, then the assumption is valid and the operation succeeds. If
the value is found, despite the assumption that it does not exist, the
operation fails with a ConditionalCheckFailedException.
The default setting for Exists is true
.
If you supply a Value all by itself, Amazon DynamoDB assumes
the attribute exists: You don't have to set Exists to
true
, because it is implied.
Amazon DynamoDB returns a ValidationException if:
Exists is
true
but there is no Value to check. (You expect a
value to exist, but don't specify what that value is.)
Exists is false
but you also specify a
Value. (You cannot expect an attribute to have a value, while
also expecting it not to exist.)
If you specify more than one condition for Exists, then all of the conditions must evaluate to true. (In other words, the conditions are ANDed together.) Otherwise, the conditional operation will fail.
expected
- A map of attribute/condition pairs. This is the conditional block for
the UpdateItem operation. All the conditions must be met for
the operation to succeed. Expected allows you to provide an attribute name, and whether or not Amazon DynamoDB should check to see if the attribute value already exists; or if the attribute value exists and has a particular value before changing it.
Each item in Expected represents an attribute name for Amazon DynamoDB to check, along with the following:
Value - The attribute value for Amazon DynamoDB to check.
Exists - Causes Amazon DynamoDB to evaluate the value before attempting a conditional operation:
If Exists is
true
, Amazon DynamoDB will check to see if that attribute
value already exists in the table. If it is found, then the operation
succeeds. If it is not found, the operation fails with a
ConditionalCheckFailedException.
If Exists
is false
, Amazon DynamoDB assumes that the attribute
value does not exist in the table. If in fact the value does
not exist, then the assumption is valid and the operation succeeds. If
the value is found, despite the assumption that it does not exist, the
operation fails with a ConditionalCheckFailedException.
The default setting for Exists is true
.
If you supply a Value all by itself, Amazon DynamoDB assumes
the attribute exists: You don't have to set Exists to
true
, because it is implied.
Amazon DynamoDB returns a ValidationException if:
Exists is
true
but there is no Value to check. (You expect a
value to exist, but don't specify what that value is.)
Exists is false
but you also specify a
Value. (You cannot expect an attribute to have a value, while
also expecting it not to exist.)
If you specify more than one condition for Exists, then all of the conditions must evaluate to true. (In other words, the conditions are ANDed together.) Otherwise, the conditional operation will fail.
public UpdateItemRequest withExpected(Map<String,ExpectedAttributeValue> expected)
Expected allows you to provide an attribute name, and whether or not Amazon DynamoDB should check to see if the attribute value already exists; or if the attribute value exists and has a particular value before changing it.
Each item in Expected represents an attribute name for Amazon DynamoDB to check, along with the following:
Value - The attribute value for Amazon DynamoDB to check.
Exists - Causes Amazon DynamoDB to evaluate the value before attempting a conditional operation:
If Exists is
true
, Amazon DynamoDB will check to see if that attribute
value already exists in the table. If it is found, then the operation
succeeds. If it is not found, the operation fails with a
ConditionalCheckFailedException.
If Exists
is false
, Amazon DynamoDB assumes that the attribute
value does not exist in the table. If in fact the value does
not exist, then the assumption is valid and the operation succeeds. If
the value is found, despite the assumption that it does not exist, the
operation fails with a ConditionalCheckFailedException.
The default setting for Exists is true
.
If you supply a Value all by itself, Amazon DynamoDB assumes
the attribute exists: You don't have to set Exists to
true
, because it is implied.
Amazon DynamoDB returns a ValidationException if:
Exists is
true
but there is no Value to check. (You expect a
value to exist, but don't specify what that value is.)
Exists is false
but you also specify a
Value. (You cannot expect an attribute to have a value, while
also expecting it not to exist.)
If you specify more than one condition for Exists, then all of the conditions must evaluate to true. (In other words, the conditions are ANDed together.) Otherwise, the conditional operation will fail.
Returns a reference to this object so that method calls can be chained together.
expected
- A map of attribute/condition pairs. This is the conditional block for
the UpdateItem operation. All the conditions must be met for
the operation to succeed. Expected allows you to provide an attribute name, and whether or not Amazon DynamoDB should check to see if the attribute value already exists; or if the attribute value exists and has a particular value before changing it.
Each item in Expected represents an attribute name for Amazon DynamoDB to check, along with the following:
Value - The attribute value for Amazon DynamoDB to check.
Exists - Causes Amazon DynamoDB to evaluate the value before attempting a conditional operation:
If Exists is
true
, Amazon DynamoDB will check to see if that attribute
value already exists in the table. If it is found, then the operation
succeeds. If it is not found, the operation fails with a
ConditionalCheckFailedException.
If Exists
is false
, Amazon DynamoDB assumes that the attribute
value does not exist in the table. If in fact the value does
not exist, then the assumption is valid and the operation succeeds. If
the value is found, despite the assumption that it does not exist, the
operation fails with a ConditionalCheckFailedException.
The default setting for Exists is true
.
If you supply a Value all by itself, Amazon DynamoDB assumes
the attribute exists: You don't have to set Exists to
true
, because it is implied.
Amazon DynamoDB returns a ValidationException if:
Exists is
true
but there is no Value to check. (You expect a
value to exist, but don't specify what that value is.)
Exists is false
but you also specify a
Value. (You cannot expect an attribute to have a value, while
also expecting it not to exist.)
If you specify more than one condition for Exists, then all of the conditions must evaluate to true. (In other words, the conditions are ANDed together.) Otherwise, the conditional operation will fail.
public String getReturnValues()
NONE
- If ReturnValues is not specified, or if
its value is NONE
, then nothing is returned. (This is the
default for ReturnValues.)
ALL_OLD
-
If UpdateItem overwrote an attribute name-value pair, then the
content of the old item is returned.
UPDATED_OLD
- The old versions of only the updated
attributes are returned.
ALL_NEW
- All of
the attributes of the new version of the item are returned.
UPDATED_NEW
- The new versions of only the updated
attributes are returned.
Constraints:
Allowed Values: NONE, ALL_OLD, UPDATED_OLD, ALL_NEW, UPDATED_NEW
NONE
- If ReturnValues is not specified, or if
its value is NONE
, then nothing is returned. (This is the
default for ReturnValues.)
ALL_OLD
-
If UpdateItem overwrote an attribute name-value pair, then the
content of the old item is returned.
UPDATED_OLD
- The old versions of only the updated
attributes are returned.
ALL_NEW
- All of
the attributes of the new version of the item are returned.
UPDATED_NEW
- The new versions of only the updated
attributes are returned.
ReturnValue
public void setReturnValues(String returnValues)
NONE
- If ReturnValues is not specified, or if
its value is NONE
, then nothing is returned. (This is the
default for ReturnValues.)
ALL_OLD
-
If UpdateItem overwrote an attribute name-value pair, then the
content of the old item is returned.
UPDATED_OLD
- The old versions of only the updated
attributes are returned.
ALL_NEW
- All of
the attributes of the new version of the item are returned.
UPDATED_NEW
- The new versions of only the updated
attributes are returned.
Constraints:
Allowed Values: NONE, ALL_OLD, UPDATED_OLD, ALL_NEW, UPDATED_NEW
returnValues
- Use ReturnValues if you want to get the item attributes as they
appeared either before or after they were updated. For
UpdateItem, the valid values are: NONE
- If ReturnValues is not specified, or if
its value is NONE
, then nothing is returned. (This is the
default for ReturnValues.)
ALL_OLD
-
If UpdateItem overwrote an attribute name-value pair, then the
content of the old item is returned.
UPDATED_OLD
- The old versions of only the updated
attributes are returned.
ALL_NEW
- All of
the attributes of the new version of the item are returned.
UPDATED_NEW
- The new versions of only the updated
attributes are returned.
ReturnValue
public UpdateItemRequest withReturnValues(String returnValues)
NONE
- If ReturnValues is not specified, or if
its value is NONE
, then nothing is returned. (This is the
default for ReturnValues.)
ALL_OLD
-
If UpdateItem overwrote an attribute name-value pair, then the
content of the old item is returned.
UPDATED_OLD
- The old versions of only the updated
attributes are returned.
ALL_NEW
- All of
the attributes of the new version of the item are returned.
UPDATED_NEW
- The new versions of only the updated
attributes are returned.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: NONE, ALL_OLD, UPDATED_OLD, ALL_NEW, UPDATED_NEW
returnValues
- Use ReturnValues if you want to get the item attributes as they
appeared either before or after they were updated. For
UpdateItem, the valid values are: NONE
- If ReturnValues is not specified, or if
its value is NONE
, then nothing is returned. (This is the
default for ReturnValues.)
ALL_OLD
-
If UpdateItem overwrote an attribute name-value pair, then the
content of the old item is returned.
UPDATED_OLD
- The old versions of only the updated
attributes are returned.
ALL_NEW
- All of
the attributes of the new version of the item are returned.
UPDATED_NEW
- The new versions of only the updated
attributes are returned.
ReturnValue
public void setReturnValues(ReturnValue returnValues)
NONE
- If ReturnValues is not specified, or if
its value is NONE
, then nothing is returned. (This is the
default for ReturnValues.)
ALL_OLD
-
If UpdateItem overwrote an attribute name-value pair, then the
content of the old item is returned.
UPDATED_OLD
- The old versions of only the updated
attributes are returned.
ALL_NEW
- All of
the attributes of the new version of the item are returned.
UPDATED_NEW
- The new versions of only the updated
attributes are returned.
Constraints:
Allowed Values: NONE, ALL_OLD, UPDATED_OLD, ALL_NEW, UPDATED_NEW
returnValues
- Use ReturnValues if you want to get the item attributes as they
appeared either before or after they were updated. For
UpdateItem, the valid values are: NONE
- If ReturnValues is not specified, or if
its value is NONE
, then nothing is returned. (This is the
default for ReturnValues.)
ALL_OLD
-
If UpdateItem overwrote an attribute name-value pair, then the
content of the old item is returned.
UPDATED_OLD
- The old versions of only the updated
attributes are returned.
ALL_NEW
- All of
the attributes of the new version of the item are returned.
UPDATED_NEW
- The new versions of only the updated
attributes are returned.
ReturnValue
public UpdateItemRequest withReturnValues(ReturnValue returnValues)
NONE
- If ReturnValues is not specified, or if
its value is NONE
, then nothing is returned. (This is the
default for ReturnValues.)
ALL_OLD
-
If UpdateItem overwrote an attribute name-value pair, then the
content of the old item is returned.
UPDATED_OLD
- The old versions of only the updated
attributes are returned.
ALL_NEW
- All of
the attributes of the new version of the item are returned.
UPDATED_NEW
- The new versions of only the updated
attributes are returned.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: NONE, ALL_OLD, UPDATED_OLD, ALL_NEW, UPDATED_NEW
returnValues
- Use ReturnValues if you want to get the item attributes as they
appeared either before or after they were updated. For
UpdateItem, the valid values are: NONE
- If ReturnValues is not specified, or if
its value is NONE
, then nothing is returned. (This is the
default for ReturnValues.)
ALL_OLD
-
If UpdateItem overwrote an attribute name-value pair, then the
content of the old item is returned.
UPDATED_OLD
- The old versions of only the updated
attributes are returned.
ALL_NEW
- All of
the attributes of the new version of the item are returned.
UPDATED_NEW
- The new versions of only the updated
attributes are returned.
ReturnValue
public String getReturnConsumedCapacity()
TOTAL
, ConsumedCapacity is included in
the response; if set to NONE
(the default),
ConsumedCapacity is not included.
Constraints:
Allowed Values: TOTAL, NONE
TOTAL
, ConsumedCapacity is included in
the response; if set to NONE
(the default),
ConsumedCapacity is not included.ReturnConsumedCapacity
public void setReturnConsumedCapacity(String returnConsumedCapacity)
TOTAL
, ConsumedCapacity is included in
the response; if set to NONE
(the default),
ConsumedCapacity is not included.
Constraints:
Allowed Values: TOTAL, NONE
returnConsumedCapacity
- If set to TOTAL
, ConsumedCapacity is included in
the response; if set to NONE
(the default),
ConsumedCapacity is not included.ReturnConsumedCapacity
public UpdateItemRequest withReturnConsumedCapacity(String returnConsumedCapacity)
TOTAL
, ConsumedCapacity is included in
the response; if set to NONE
(the default),
ConsumedCapacity is not included.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: TOTAL, NONE
returnConsumedCapacity
- If set to TOTAL
, ConsumedCapacity is included in
the response; if set to NONE
(the default),
ConsumedCapacity is not included.
ReturnConsumedCapacity
public void setReturnConsumedCapacity(ReturnConsumedCapacity returnConsumedCapacity)
TOTAL
, ConsumedCapacity is included in
the response; if set to NONE
(the default),
ConsumedCapacity is not included.
Constraints:
Allowed Values: TOTAL, NONE
returnConsumedCapacity
- If set to TOTAL
, ConsumedCapacity is included in
the response; if set to NONE
(the default),
ConsumedCapacity is not included.ReturnConsumedCapacity
public UpdateItemRequest withReturnConsumedCapacity(ReturnConsumedCapacity returnConsumedCapacity)
TOTAL
, ConsumedCapacity is included in
the response; if set to NONE
(the default),
ConsumedCapacity is not included.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: TOTAL, NONE
returnConsumedCapacity
- If set to TOTAL
, ConsumedCapacity is included in
the response; if set to NONE
(the default),
ConsumedCapacity is not included.
ReturnConsumedCapacity
public String getReturnItemCollectionMetrics()
SIZE
, statistics about item collections, if
any, that were modified during the operation are returned in the
response. If set to NONE
(the default), no statistics are
returned..
Constraints:
Allowed Values: SIZE, NONE
SIZE
, statistics about item collections, if
any, that were modified during the operation are returned in the
response. If set to NONE
(the default), no statistics are
returned..ReturnItemCollectionMetrics
public void setReturnItemCollectionMetrics(String returnItemCollectionMetrics)
SIZE
, statistics about item collections, if
any, that were modified during the operation are returned in the
response. If set to NONE
(the default), no statistics are
returned..
Constraints:
Allowed Values: SIZE, NONE
returnItemCollectionMetrics
- If set to SIZE
, statistics about item collections, if
any, that were modified during the operation are returned in the
response. If set to NONE
(the default), no statistics are
returned..ReturnItemCollectionMetrics
public UpdateItemRequest withReturnItemCollectionMetrics(String returnItemCollectionMetrics)
SIZE
, statistics about item collections, if
any, that were modified during the operation are returned in the
response. If set to NONE
(the default), no statistics are
returned..
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: SIZE, NONE
returnItemCollectionMetrics
- If set to SIZE
, statistics about item collections, if
any, that were modified during the operation are returned in the
response. If set to NONE
(the default), no statistics are
returned..
ReturnItemCollectionMetrics
public void setReturnItemCollectionMetrics(ReturnItemCollectionMetrics returnItemCollectionMetrics)
SIZE
, statistics about item collections, if
any, that were modified during the operation are returned in the
response. If set to NONE
(the default), no statistics are
returned..
Constraints:
Allowed Values: SIZE, NONE
returnItemCollectionMetrics
- If set to SIZE
, statistics about item collections, if
any, that were modified during the operation are returned in the
response. If set to NONE
(the default), no statistics are
returned..ReturnItemCollectionMetrics
public UpdateItemRequest withReturnItemCollectionMetrics(ReturnItemCollectionMetrics returnItemCollectionMetrics)
SIZE
, statistics about item collections, if
any, that were modified during the operation are returned in the
response. If set to NONE
(the default), no statistics are
returned..
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: SIZE, NONE
returnItemCollectionMetrics
- If set to SIZE
, statistics about item collections, if
any, that were modified during the operation are returned in the
response. If set to NONE
(the default), no statistics are
returned..
ReturnItemCollectionMetrics
public String toString()
toString
in class Object
Object.toString()
public int hashCode()
hashCode
in class Object
public boolean equals(Object obj)
equals
in class Object
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |