public class IndexConfiguration extends EntityDefinedRegionsConfiguration
IndexConfiguration
class is a Spring ImportBeanDefinitionRegistrar
and extension of EntityDefinedRegionsConfiguration
used in the EnableIndexes
annotation
to dynamically create GemFire/Geode Region
Indexes based on
GemfirePersistentEntity
GemfirePersistentProperty
annotations.Annotation
,
BeanDefinitionBuilder
,
BeanDefinitionRegistry
,
Id
,
IndexFactoryBean
,
IndexType
,
EntityDefinedRegionsConfiguration
,
GemfirePersistentEntity
,
GemfirePersistentProperty
,
Indexed
,
Region
,
Index
DEFAULT_REGION_FACTORY_BEAN_CLASS, regionAnnotationToRegionFactoryBeanClass
Constructor and Description |
---|
IndexConfiguration() |
Modifier and Type | Method and Description |
---|---|
protected Class<? extends Annotation> |
getEnableIndexesAnnotationType()
Returns the
Annotation type that configures and creates Region Indexes
from application persistent entity properties. |
protected String |
getEnableIndexesAnnotationTypeName()
Returns the name of the
Annotation type that configures and creates Region Indexes
from application persistent entity properties. |
protected String |
getEnableIndexesAnnotationTypeSimpleName()
Returns the simple name of the
Annotation type that configures and creates Region
Indexes from application persistent entity properties. |
protected GemfirePersistentEntity<?> |
postProcess(AnnotationMetadata importingClassMetadata,
BeanDefinitionRegistry registry,
GemfirePersistentEntity<?> persistentEntity)
Performs addition post processing on the
GemfirePersistentEntity to offer additional feature support
(e.g. dynamic Index creation). |
protected void |
registerIndexBeanDefinition(AnnotationAttributes enableIndexesAttributes,
GemfirePersistentEntity<?> persistentEntity,
GemfirePersistentProperty persistentProperty,
IndexType indexType,
Annotation indexAnnotation,
BeanDefinitionRegistry registry)
Registers an Index of the given
IndexType for the GemfirePersistentProperty
on the GemfirePersistentEntity using the Annotation meta-data to define the Index. |
getAnnotationAttributes, getAnnotationAttributes, getAnnotationType, getAnnotationTypeName, getAnnotationTypeSimpleName, getBeanClassLoader, getBeanFactory, getPersistentEntity, isAnnotationPresent, isAnnotationPresent, newGemFireComponentClassTypeScanner, regionAnnotatedPersistentEntityTypeFilters, registerBeanDefinitions, registerRegionBeanDefinition, resolveBasePackages, resolveBeanClassLoader, resolveDomainType, resolveExcludes, resolveIdType, resolveIncludes, resolveMappingContext, resolveRegionAttributesFactoryBeanBuilder, resolveRegionFactoryBeanClass, setBeanClassLoader, setBeanFactory, setClientRegionAttributes, setFixedPartitionRegionAttributes, setPartitionRegionAttributes, setRegionAttributes, setReplicateRegionAttributes
protected Class<? extends Annotation> getEnableIndexesAnnotationType()
Annotation
type
that configures and creates Region
Indexes
from application persistent entity properties.Annotation
type
that configures and creates Region
Indexes
from application persistent entity properties.EnableIndexes
,
Annotation
,
Class
protected String getEnableIndexesAnnotationTypeName()
Annotation
type
that configures and creates Region
Indexes
from application persistent entity properties.Annotation
type
that configures and creates Region
Indexes from application persistent entity properties.getEnableIndexesAnnotationType()
,
Class.getName()
protected String getEnableIndexesAnnotationTypeSimpleName()
Annotation
type
that configures and creates Region
Indexes from application persistent entity properties.Annotation
type
that configures and creates
Region
Indexes from application persistent entity properties.getEnableIndexesAnnotationType()
,
Class.getSimpleName()
protected GemfirePersistentEntity<?> postProcess(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry, GemfirePersistentEntity<?> persistentEntity)
EntityDefinedRegionsConfiguration
GemfirePersistentEntity
to offer additional feature support
(e.g. dynamic Index creation).postProcess
in class EntityDefinedRegionsConfiguration
importingClassMetadata
- AnnotationMetadata
for the importing application class.registry
- BeanDefinitionRegistry
used to register Spring bean definitions.persistentEntity
- GemfirePersistentEntity
to process.GemfirePersistentEntity
.BeanDefinitionRegistry
,
AnnotationMetadata
,
GemfirePersistentEntity
protected void registerIndexBeanDefinition(AnnotationAttributes enableIndexesAttributes, GemfirePersistentEntity<?> persistentEntity, GemfirePersistentProperty persistentProperty, IndexType indexType, Annotation indexAnnotation, BeanDefinitionRegistry registry)
IndexType
for the GemfirePersistentProperty
on the GemfirePersistentEntity
using the Annotation
meta-data to define the Index.enableIndexesAttributes
- AnnotationAttributes
containing meta-data
for the EnableIndexes
annotation.persistentEntity
- GemfirePersistentEntity
containing the GemfirePersistentProperty
to be indexed.persistentProperty
- GemfirePersistentProperty
for which the Index will be created.indexType
- IndexType
enum specifying the Index type (e.g. KEY, HASH, etc).indexAnnotation
- Index Annotation
.registry
- BeanDefinitionRegistry
used to register the Index bean definition.Annotation
,
BeanDefinitionBuilder
,
BeanDefinitionRegistry
,
IndexType
,
GemfirePersistentEntity
,
GemfirePersistentProperty
Copyright © 2011–2019 Pivotal Software, Inc.. All rights reserved.