Package com.googlecode.objectify
Class Key<T>
java.lang.Object
com.googlecode.objectify.Key<T>
- All Implemented Interfaces:
Serializable
,Comparable<Key<?>>
public class Key<T> extends Object implements Serializable, Comparable<Key<?>>
A typesafe wrapper for the datastore Key object.
- Author:
- Jeff Schnitzer
, Scott Hernandez - See Also:
- Serialized Form
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
Compares based on comparison of the raw keystatic <T> Key<T>
create(com.google.appengine.api.datastore.Key raw)
Key.create(key) is easier to type than new Key(key) static <T> Key<T>
Key.create(parent, Blah.class, id) is easier to type than new Key(parent, Blah.class, id) static <T> Key<T>
Key.create(parent, Blah.class, name) is easier to type than new Key(parent, Blah.class, name) static <T> Key<T>
Key.create(Blah.class, id) is easier to type than new Key(Blah.class, id) static <T> Key<T>
Key.create(Blah.class, name) is easier to type than new Key(Blah.class, name) static <T> Key<T>
Key.create(webSafeString) is easier to type than new Key(webSafeString) static <T> Key<T>
create(T pojo)
Create a key from a registered POJO entity.boolean
boolean
equivalent(Key<T> other)
A type-safe equivalence comparisonboolean
equivalent(Ref<T> other)
A type-safe equivalence comparisonlong
getId()
getKind()
static String
Determines the kind for a Class, as understood by the datastore.getName()
<V> Key<V>
com.google.appengine.api.datastore.Key
getRaw()
<V> Key<V>
getRoot()
Gets the root of a parent graph of keys.Call KeyFactory.keyToString() on the underlying Key.int
hashCode()
static <V> Key<V>
key(com.google.appengine.api.datastore.Key raw)
Easy null-safe conversion of the raw key.static com.google.appengine.api.datastore.Key
Easy null-safe conversion of the typed key.toString()
Creates a human-readable version of this keyCall KeyFactory.keyToString() on the underlying Key.static <T> Key<T>
This is an alias for Key.create(String) which exists for JAX-RS compliance.
-
Field Details
-
raw
protected com.google.appengine.api.datastore.Key raw -
parent
Cache the instance of the parent wrapper to avoid unnecessary garbage
-
-
Method Details
-
create
Key.create(key) is easier to type than new Key(key) -
create
Key.create(Blah.class, id) is easier to type than new Key(Blah.class, id) -
create
Key.create(Blah.class, name) is easier to type than new Key(Blah.class, name) -
create
Key.create(parent, Blah.class, id) is easier to type than new Key(parent, Blah.class, id) -
create
Key.create(parent, Blah.class, name) is easier to type than new Key(parent, Blah.class, name) -
create
Key.create(webSafeString) is easier to type than new Key(webSafeString) -
valueOf
This is an alias for Key.create(String) which exists for JAX-RS compliance. -
create
Create a key from a registered POJO entity. -
getRaw
public com.google.appengine.api.datastore.Key getRaw()- Returns:
- the raw datastore version of this key
-
getId
public long getId()- Returns:
- the id associated with this key, or 0 if this key has a name.
-
getName
- Returns:
- the name associated with this key, or null if this key has an id
-
getKind
- Returns:
- the low-level datastore kind associated with this Key
-
getParent
- Returns:
- the parent key, or null if there is no parent. Note that the parent could potentially have any type.
-
getRoot
Gets the root of a parent graph of keys. If a Key has no parent, it is the root.- Returns:
- the topmost parent key, or this object itself if it is the root. Note that the root key could potentially have any type.
-
compareTo
Compares based on comparison of the raw key
- Specified by:
compareTo
in interfaceComparable<T>
-
equals
-
equivalent
A type-safe equivalence comparison -
equivalent
A type-safe equivalence comparison -
hashCode
public int hashCode() -
toString
Creates a human-readable version of this key -
getString
Call KeyFactory.keyToString() on the underlying Key. You can reconstitute a Key> using the constructor that takes a websafe string. This is a javabeans-style alias for toWebSafeString(). -
toWebSafeString
Call KeyFactory.keyToString() on the underlying Key. You can reconstitute a Key> using the constructor that takes a websafe string. Note that toString() is only useful for debugging; it cannot be used to create a key with Key.create(String). -
key
Easy null-safe conversion of the raw key. -
key
Easy null-safe conversion of the typed key. -
getKind
Determines the kind for a Class, as understood by the datastore. The first class in a hierarchy that has @Entity defines the kind (either explicitly or as that class' simplename).
If no @Entity annotation is found, just uses the simplename as is.
-