public interface DynamicEntity
DynamicEntity
is the public interface for dealing with dynamic persistent objects.
The purpose of dynamic persistent objects is to enable (simple) data access when only mapping
information is available
and no concrete Java model is present (specifically, no .class files .)
Applications using DynamicEntity
's can access the persistent state using property names
which correspond
to the mapped attributes in the underlying EclipseLink descriptors.
For properties mapped to containers (Collection
,
Map
, etc.), the property is retrieved then the resulting container can
be manipulated.
... DynamicEntity de = ...; // retrieve from database Collection<String> myListOfGroups = de.<Collection<String>>get("myListOfGroups"); if (!myListOfGroups.isEmpty()) { myListOfGroups.add("FabFour"); }To discover meta-data about a DynamicEntity's properties, see the
DynamicHelper
classModifier and Type | Method and Description |
---|---|
<T> T |
get(java.lang.String propertyName)
Return the persistence value for the given property as the specified type.
|
boolean |
isSet(java.lang.String propertyName)
Discover if a property has a persistent value
|
DynamicEntity |
set(java.lang.String propertyName,
java.lang.Object value)
Set the persistence value for the given property to the specified value
|
<T> T get(java.lang.String propertyName) throws DynamicException
T
- generic type of the property (if not provided, assume Object).
If the property cannot be cast to the specific type, a DynamicException
will be thrown.propertyName
- the name of a mapped property
If the property cannot be found, a DynamicException
will be thrown.DynamicException
DynamicEntity set(java.lang.String propertyName, java.lang.Object value) throws DynamicException
propertyName
- the name of a mapped property
If the property cannot be found, a DynamicException
will be thrown.value
- the specified objectDynamicException
boolean isSet(java.lang.String propertyName) throws DynamicException
propertyName
- the name of a mapped property
If the property cannot be found, a DynamicException
will be thrown.DynamicException