public class KeySchemaElement
extends java.lang.Object
implements java.io.Serializable, java.lang.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.
Modifier and Type | Field and Description |
---|---|
private java.lang.String |
attributeName
The name of a key attribute.
|
private java.lang.String |
keyType
The role that this key attribute will assume:
|
Constructor and Description |
---|
KeySchemaElement()
Default constructor for KeySchemaElement object.
|
KeySchemaElement(java.lang.String attributeName,
KeyType keyType)
Constructs a new KeySchemaElement object.
|
KeySchemaElement(java.lang.String attributeName,
java.lang.String keyType)
Constructs a new KeySchemaElement object.
|
Modifier and Type | Method and Description |
---|---|
KeySchemaElement |
clone() |
boolean |
equals(java.lang.Object obj) |
java.lang.String |
getAttributeName()
The name of a key attribute.
|
java.lang.String |
getKeyType()
The role that this key attribute will assume:
|
int |
hashCode() |
void |
setAttributeName(java.lang.String attributeName)
The name of a key attribute.
|
void |
setKeyType(KeyType keyType)
The role that this key attribute will assume:
|
void |
setKeyType(java.lang.String keyType)
The role that this key attribute will assume:
|
java.lang.String |
toString()
Returns a string representation of this object; useful for testing and
debugging.
|
KeySchemaElement |
withAttributeName(java.lang.String attributeName)
The name of a key attribute.
|
KeySchemaElement |
withKeyType(KeyType keyType)
The role that this key attribute will assume:
|
KeySchemaElement |
withKeyType(java.lang.String keyType)
The role that this key attribute will assume:
|
private java.lang.String attributeName
The name of a key attribute.
private java.lang.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.
public KeySchemaElement()
public KeySchemaElement(java.lang.String attributeName, java.lang.String keyType)
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.
public KeySchemaElement(java.lang.String attributeName, KeyType keyType)
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.
public void setAttributeName(java.lang.String attributeName)
The name of a key attribute.
attributeName
- The name of a key attribute.public java.lang.String getAttributeName()
The name of a key attribute.
public KeySchemaElement withAttributeName(java.lang.String attributeName)
The name of a key attribute.
attributeName
- The name of a key attribute.public void setKeyType(java.lang.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.
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.
KeyType
public java.lang.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.
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.
KeyType
public KeySchemaElement withKeyType(java.lang.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.
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.
KeyType
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.
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.
KeyType
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.
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.
KeyType
public java.lang.String toString()
toString
in class java.lang.Object
Object.toString()
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public KeySchemaElement clone()
clone
in class java.lang.Object