|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.google.appengine.api.datastore.Entity
public final class Entity
Entity
is the fundamental unit of data storage. It has an
immutable identifier (contained in the Key
) object, a
reference to an optional parent Entity
, a kind (represented
as an arbitrary string), and a set of zero or more typed
properties.
Field Summary | |
---|---|
static java.lang.String |
KEY_RESERVED_PROPERTY
A reserved property name used to refer to the key of the entity. |
static java.lang.String |
SCATTER_RESERVED_PROPERTY
A reserved property name used to refer to the scatter property of the entity. |
Constructor Summary | |
---|---|
Entity(Key key)
Create a new Entity uniquely identified by the provided
Key . |
|
Entity(java.lang.String kind)
Create a new Entity with the specified kind and no
parent Entity . |
|
Entity(java.lang.String kind,
Key parent)
Create a new Entity with the specified kind and parent
Entity . |
|
Entity(java.lang.String kind,
long id)
Create a new Entity with the specified kind and ID and no
parent Entity . |
|
Entity(java.lang.String kind,
long id,
Key parent)
Create a new Entity with the specified kind and ID and
parent Entity . |
|
Entity(java.lang.String kind,
java.lang.String keyName)
Create a new Entity with the specified kind and key name and no
parent Entity . |
|
Entity(java.lang.String kind,
java.lang.String keyName,
Key parent)
Create a new Entity with the specified kind, key name, and
parent Entity . |
Method Summary | |
---|---|
Entity |
clone()
Returns a shallow copy of this Entity instance. |
boolean |
equals(java.lang.Object object)
Two Entity objects are considered equal if they refer to
the same entity (i.e. |
java.lang.String |
getAppId()
Returns the identifier of the application that owns this Entity . |
Key |
getKey()
Returns the Key that represents this Entity . |
java.lang.String |
getKind()
Returns a logical type that is associated with this Entity . |
java.lang.String |
getNamespace()
Returns the namespace of the application/namespace that owns this Entity . |
Key |
getParent()
Get a Key that corresponds to this the parent Entity of this Entity . |
java.util.Map<java.lang.String,java.lang.Object> |
getProperties()
Gets all of the properties belonging to this Entity . |
java.lang.Object |
getProperty(java.lang.String propertyName)
Gets the property with the specified name. |
int |
hashCode()
|
boolean |
hasProperty(java.lang.String propertyName)
Returns true if a property has been set. |
boolean |
isUnindexedProperty(java.lang.String propertyName)
Returns true if propertyName has a value that will not be
indexed. |
void |
removeProperty(java.lang.String propertyName)
Removes any property with the specified name. |
void |
setPropertiesFrom(Entity src)
A convenience method that populates the properties of this Entity
with the properties set on the provided Entity . |
void |
setProperty(java.lang.String propertyName,
java.lang.Object value)
Sets the property named, propertyName , to value . |
void |
setUnindexedProperty(java.lang.String propertyName,
java.lang.Object value)
Like #setProperty , but doesn't index the property in the built-in
single property indexes. |
java.lang.String |
toString()
|
Methods inherited from class java.lang.Object |
---|
getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String KEY_RESERVED_PROPERTY
public static final java.lang.String SCATTER_RESERVED_PROPERTY
Constructor Detail |
---|
public Entity(java.lang.String kind)
Entity
with the specified kind and no
parent Entity
. The instantiated Entity
will have an
incomplete Key
when this constructor returns. The
Key
will remain incomplete until you put the Entity
,
after which time the Key
will have its id
set.
public Entity(java.lang.String kind, Key parent)
Entity
with the specified kind and parent
Entity
. The instantiated Entity
will have an
incomplete Key
when this constructor returns. The
Key
will remain incomplete until you put the Entity
,
after which time the Key
will have its id
set.
public Entity(java.lang.String kind, java.lang.String keyName)
Entity
with the specified kind and key name and no
parent Entity
. The instantiated Entity
will have a
complete Key
when this constructor returns. The
Key's
name
field will be set to the value of
keyName
.
This constructor is syntactic sugar for
new Entity(KeyFactory.createKey(kind, keyName))
.
public Entity(java.lang.String kind, long id)
Entity
with the specified kind and ID and no
parent Entity
. The instantiated Entity
will have a
complete Key
when this constructor returns. The
Key's
id
field will be set to the value of
id
.
Creating an entity for the purpose of insertion (as opposed to
update) with this constructor is discouraged unless the id was
obtained from a key returned by a KeyRange
obtained from
AsyncDatastoreService.allocateIds(String, long)
or
DatastoreService.allocateIds(String, long)
for the same
kind.
This constructor is syntactic sugar for
new Entity(KeyFactory.createKey(kind, id))
.
public Entity(java.lang.String kind, java.lang.String keyName, Key parent)
Entity
with the specified kind, key name, and
parent Entity
. The instantiated Entity
will have a
complete Key
when this constructor returns. The
Key's
name
field will be set to the value of
keyName
.
This constructor is syntactic sugar for
new Entity(KeyFactory.createKey(parent, kind, keyName))
.
public Entity(java.lang.String kind, long id, Key parent)
Entity
with the specified kind and ID and
parent Entity
. The instantiated Entity
will have a
complete Key
when this constructor returns. The
Key's
id
field will be set to the value of
id
.
Creating an entity for the purpose of insertion (as opposed to
update) with this constructor is discouraged unless the id was
obtained from a key returned by a KeyRange
obtained from
AsyncDatastoreService.allocateIds(Key, String, long)
or
DatastoreService.allocateIds(Key, String, long)
for the same
parent and kind.
This constructor is syntactic sugar for
new Entity(KeyFactory.createKey(parent, kind, id))
.
public Entity(Key key)
Entity
uniquely identified by the provided
Key
. Creating an entity for the purpose of insertion (as opposed
to update) with a key that has its id
field set is strongly
discouraged unless the key was returned by a KeyRange
.
KeyRange
Method Detail |
---|
public boolean equals(java.lang.Object object)
Entity
objects are considered equal if they refer to
the same entity (i.e. their Key
objects match).
equals
in class java.lang.Object
public Key getKey()
Key
that represents this Entity
. If
the entity has not yet been saved (e.g. via DatastoreService.put
), this Key
will not be fully
specified and cannot be used for certain operations (like DatastoreService.get
). Once the Entity
has been saved,
its Key
will be updated to be fully specified.
public java.lang.String getKind()
Entity
. This is simply a convenience method that forwards to
the Key
for this Entity
.
public Key getParent()
Key
that corresponds to this the parent Entity
of this Entity
. This is simply a convenience
method that forwards to the Key
for this Entity
.
public java.lang.Object getProperty(java.lang.String propertyName)
setProperty(java.lang.String, java.lang.Object)
.
propertyName
.public java.util.Map<java.lang.String,java.lang.Object> getProperties()
Entity
.
Map
of properties.public int hashCode()
hashCode
in class java.lang.Object
public boolean hasProperty(java.lang.String propertyName)
null
.
propertyName
exists.public void removeProperty(java.lang.String propertyName)
java.lang.NullPointerException
- If propertyName
is null.public void setProperty(java.lang.String propertyName, java.lang.Object value)
propertyName
, to value
.
As the value is stored in the datastore, it is converted to the
datastore's native type. This may include widening, such as
converting a Short
to a Long
.
All Collections
are prone
to losing their sort order and their original types as they are
stored in the datastore. For example, a TreeSet
may be
returned as a List
from getProperty(java.lang.String)
, with an
arbitrary re-ordering of elements.
Overrides any existing value for this property, whether indexed or unindexed.
Note that Blob
and Text
property values are never indexed
by the built-in single property indexes. To store other types without
being indexed, use #setUnindexedProperty
.
value
- may be one of the supported datatypes or a heterogeneous
Collection
of one of the supported datatypes.
java.lang.IllegalArgumentException
- If the value is not of a type that
the data store supports.setUnindexedProperty(java.lang.String, java.lang.Object)
public void setUnindexedProperty(java.lang.String propertyName, java.lang.Object value)
#setProperty
, but doesn't index the property in the built-in
single property indexes.
value
- may be one of the supported datatypes, or a heterogeneous
Collection
of one of the supported datatypes.
Overrides any existing value for this property, whether indexed or unindexed.
java.lang.IllegalArgumentException
- If the value is not of a type that
the data store supports.setProperty(java.lang.String, java.lang.Object)
public boolean isUnindexedProperty(java.lang.String propertyName)
propertyName
has a value that will not be
indexed. This includes Text
, Blob
, and any property
added using setUnindexedProperty(java.lang.String, java.lang.Object)
.
public java.lang.String toString()
toString
in class java.lang.Object
public java.lang.String getAppId()
Entity
. This is simply a convenience method that forwards to
the Key
for this Entity
.
public java.lang.String getNamespace()
Entity
. This is simply a convenience method that forwards to
the Key
for this Entity
.
public Entity clone()
Entity
instance. Collection
properties are cloned as an ArrayList
, the type returned from the
datastore. Instances of mutable datastore types are cloned as well.
Instances of all other types are reused.
clone
in class java.lang.Object
Entity
public void setPropertiesFrom(Entity src)
Entity
with the properties set on the provided Entity
. This method
transfers information about unindexed properties.
src
- The entity from which we will populate ourself.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |