|
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()
Determines whether to include consumed capacity information in the output. |
String |
getReturnItemCollectionMetrics()
Indicates whether to return statistics about item collections, if any, that were modified during the operation. |
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)
Determines whether to include consumed capacity information in the output. |
void |
setReturnConsumedCapacity(String returnConsumedCapacity)
Determines whether to include consumed capacity information in the output. |
void |
setReturnItemCollectionMetrics(ReturnItemCollectionMetrics returnItemCollectionMetrics)
Indicates whether to return statistics about item collections, if any, that were modified during the operation. |
void |
setReturnItemCollectionMetrics(String returnItemCollectionMetrics)
Indicates whether to return statistics about item collections, if any, that were modified during the operation. |
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)
Determines whether to include consumed capacity information in the output. |
UpdateItemRequest |
withReturnConsumedCapacity(String returnConsumedCapacity)
Determines whether to include consumed capacity information in the output. |
UpdateItemRequest |
withReturnItemCollectionMetrics(ReturnItemCollectionMetrics returnItemCollectionMetrics)
Indicates whether to return statistics about item collections, if any, that were modified during the operation. |
UpdateItemRequest |
withReturnItemCollectionMetrics(String returnItemCollectionMetrics)
Indicates whether to return statistics about item collections, if any, that were modified during the operation. |
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
-(default) If ReturnValues is not
specified, or if its value is NONE
, then nothing is
returned.
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
-(default) If ReturnValues is not
specified, or if its value is NONE
, then nothing is
returned.
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
-(default) If ReturnValues is not
specified, or if its value is NONE
, then nothing is
returned.
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
-(default) If ReturnValues is not
specified, or if its value is NONE
, then nothing is
returned.
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
-(default) If ReturnValues is not
specified, or if its value is NONE
, then nothing is
returned.
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
-(default) If ReturnValues is not
specified, or if its value is NONE
, then nothing is
returned.
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
-(default) If ReturnValues is not
specified, or if its value is NONE
, then nothing is
returned.
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
-(default) If ReturnValues is not
specified, or if its value is NONE
, then nothing is
returned.
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
-(default) If ReturnValues is not
specified, or if its value is NONE
, then nothing is
returned.
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
-(default) If ReturnValues is not
specified, or if its value is NONE
, then nothing is
returned.
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
, then this information is
shown in the output; otherwise, the consumed capacity information is
not shown.
Constraints:
Allowed Values: TOTAL, NONE
TOTAL
, then this information is
shown in the output; otherwise, the consumed capacity information is
not shown.ReturnConsumedCapacity
public void setReturnConsumedCapacity(String returnConsumedCapacity)
TOTAL
, then this information is
shown in the output; otherwise, the consumed capacity information is
not shown.
Constraints:
Allowed Values: TOTAL, NONE
returnConsumedCapacity
- Determines whether to include consumed capacity information in the
output. If this is set to TOTAL
, then this information is
shown in the output; otherwise, the consumed capacity information is
not shown.ReturnConsumedCapacity
public UpdateItemRequest withReturnConsumedCapacity(String returnConsumedCapacity)
TOTAL
, then this information is
shown in the output; otherwise, the consumed capacity information is
not shown.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: TOTAL, NONE
returnConsumedCapacity
- Determines whether to include consumed capacity information in the
output. If this is set to TOTAL
, then this information is
shown in the output; otherwise, the consumed capacity information is
not shown.
ReturnConsumedCapacity
public void setReturnConsumedCapacity(ReturnConsumedCapacity returnConsumedCapacity)
TOTAL
, then this information is
shown in the output; otherwise, the consumed capacity information is
not shown.
Constraints:
Allowed Values: TOTAL, NONE
returnConsumedCapacity
- Determines whether to include consumed capacity information in the
output. If this is set to TOTAL
, then this information is
shown in the output; otherwise, the consumed capacity information is
not shown.ReturnConsumedCapacity
public UpdateItemRequest withReturnConsumedCapacity(ReturnConsumedCapacity returnConsumedCapacity)
TOTAL
, then this information is
shown in the output; otherwise, the consumed capacity information is
not shown.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: TOTAL, NONE
returnConsumedCapacity
- Determines whether to include consumed capacity information in the
output. If this is set to TOTAL
, then this information is
shown in the output; otherwise, the consumed capacity information is
not shown.
ReturnConsumedCapacity
public String getReturnItemCollectionMetrics()
NONE
, meaning that
no statistics will be returned. To obtain the statistics, set
ReturnItemCollectionMetrics to SIZE
.
Constraints:
Allowed Values: SIZE, NONE
NONE
, meaning that
no statistics will be returned. To obtain the statistics, set
ReturnItemCollectionMetrics to SIZE
.ReturnItemCollectionMetrics
public void setReturnItemCollectionMetrics(String returnItemCollectionMetrics)
NONE
, meaning that
no statistics will be returned. To obtain the statistics, set
ReturnItemCollectionMetrics to SIZE
.
Constraints:
Allowed Values: SIZE, NONE
returnItemCollectionMetrics
- Indicates whether to return statistics about item collections, if any,
that were modified during the operation. The default for
ReturnItemCollectionMetrics is NONE
, meaning that
no statistics will be returned. To obtain the statistics, set
ReturnItemCollectionMetrics to SIZE
.ReturnItemCollectionMetrics
public UpdateItemRequest withReturnItemCollectionMetrics(String returnItemCollectionMetrics)
NONE
, meaning that
no statistics will be returned. To obtain the statistics, set
ReturnItemCollectionMetrics to SIZE
.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: SIZE, NONE
returnItemCollectionMetrics
- Indicates whether to return statistics about item collections, if any,
that were modified during the operation. The default for
ReturnItemCollectionMetrics is NONE
, meaning that
no statistics will be returned. To obtain the statistics, set
ReturnItemCollectionMetrics to SIZE
.
ReturnItemCollectionMetrics
public void setReturnItemCollectionMetrics(ReturnItemCollectionMetrics returnItemCollectionMetrics)
NONE
, meaning that
no statistics will be returned. To obtain the statistics, set
ReturnItemCollectionMetrics to SIZE
.
Constraints:
Allowed Values: SIZE, NONE
returnItemCollectionMetrics
- Indicates whether to return statistics about item collections, if any,
that were modified during the operation. The default for
ReturnItemCollectionMetrics is NONE
, meaning that
no statistics will be returned. To obtain the statistics, set
ReturnItemCollectionMetrics to SIZE
.ReturnItemCollectionMetrics
public UpdateItemRequest withReturnItemCollectionMetrics(ReturnItemCollectionMetrics returnItemCollectionMetrics)
NONE
, meaning that
no statistics will be returned. To obtain the statistics, set
ReturnItemCollectionMetrics to SIZE
.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: SIZE, NONE
returnItemCollectionMetrics
- Indicates whether to return statistics about item collections, if any,
that were modified during the operation. The default for
ReturnItemCollectionMetrics is NONE
, meaning that
no statistics will be returned. To obtain the statistics, set
ReturnItemCollectionMetrics to SIZE
.
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 |