public class EntityResolver extends Object implements MappingNamespace, Serializable
EntityResolver is thread-safe.
| Modifier and Type | Field and Description |
|---|---|
protected LifecycleCallbackRegistry |
callbackRegistry |
protected ClassDescriptorMap |
classDescriptorMap |
protected EntityResolver |
clientEntityResolver |
protected Map<String,DbEntity> |
dbEntityCache |
protected Map<String,Embeddable> |
embeddableCache |
protected Map<String,EntityInheritanceTree> |
entityInheritanceCache |
protected EntityListenerFactory |
entityListenerFactory |
protected static AtomicLong |
incrementer |
protected boolean |
indexedByClass |
protected static org.apache.commons.logging.Log |
logger |
protected Collection<DataMap> |
maps |
protected Map<String,ObjEntity> |
objEntityCache |
protected Map<String,Procedure> |
procedureCache |
protected Map<String,Query> |
queryCache |
protected Map<String,SQLResult> |
resultsCache |
| Constructor and Description |
|---|
EntityResolver()
Creates new EntityResolver.
|
EntityResolver(Collection<DataMap> dataMaps)
Creates new EntityResolver that indexes a collection of DataMaps.
|
| Modifier and Type | Method and Description |
|---|---|
protected DbEntity |
_lookupDbEntity(Object object)
Internal usage only - provides the type-unsafe implementation which services the
four typesafe public lookupDbEntity methods Looks in the DataMap's that this object
was created with for the ObjEntity that maps to the specified object.
|
protected ObjEntity |
_lookupObjEntity(String key)
Internal usage only - provides the type-unsafe implementation which services the
three typesafe public lookupObjEntity methods Looks in the DataMap's that this
object was created with for the ObjEntity that maps to the specified object.
|
void |
addDataMap(DataMap map) |
void |
applyDBLayerDefaults()
Updates missing mapping artifacts that can be guessed from other mapping
information.
|
void |
applyObjectLayerDefaults()
Updates missing mapping artifacts that can be guessed from other mapping
information.
|
protected String |
classKey(String className)
Generates a map key for the object class.
|
void |
clearCache()
Removes all entity mappings from the cache.
|
protected void |
constructCache()
Creates caches of DbEntities by ObjEntity, DataObject class, and ObjEntity name
using internal list of maps.
|
LifecycleCallbackRegistry |
getCallbackRegistry()
Returns a
LifecycleCallbackRegistry for handling callbacks. |
ClassDescriptor |
getClassDescriptor(String entityName)
Returns ClassDescriptor for the ObjEntity matching the name.
|
ClassDescriptorMap |
getClassDescriptorMap()
Returns an object that compiles and stores
ClassDescriptor instances for
all entities. |
EntityResolver |
getClientEntityResolver()
Returns ClientEntityResolver with mapping information that only includes entities
available on CWS Client Tier.
|
DataMap |
getDataMap(String mapName)
Returns a DataMap matching the name.
|
Collection<DataMap> |
getDataMaps()
Returns an unmodifiable collection of DataMaps.
|
Collection<DbEntity> |
getDbEntities()
Returns all DbEntities.
|
DbEntity |
getDbEntity(String name)
Returns DbEntity for a given name, or null if no such DbEntity is found in the
MappingNamespace.
|
Embeddable |
getEmbeddable(String className)
Returns an
Embeddable matching class name or null if such Embeddable is not
mapped. |
Collection<Embeddable> |
getEmbeddables() |
Collection<ObjEntity> |
getObjEntities()
Returns all ObjEntities in the namespace.
|
ObjEntity |
getObjEntity(String name)
Returns ObjEntity for a given name, or null if no such ObjEntity is found in the
MappingNamespace.
|
Procedure |
getProcedure(String name)
Returns Procedure for a given name, or null if no such Procedure is found in the
MappingNamespace.
|
Collection<Procedure> |
getProcedures()
Returns all Procedures in the namespace.
|
Collection<Query> |
getQueries()
Returns all Queries in the namespace.
|
Query |
getQuery(String name)
Returns Query for a given name, or null if no such Query is found in the
MappingNamespace.
|
SQLResult |
getResult(String name)
Returns a named result set mapping.
|
Collection<SQLResult> |
getResultSets() |
boolean |
isIndexedByClass() |
EntityInheritanceTree |
lookupInheritanceTree(ObjEntity entity)
Deprecated.
since 3.1 use
lookupInheritanceTree(String). |
EntityInheritanceTree |
lookupInheritanceTree(String entityName)
Returns EntityInheritanceTree representing inheritance hierarchy that starts with a
given ObjEntity as root, and includes all its subentities.
|
ObjEntity |
lookupObjEntity(Class<?> aClass)
Looks in the DataMap's that this object was created with for the ObjEntity that
maps to the services the specified class
|
ObjEntity |
lookupObjEntity(Object object)
Looks in the DataMap's that this object was created with for the ObjEntity that
services the specified data Object
|
Procedure |
lookupProcedure(Query q) |
Procedure |
lookupProcedure(String procedureName) |
Query |
lookupQuery(String name)
Returns a named query or null if no query exists for a given name.
|
void |
removeDataMap(DataMap map) |
void |
setCallbackRegistry(LifecycleCallbackRegistry callbackRegistry)
Sets a lifecycle callbacks registry of the EntityResolver.
|
void |
setDataMaps(Collection<DataMap> maps) |
void |
setEntityListenerFactory(EntityListenerFactory entityListenerFactory)
Sets an optional
EntityListenerFactory that should be used to create entity
listeners. |
void |
setIndexedByClass(boolean b) |
protected static final org.apache.commons.logging.Log logger
protected static AtomicLong incrementer
protected boolean indexedByClass
protected Collection<DataMap> maps
protected transient Map<String,Embeddable> embeddableCache
protected transient Map<String,EntityInheritanceTree> entityInheritanceCache
protected EntityResolver clientEntityResolver
protected transient ClassDescriptorMap classDescriptorMap
protected transient LifecycleCallbackRegistry callbackRegistry
protected EntityListenerFactory entityListenerFactory
public EntityResolver()
public EntityResolver(Collection<DataMap> dataMaps)
public void applyDBLayerDefaults()
public void applyObjectLayerDefaults()
public LifecycleCallbackRegistry getCallbackRegistry()
LifecycleCallbackRegistry for handling callbacks. Registry is
lazily initialized on first call.public void setCallbackRegistry(LifecycleCallbackRegistry callbackRegistry)
public EntityResolver getClientEntityResolver()
public Collection<DbEntity> getDbEntities()
getDbEntities in interface MappingNamespacepublic Collection<ObjEntity> getObjEntities()
MappingNamespacegetObjEntities in interface MappingNamespacepublic Collection<Embeddable> getEmbeddables()
public Collection<SQLResult> getResultSets()
public Collection<Procedure> getProcedures()
MappingNamespacegetProcedures in interface MappingNamespacepublic Collection<Query> getQueries()
MappingNamespacegetQueries in interface MappingNamespacepublic DbEntity getDbEntity(String name)
MappingNamespacegetDbEntity in interface MappingNamespacepublic ObjEntity getObjEntity(String name)
MappingNamespacegetObjEntity in interface MappingNamespacepublic Procedure getProcedure(String name)
MappingNamespacegetProcedure in interface MappingNamespacepublic Query getQuery(String name)
MappingNamespacegetQuery in interface MappingNamespacepublic Embeddable getEmbeddable(String className)
MappingNamespaceEmbeddable matching class name or null if such Embeddable is not
mapped.getEmbeddable in interface MappingNamespacepublic SQLResult getResult(String name)
MappingNamespacegetResult in interface MappingNamespacepublic ClassDescriptor getClassDescriptor(String entityName)
public void addDataMap(DataMap map)
public void clearCache()
constructCache, or on demand by calling any of the
lookup... methods.protected void constructCache()
public void setDataMaps(Collection<DataMap> maps)
public Collection<DataMap> getDataMaps()
@Deprecated public EntityInheritanceTree lookupInheritanceTree(ObjEntity entity)
lookupInheritanceTree(String).public EntityInheritanceTree lookupInheritanceTree(String entityName)
public ObjEntity lookupObjEntity(Class<?> aClass)
public ObjEntity lookupObjEntity(Object object)
public Query lookupQuery(String name)
public void removeDataMap(DataMap map)
public boolean isIndexedByClass()
public void setIndexedByClass(boolean b)
protected String classKey(String className)
protected DbEntity _lookupDbEntity(Object object)
protected ObjEntity _lookupObjEntity(String key)
public ClassDescriptorMap getClassDescriptorMap()
ClassDescriptor instances for
all entities.public void setEntityListenerFactory(EntityListenerFactory entityListenerFactory)
EntityListenerFactory that should be used to create entity
listeners. Note that changing the factory does not affect already created
listeners. So refresh the existing listners, call "setCallbackRegistry(null)" after
setting the listener.Copyright © 2001–2018 Apache Cayenne. All rights reserved.