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 MappingNamespace
public Collection<ObjEntity> getObjEntities()
MappingNamespace
getObjEntities
in interface MappingNamespace
public Collection<Embeddable> getEmbeddables()
public Collection<SQLResult> getResultSets()
public Collection<Procedure> getProcedures()
MappingNamespace
getProcedures
in interface MappingNamespace
public Collection<Query> getQueries()
MappingNamespace
getQueries
in interface MappingNamespace
public DbEntity getDbEntity(String name)
MappingNamespace
getDbEntity
in interface MappingNamespace
public ObjEntity getObjEntity(String name)
MappingNamespace
getObjEntity
in interface MappingNamespace
public Procedure getProcedure(String name)
MappingNamespace
getProcedure
in interface MappingNamespace
public Query getQuery(String name)
MappingNamespace
getQuery
in interface MappingNamespace
public Embeddable getEmbeddable(String className)
MappingNamespace
Embeddable
matching class name or null if such Embeddable is not
mapped.getEmbeddable
in interface MappingNamespace
public SQLResult getResult(String name)
MappingNamespace
getResult
in interface MappingNamespace
public 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.