java.lang.Object
io.ebeaninternal.server.deploy.BeanDescriptorManager
- All Implemented Interfaces:
SpiBeanTypeManager,BeanDescriptorMap
public final class BeanDescriptorManager
extends Object
implements BeanDescriptorMap, SpiBeanTypeManager
Creates BeanDescriptors.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionCreate for a given database dbConfig. -
Method Summary
Modifier and TypeMethodDescription<T> BeanManager<T> beanManager(Class<T> entityType) Return the bean type for the given entity class.Return the BeanDescriptors mapped to the table.Return the Cache Manager.voidcacheNotify(TransactionEventTable.TableIUD tableIUD, CacheChangeSet changeSet) For SQL based modifications we need to invalidate appropriate parts of the cache.Return the changeLogListener (that actually does the logging).Return the changeLogPrepare (for setting user context into the ChangeSet in the foreground thread).config()Return the DatabaseConfig.createCollectionBeanTable(String fullTableName, Class<?> targetType) Return a BeanTable for an ElementCollection.<A> DeployBeanDescriptor<A> createDeployDescriptor(Class<A> targetType) Create a DeployBeanDescriptor for an ElementCollection target.<A> BeanDescriptor<A> createElementDescriptor(DeployBeanDescriptor<A> elementDescriptor, ManyType manyType, boolean scalar) Create a BeanDescriptor for an ElementCollection target.createIdBinder(BeanProperty idProperty) Create a IdBinder for this bean property.<A> voidcreateUnidirectional(DeployBeanDescriptor<?> targetDesc, Class<A> targetType, BeanTable beanTable, DeployTableJoin oneToManyJoin) Create and add a Unidirectional property (for ElementCollection) which maps to the foreign key.deploy()Deploy returning the asOfTableMap (which is required by the SQL builders).<T> io.ebeaninternal.server.deploy.parse.DeployBeanInfo<T> Return the bean deploy info for the given class.<T> BeanDescriptor<T> descriptor(Class<T> entityType) Return the BeanDescriptor for a given class.<T> BeanDescriptor<T> descriptorByClassName(String entityClassName) List<BeanDescriptor<?>> Return an immutable list of all the BeanDescriptors.List<BeanDescriptor<?>> descriptors(String tableName) Return the BeanDescriptors mapped to the table.encryptKey(String tableName, String columnName) Return the Encrypt key given the table and column name.booleanReturn true if Jackson core is present on the classpath.booleanReturn true if multiple values can be bound as Array or Table Value and hence share the same query plan.booleanisTableManaged(String tableName) Returns true, if the given table (or view) is managed by ebean (= an entity exists)name()Return the name of the server/database.Return the naming convention.voidprocessViewInvalidation(Set<String> viewInvalidation) Invalidate entity beans based on views via their dependent tables.queryPlanInit(QueryPlanInit request) booleanReturn true if there are 'view based entities' using l2 query caching and so need to be invalidated based on changes to dependent tables.ScalarType<?> scalarType(int jdbcType) Return the scalarType for the given JDBC type.ScalarType<?> scalarType(String cast) Return the scalarType for the given logical type.voidRun periodic trim of query plans.voidsetEbeanServer(SpiEbeanServer internalEbean) Set the internal EbeanServer instance to all BeanDescriptors.voidvisitMetrics(MetricVisitor visitor)
-
Field Details
-
JAVA_LANG_RECORD
- See Also:
-
-
Constructor Details
-
BeanDescriptorManager
Create for a given database dbConfig.
-
-
Method Details
-
isJacksonCorePresent
public boolean isJacksonCorePresent()Description copied from interface:BeanDescriptorMapReturn true if Jackson core is present on the classpath.- Specified by:
isJacksonCorePresentin interfaceBeanDescriptorMap
-
scheduleBackgroundTrim
public void scheduleBackgroundTrim()Run periodic trim of query plans. -
scalarType
Description copied from interface:BeanDescriptorMapReturn the scalarType for the given logical type.- Specified by:
scalarTypein interfaceBeanDescriptorMap
-
scalarType
Description copied from interface:BeanDescriptorMapReturn the scalarType for the given JDBC type.- Specified by:
scalarTypein interfaceBeanDescriptorMap
-
isMultiValueSupported
public boolean isMultiValueSupported()Description copied from interface:BeanDescriptorMapReturn true if multiple values can be bound as Array or Table Value and hence share the same query plan.- Specified by:
isMultiValueSupportedin interfaceBeanDescriptorMap
-
config
Description copied from interface:BeanDescriptorMapReturn the DatabaseConfig.- Specified by:
configin interfaceBeanDescriptorMap
-
beanType
Description copied from interface:SpiBeanTypeManagerReturn the bean type for the given entity class.- Specified by:
beanTypein interfaceSpiBeanTypeManager
-
descriptor
Description copied from interface:BeanDescriptorMapReturn the BeanDescriptor for a given class.- Specified by:
descriptorin interfaceBeanDescriptorMap
-
descriptorByClassName
-
name
Description copied from interface:BeanDescriptorMapReturn the name of the server/database.- Specified by:
namein interfaceBeanDescriptorMap
-
cacheManager
Description copied from interface:BeanDescriptorMapReturn the Cache Manager.- Specified by:
cacheManagerin interfaceBeanDescriptorMap
-
namingConvention
Description copied from interface:BeanDescriptorMapReturn the naming convention.- Specified by:
namingConventionin interfaceBeanDescriptorMap
-
setEbeanServer
Set the internal EbeanServer instance to all BeanDescriptors. -
createIdBinder
Description copied from interface:BeanDescriptorMapCreate a IdBinder for this bean property.- Specified by:
createIdBinderin interfaceBeanDescriptorMap
-
deploy
Deploy returning the asOfTableMap (which is required by the SQL builders). -
encryptKey
Return the Encrypt key given the table and column name.- Specified by:
encryptKeyin interfaceBeanDescriptorMap
-
cacheNotify
For SQL based modifications we need to invalidate appropriate parts of the cache. -
descriptors
Return the BeanDescriptors mapped to the table. -
beanTypes
Return the BeanDescriptors mapped to the table. -
isTableManaged
Description copied from interface:BeanDescriptorMapReturns true, if the given table (or view) is managed by ebean (= an entity exists)- Specified by:
isTableManagedin interfaceBeanDescriptorMap
-
processViewInvalidation
Invalidate entity beans based on views via their dependent tables. -
requiresViewEntityCacheInvalidation
public boolean requiresViewEntityCacheInvalidation()Return true if there are 'view based entities' using l2 query caching and so need to be invalidated based on changes to dependent tables. -
descriptorList
Return an immutable list of all the BeanDescriptors. -
beanTable
-
createCollectionBeanTable
Return a BeanTable for an ElementCollection. -
beanManager
-
deploy
Return the bean deploy info for the given class. -
createUnidirectional
public <A> void createUnidirectional(DeployBeanDescriptor<?> targetDesc, Class<A> targetType, BeanTable beanTable, DeployTableJoin oneToManyJoin) Create and add a Unidirectional property (for ElementCollection) which maps to the foreign key. -
changeLogPrepare
Return the changeLogPrepare (for setting user context into the ChangeSet in the foreground thread). -
changeLogListener
Return the changeLogListener (that actually does the logging). -
createDeployDescriptor
Create a DeployBeanDescriptor for an ElementCollection target. -
createElementDescriptor
public <A> BeanDescriptor<A> createElementDescriptor(DeployBeanDescriptor<A> elementDescriptor, ManyType manyType, boolean scalar) Create a BeanDescriptor for an ElementCollection target. -
visitMetrics
-
queryPlanInit
-
bindMaxLength
-