/* * Copyright 2010-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ package com.amazonaws.services.dynamodbv2.model; import java.io.Serializable; /** *
* For the UpdateItem
operation, represents the attributes to be
* modified, the action to perform on each, and the new value for each.
*
* You cannot use UpdateItem
to update any primary key attributes.
* Instead, you will need to delete the item, and then use PutItem
* to create a new item with new attributes.
*
* Attribute values cannot be null; string and binary type attributes must have
* lengths greater than zero; and set type attributes must not be empty.
* Requests with empty values will be rejected with a
* ValidationException
exception.
*
* Represents the data for an attribute. *
** Each attribute value is described as a name-value pair. The name is the * data type, and the value is the data itself. *
** For more information, see Data Types in the Amazon DynamoDB Developer Guide. *
*/ private AttributeValue value; /** *
* Specifies how to perform the update. Valid values are PUT
* (default), 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 ADD
to increment or decrement a number value for
* an item that doesn't exist before the update, DynamoDB uses 0 as the
* initial value.
*
* In addition, if you use ADD
to update an existing item, and
* intend to increment or decrement an attribute value which does not yet
* exist, 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. 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
- 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
- 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.
*
* Constraints:
* Allowed Values: ADD, PUT, DELETE
*/
private String action;
/**
* Default constructor for AttributeValueUpdate object. Callers should use
* the setter or fluent setter (with...) methods to initialize any
* additional object members.
*/
public AttributeValueUpdate() {
}
/**
* Constructs a new AttributeValueUpdate object. Callers should use the
* setter or fluent setter (with...) methods to initialize any additional
* object members.
*
* @param value
* Represents the data for an attribute. *
** Each attribute value is described as a name-value pair. The * name is the data type, and the value is the data itself. *
** For more information, see Data Types in the Amazon DynamoDB Developer Guide. *
* @param action
* Specifies how to perform the update. Valid values are
* PUT
(default), 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 ADD
to increment or decrement a number
* value for an item that doesn't exist before the update,
* DynamoDB uses 0 as the initial value.
*
* In addition, if you use ADD
to update an existing
* item, and intend to increment or decrement an attribute value
* which does not yet exist, 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. 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
- 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
- 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.
*
* Represents the data for an attribute. *
** Each attribute value is described as a name-value pair. The * name is the data type, and the value is the data itself. *
** For more information, see Data Types in the Amazon DynamoDB Developer Guide. *
* @param action
* Specifies how to perform the update. Valid values are
* PUT
(default), 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 ADD
to increment or decrement a number
* value for an item that doesn't exist before the update,
* DynamoDB uses 0 as the initial value.
*
* In addition, if you use ADD
to update an existing
* item, and intend to increment or decrement an attribute value
* which does not yet exist, 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. 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
- 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
- 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.
*
* Represents the data for an attribute. *
** Each attribute value is described as a name-value pair. The name is the * data type, and the value is the data itself. *
** For more information, see Data Types in the Amazon DynamoDB Developer Guide. *
* * @return* Represents the data for an attribute. *
** Each attribute value is described as a name-value pair. The name * is the data type, and the value is the data itself. *
** For more information, see Data Types in the Amazon DynamoDB Developer Guide. *
*/ public AttributeValue getValue() { return value; } /** ** Represents the data for an attribute. *
** Each attribute value is described as a name-value pair. The name is the * data type, and the value is the data itself. *
** For more information, see Data Types in the Amazon DynamoDB Developer Guide. *
* * @param value* Represents the data for an attribute. *
** Each attribute value is described as a name-value pair. The * name is the data type, and the value is the data itself. *
** For more information, see Data Types in the Amazon DynamoDB Developer Guide. *
*/ public void setValue(AttributeValue value) { this.value = value; } /** ** Represents the data for an attribute. *
** Each attribute value is described as a name-value pair. The name is the * data type, and the value is the data itself. *
** For more information, see Data Types in the Amazon DynamoDB Developer Guide. *
** Returns a reference to this object so that method calls can be chained * together. * * @param value
* Represents the data for an attribute. *
** Each attribute value is described as a name-value pair. The * name is the data type, and the value is the data itself. *
** For more information, see Data Types in the Amazon DynamoDB Developer Guide. *
* @return A reference to this updated object so that method calls can be * chained together. */ public AttributeValueUpdate withValue(AttributeValue value) { this.value = value; return this; } /** *
* Specifies how to perform the update. Valid values are PUT
* (default), 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 ADD
to increment or decrement a number value for
* an item that doesn't exist before the update, DynamoDB uses 0 as the
* initial value.
*
* In addition, if you use ADD
to update an existing item, and
* intend to increment or decrement an attribute value which does not yet
* exist, 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. 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
- 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
- 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.
*
* Constraints:
* Allowed Values: ADD, PUT, DELETE
*
* @return
* Specifies how to perform the update. Valid values are
* PUT
(default), 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 ADD
to increment or decrement a number
* value for an item that doesn't exist before the update, DynamoDB
* uses 0 as the initial value.
*
* In addition, if you use ADD
to update an existing
* item, and intend to increment or decrement an attribute value
* which does not yet exist, 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.
* 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
- 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
- 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.
*
* Specifies how to perform the update. Valid values are PUT
* (default), 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 ADD
to increment or decrement a number value for
* an item that doesn't exist before the update, DynamoDB uses 0 as the
* initial value.
*
* In addition, if you use ADD
to update an existing item, and
* intend to increment or decrement an attribute value which does not yet
* exist, 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. 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
- 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
- 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.
*
* Constraints:
* Allowed Values: ADD, PUT, DELETE
*
* @param action
* Specifies how to perform the update. Valid values are
* PUT
(default), 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 ADD
to increment or decrement a number
* value for an item that doesn't exist before the update,
* DynamoDB uses 0 as the initial value.
*
* In addition, if you use ADD
to update an existing
* item, and intend to increment or decrement an attribute value
* which does not yet exist, 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. 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
- 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
- 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.
*
* Specifies how to perform the update. Valid values are PUT
* (default), 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 ADD
to increment or decrement a number value for
* an item that doesn't exist before the update, DynamoDB uses 0 as the
* initial value.
*
* In addition, if you use ADD
to update an existing item, and
* intend to increment or decrement an attribute value which does not yet
* exist, 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. 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
- 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
- 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.
*
* Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: ADD, PUT, DELETE
*
* @param action
* Specifies how to perform the update. Valid values are
* PUT
(default), 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 ADD
to increment or decrement a number
* value for an item that doesn't exist before the update,
* DynamoDB uses 0 as the initial value.
*
* In addition, if you use ADD
to update an existing
* item, and intend to increment or decrement an attribute value
* which does not yet exist, 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. 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
- 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
- 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.
*
* Specifies how to perform the update. Valid values are PUT
* (default), 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 ADD
to increment or decrement a number value for
* an item that doesn't exist before the update, DynamoDB uses 0 as the
* initial value.
*
* In addition, if you use ADD
to update an existing item, and
* intend to increment or decrement an attribute value which does not yet
* exist, 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. 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
- 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
- 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.
*
* Constraints:
* Allowed Values: ADD, PUT, DELETE
*
* @param action
* Specifies how to perform the update. Valid values are
* PUT
(default), 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 ADD
to increment or decrement a number
* value for an item that doesn't exist before the update,
* DynamoDB uses 0 as the initial value.
*
* In addition, if you use ADD
to update an existing
* item, and intend to increment or decrement an attribute value
* which does not yet exist, 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. 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
- 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
- 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.
*
* Specifies how to perform the update. Valid values are PUT
* (default), 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 ADD
to increment or decrement a number value for
* an item that doesn't exist before the update, DynamoDB uses 0 as the
* initial value.
*
* In addition, if you use ADD
to update an existing item, and
* intend to increment or decrement an attribute value which does not yet
* exist, 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. 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
- 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
- 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.
*
* Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: ADD, PUT, DELETE
*
* @param action
* Specifies how to perform the update. Valid values are
* PUT
(default), 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 ADD
to increment or decrement a number
* value for an item that doesn't exist before the update,
* DynamoDB uses 0 as the initial value.
*
* In addition, if you use ADD
to update an existing
* item, and intend to increment or decrement an attribute value
* which does not yet exist, 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. 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
- 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
- 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.
*