@Component(value="cuba_Metadata") public class MetadataImpl extends java.lang.Object implements Metadata
Modifier and Type | Field and Description |
---|---|
protected org.springframework.context.ApplicationContext |
applicationContext |
protected GlobalConfig |
config |
protected com.haulmont.chile.core.datatypes.DatatypeRegistry |
datatypeRegistry |
protected ExtendedEntities |
extendedEntities |
protected NumberIdSource |
numberIdSource |
protected com.google.common.cache.LoadingCache<java.lang.Class<?>,java.util.List<java.lang.reflect.Method>> |
postConstructMethodsCache |
protected Resources |
resources |
protected java.util.List<java.lang.String> |
rootPackages |
protected com.haulmont.chile.core.model.Session |
session |
protected MetadataTools |
tools |
protected ViewRepository |
viewRepository |
Constructor and Description |
---|
MetadataImpl() |
Modifier and Type | Method and Description |
---|---|
protected <T> T |
__create(java.lang.Class<T> entityClass) |
protected void |
assignIdentifier(Entity entity) |
protected void |
assignUuid(Entity entity) |
<T> T |
create(java.lang.Class<T> entityClass)
Instantiate an entity, taking into account extended entities.
|
Entity |
create(com.haulmont.chile.core.model.MetaClass metaClass)
Instantiate an entity, taking into account extended entities.
|
Entity |
create(java.lang.String entityName)
Instantiate an entity, taking into account extended entities.
|
protected void |
createEmbedded(Entity entity) |
com.haulmont.chile.core.model.MetaClass |
getClass(java.lang.Class<?> clazz) |
com.haulmont.chile.core.model.MetaClass |
getClass(java.lang.String name) |
java.util.Collection<com.haulmont.chile.core.model.MetaClass> |
getClasses() |
com.haulmont.chile.core.model.MetaClass |
getClassNN(java.lang.Class<?> clazz) |
com.haulmont.chile.core.model.MetaClass |
getClassNN(java.lang.String name) |
com.haulmont.chile.core.datatypes.DatatypeRegistry |
getDatatypes()
Convenient access to
DatatypeRegistry bean. |
protected java.lang.String |
getEntityNameForIdGeneration(com.haulmont.chile.core.model.MetaClass metaClass) |
ExtendedEntities |
getExtendedEntities()
Convenient access to
ExtendedEntities bean. |
com.haulmont.chile.core.model.MetaModel |
getModel(java.lang.String name) |
java.util.Collection<com.haulmont.chile.core.model.MetaModel> |
getModels() |
protected java.util.List<java.lang.reflect.Method> |
getPostConstructMethodsNotCached(java.lang.Class<?> clazz) |
java.util.List<java.lang.String> |
getRootPackages() |
com.haulmont.chile.core.model.Session |
getSession()
Get Metadata session - interface providing access to MetaClasses and MetaProperties.
|
MetadataTools |
getTools()
Convenient access to
MetadataTools bean. |
ViewRepository |
getViewRepository()
Convenient access to
ViewRepository bean. |
protected void |
initMetadata() |
protected void |
invokePostConstructMethods(Entity entity) |
protected volatile com.haulmont.chile.core.model.Session session
protected volatile java.util.List<java.lang.String> rootPackages
@Inject protected com.haulmont.chile.core.datatypes.DatatypeRegistry datatypeRegistry
@Inject protected ViewRepository viewRepository
@Inject protected ExtendedEntities extendedEntities
@Inject protected MetadataTools tools
@Inject protected Resources resources
@Inject protected NumberIdSource numberIdSource
@Inject protected org.springframework.context.ApplicationContext applicationContext
@Inject protected GlobalConfig config
protected com.google.common.cache.LoadingCache<java.lang.Class<?>,java.util.List<java.lang.reflect.Method>> postConstructMethodsCache
@EventListener(value=AppContextInitializedEvent.class) @Order(value=110) protected void initMetadata()
public com.haulmont.chile.core.model.Session getSession()
Metadata
getSession
in interface Metadata
public ViewRepository getViewRepository()
Metadata
ViewRepository
bean.getViewRepository
in interface Metadata
public ExtendedEntities getExtendedEntities()
Metadata
ExtendedEntities
bean.getExtendedEntities
in interface Metadata
public MetadataTools getTools()
Metadata
MetadataTools
bean.public com.haulmont.chile.core.datatypes.DatatypeRegistry getDatatypes()
Metadata
DatatypeRegistry
bean.getDatatypes
in interface Metadata
protected <T> T __create(java.lang.Class<T> entityClass)
protected void assignIdentifier(Entity entity)
protected java.lang.String getEntityNameForIdGeneration(com.haulmont.chile.core.model.MetaClass metaClass)
protected void assignUuid(Entity entity)
protected void createEmbedded(Entity entity)
protected void invokePostConstructMethods(Entity entity) throws java.lang.reflect.InvocationTargetException, java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException
java.lang.IllegalAccessException
protected java.util.List<java.lang.reflect.Method> getPostConstructMethodsNotCached(java.lang.Class<?> clazz)
public <T> T create(java.lang.Class<T> entityClass)
Metadata
public Entity create(com.haulmont.chile.core.model.MetaClass metaClass)
Metadata
public Entity create(java.lang.String entityName)
Metadata
public java.util.List<java.lang.String> getRootPackages()
getRootPackages
in interface Metadata
public com.haulmont.chile.core.model.MetaModel getModel(java.lang.String name)
getModel
in interface com.haulmont.chile.core.model.Session
public java.util.Collection<com.haulmont.chile.core.model.MetaModel> getModels()
getModels
in interface com.haulmont.chile.core.model.Session
@Nullable public com.haulmont.chile.core.model.MetaClass getClass(java.lang.String name)
getClass
in interface com.haulmont.chile.core.model.Session
public com.haulmont.chile.core.model.MetaClass getClassNN(java.lang.String name)
getClassNN
in interface com.haulmont.chile.core.model.Session
@Nullable public com.haulmont.chile.core.model.MetaClass getClass(java.lang.Class<?> clazz)
getClass
in interface com.haulmont.chile.core.model.Session
public com.haulmont.chile.core.model.MetaClass getClassNN(java.lang.Class<?> clazz)
getClassNN
in interface com.haulmont.chile.core.model.Session
public java.util.Collection<com.haulmont.chile.core.model.MetaClass> getClasses()
getClasses
in interface com.haulmont.chile.core.model.Session