com.amazonaws.services.dynamodbv2.model

## クラス AttributeValueUpdate

- java.lang.Object
- - com.amazonaws.services.dynamodbv2.model.AttributeValueUpdate

- すべての実装されたインタフェース:
    java.io.Serializable

      public class AttributeValueUpdate
      extends java.lang.Object
      implements 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.

  NOTE: 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 .

  関連項目:
    直列化された形式

- - ### コンストラクタの概要

    コンストラクタ
    コンストラクタと説明
    `AttributeValueUpdate()` Default constructor for a new AttributeValueUpdate object.
    `AttributeValueUpdate(AttributeValue value, AttributeAction action)` Constructs a new AttributeValueUpdate object.
    `AttributeValueUpdate(AttributeValue value, java.lang.String action)` Constructs a new AttributeValueUpdate object.

  - ### メソッドの概要

    メソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `boolean` | `equals(java.lang.Object obj)`
    `java.lang.String` | `getAction()` Specifies how to perform the update.
    `AttributeValue` | `getValue()` Represents the data for an attribute.
    `int` | `hashCode()`
    `void` | `setAction(AttributeAction action)` Specifies how to perform the update.
    `void` | `setAction(java.lang.String action)` Specifies how to perform the update.
    `void` | `setValue(AttributeValue value)` Represents the data for an attribute.
    `java.lang.String` | `toString()` Returns a string representation of this object; useful for testing and debugging.
    `AttributeValueUpdate` | `withAction(AttributeAction action)` Specifies how to perform the update.
    `AttributeValueUpdate` | `withAction(java.lang.String action)` Specifies how to perform the update.
    `AttributeValueUpdate` | `withValue(AttributeValue value)` Represents the data for an attribute.

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### コンストラクタの詳細

    - #### AttributeValueUpdate

          public AttributeValueUpdate()

      Default constructor for a new AttributeValueUpdate object. Callers should use the setter or fluent setter (with...) methods to initialize this object after creating it.

    - #### AttributeValueUpdate

          public AttributeValueUpdate(AttributeValue value,
                              java.lang.String action)

      Constructs a new AttributeValueUpdate object. Callers should use the setter or fluent setter (with...) methods to initialize any additional object members.
      パラメータ:
        `value` - Represents the data for an attribute. You can set one, and only one, of the elements.
        `action` - Specifies how to perform the update. Valid values 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 `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.

            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, 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.

    - #### AttributeValueUpdate

          public AttributeValueUpdate(AttributeValue value,
                              AttributeAction action)

      Constructs a new AttributeValueUpdate object. Callers should use the setter or fluent setter (with...) methods to initialize any additional object members.
      パラメータ:
        `value` - Represents the data for an attribute. You can set one, and only one, of the elements.
        `action` - Specifies how to perform the update. Valid values 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 `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.

            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, 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.

  - ### メソッドの詳細

    - #### getValue

          public AttributeValue getValue()

      Represents the data for an attribute. You can set one, and only one, of the elements.
      戻り値:
        Represents the data for an attribute. You can set one, and only one, of the elements.

    - #### setValue

          public void setValue(AttributeValue value)

      Represents the data for an attribute. You can set one, and only one, of the elements.
      パラメータ:
        `value` - Represents the data for an attribute. You can set one, and only one, of the elements.

    - #### withValue

          public AttributeValueUpdate withValue(AttributeValue value)

      Represents the data for an attribute. You can set one, and only one, of the elements.

      Returns a reference to this object so that method calls can be chained together.

      パラメータ:
        `value` - Represents the data for an attribute. You can set one, and only one, of the elements.

    - #### getAction

          public java.lang.String getAction()

      Specifies how to perform the update. Valid values 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 `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.

          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, 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.

      Constraints:
      Allowed Values: ADD, PUT, DELETE

      戻り値:
        Specifies how to perform the update. Valid values 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 `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.

            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, 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.

      関連項目:
        `AttributeAction`

    - #### setAction

          public void setAction(java.lang.String action)

      Specifies how to perform the update. Valid values 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 `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.

          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, 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.

      Constraints:
      Allowed Values: ADD, PUT, DELETE

      パラメータ:
        `action` - Specifies how to perform the update. Valid values 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 `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.

            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, 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.

      関連項目:
        `AttributeAction`

    - #### withAction

          public AttributeValueUpdate withAction(java.lang.String action)

      Specifies how to perform the update. Valid values 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 `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.

          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, 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.

      Returns a reference to this object so that method calls can be chained together.

      Constraints:
      Allowed Values: ADD, PUT, DELETE

      パラメータ:
        `action` - Specifies how to perform the update. Valid values 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 `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.

            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, 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.

      関連項目:
        `AttributeAction`

    - #### setAction

          public void setAction(AttributeAction action)

      Specifies how to perform the update. Valid values 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 `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.

          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, 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.

      Constraints:
      Allowed Values: ADD, PUT, DELETE

      パラメータ:
        `action` - Specifies how to perform the update. Valid values 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 `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.

            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, 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.

      関連項目:
        `AttributeAction`

    - #### withAction

          public AttributeValueUpdate withAction(AttributeAction action)

      Specifies how to perform the update. Valid values 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 `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.

          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, 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.

      Returns a reference to this object so that method calls can be chained together.

      Constraints:
      Allowed Values: ADD, PUT, DELETE

      パラメータ:
        `action` - Specifies how to perform the update. Valid values 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 `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.

            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, 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.

      関連項目:
        `AttributeAction`

    - #### toString

          public java.lang.String toString()

      Returns a string representation of this object; useful for testing and debugging.
      オーバーライド:
        `toString` クラス内 `java.lang.Object`
      戻り値:
        A string representation of this object.
      関連項目:
        `Object.toString()`

    - #### hashCode

          public int hashCode()

      オーバーライド:
        `hashCode` クラス内 `java.lang.Object`

    - #### equals

          public boolean equals(java.lang.Object obj)

      オーバーライド:
        `equals` クラス内 `java.lang.Object`