Class KeySchemaElement

java.lang.Object
com.amazonaws.services.dynamodbv2.model.KeySchemaElement
All Implemented Interfaces:
Serializable, Cloneable

public class KeySchemaElement extends Object implements Serializable, Cloneable

Represents a single element of a key schema. A key schema specifies the attributes that make up the primary key of a table, or the key attributes of an index.

A KeySchemaElement represents exactly one attribute of the primary key. For example, a simple primary key would be represented by one KeySchemaElement (for the partition key). A composite primary key would require one KeySchemaElement for the partition key, and another KeySchemaElement for the sort key.

A KeySchemaElement must be a scalar, top-level attribute (not a nested attribute). The data type must be one of String, Number, or Binary. The attribute cannot be nested within a List or a Map.

See Also:
  • Constructor Details

    • KeySchemaElement

      public KeySchemaElement()
      Default constructor for KeySchemaElement object. Callers should use the setter or fluent setter (with...) methods to initialize the object after creating it.
    • KeySchemaElement

      public KeySchemaElement(String attributeName, String keyType)
      Constructs a new KeySchemaElement object. Callers should use the setter or fluent setter (with...) methods to initialize any additional object members.
      Parameters:
      attributeName - The name of a key attribute.
      keyType - The role that this key attribute will assume:

      • HASH - partition key

      • RANGE - sort key

      The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

      The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

    • KeySchemaElement

      public KeySchemaElement(String attributeName, KeyType keyType)
      Constructs a new KeySchemaElement object. Callers should use the setter or fluent setter (with...) methods to initialize any additional object members.
      Parameters:
      attributeName - The name of a key attribute.
      keyType - The role that this key attribute will assume:

      • HASH - partition key

      • RANGE - sort key

      The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

      The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

  • Method Details

    • setAttributeName

      public void setAttributeName(String attributeName)

      The name of a key attribute.

      Parameters:
      attributeName - The name of a key attribute.
    • getAttributeName

      public String getAttributeName()

      The name of a key attribute.

      Returns:
      The name of a key attribute.
    • withAttributeName

      public KeySchemaElement withAttributeName(String attributeName)

      The name of a key attribute.

      Parameters:
      attributeName - The name of a key attribute.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setKeyType

      public void setKeyType(String keyType)

      The role that this key attribute will assume:

      • HASH - partition key

      • RANGE - sort key

      The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

      The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

      Parameters:
      keyType - The role that this key attribute will assume:

      • HASH - partition key

      • RANGE - sort key

      The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

      The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

      See Also:
    • getKeyType

      public String getKeyType()

      The role that this key attribute will assume:

      • HASH - partition key

      • RANGE - sort key

      The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

      The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

      Returns:
      The role that this key attribute will assume:

      • HASH - partition key

      • RANGE - sort key

      The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

      The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

      See Also:
    • withKeyType

      public KeySchemaElement withKeyType(String keyType)

      The role that this key attribute will assume:

      • HASH - partition key

      • RANGE - sort key

      The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

      The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

      Parameters:
      keyType - The role that this key attribute will assume:

      • HASH - partition key

      • RANGE - sort key

      The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

      The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • setKeyType

      public void setKeyType(KeyType keyType)

      The role that this key attribute will assume:

      • HASH - partition key

      • RANGE - sort key

      The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

      The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

      Parameters:
      keyType - The role that this key attribute will assume:

      • HASH - partition key

      • RANGE - sort key

      The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

      The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

      See Also:
    • withKeyType

      public KeySchemaElement withKeyType(KeyType keyType)

      The role that this key attribute will assume:

      • HASH - partition key

      • RANGE - sort key

      The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

      The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

      Parameters:
      keyType - The role that this key attribute will assume:

      • HASH - partition key

      • RANGE - sort key

      The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

      The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • toString

      public String toString()
      Returns a string representation of this object; useful for testing and debugging.
      Overrides:
      toString in class Object
      Returns:
      A string representation of this object.
      See Also:
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • clone

      public KeySchemaElement clone()
      Overrides:
      clone in class Object