Class IndexConfiguration
java.lang.Object
org.springframework.data.gemfire.config.annotation.support.AbstractAnnotationConfigSupport
org.springframework.data.gemfire.config.annotation.EntityDefinedRegionsConfiguration
org.springframework.data.gemfire.config.annotation.IndexConfiguration
- All Implemented Interfaces:
org.springframework.beans.factory.Aware
,org.springframework.beans.factory.BeanClassLoaderAware
,org.springframework.beans.factory.BeanFactoryAware
,org.springframework.context.annotation.ImportBeanDefinitionRegistrar
,org.springframework.context.EnvironmentAware
The
IndexConfiguration
class is a Spring ImportBeanDefinitionRegistrar
and extension of EntityDefinedRegionsConfiguration
used in the EnableIndexing
annotation
to dynamically create GemFire/Geode Region
Indexes
based on
GemfirePersistentEntity
GemfirePersistentProperty
annotations.- Since:
- 1.9.0
- See Also:
-
Annotation
Region
Index
BeanDefinitionBuilder
BeanDefinitionRegistry
AnnotationMetadata
Id
IndexFactoryBean
IndexType
EnableIndexing
EntityDefinedRegionsConfiguration
GemfirePersistentEntity
GemfirePersistentProperty
Indexed
-
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.data.gemfire.config.annotation.EntityDefinedRegionsConfiguration
EntityDefinedRegionsConfiguration.RegionBeanDefinitionMetadata
Nested classes/interfaces inherited from class org.springframework.data.gemfire.config.annotation.support.AbstractAnnotationConfigSupport
AbstractAnnotationConfigSupport.TypeResolver<T>
-
Field Summary
Fields inherited from class org.springframework.data.gemfire.config.annotation.EntityDefinedRegionsConfiguration
DEFAULT_CLIENT_REGION_SHORTCUT, DEFAULT_SERVER_REGION_SHORTCUT
Fields inherited from class org.springframework.data.gemfire.config.annotation.support.AbstractAnnotationConfigSupport
CURRENT_THREAD_CONTEXT_CLASS_LOADER, INFRASTRUCTURE_ROLES, ORG_SPRINGFRAMEWORK_DATA_GEMFIRE_PACKAGE, ORG_SPRINGFRAMEWORK_PACKAGE, SPRING_DATA_GEMFIRE_PROPERTY_PREFIX
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected Class<? extends Annotation>
Returns theAnnotation
type
that configures and createsRegion
Indexes from application persistent entity properties.protected String
Returns the name of theAnnotation
type
that configures and createsRegion
Indexes from application persistent entity properties.protected String
Returns the simple name of theAnnotation
type
that configures and createsRegion
Indexes from application persistent entity properties.protected GemfirePersistentEntity<?>
postProcess
(org.springframework.core.type.AnnotationMetadata importingClassMetadata, org.springframework.beans.factory.support.BeanDefinitionRegistry registry, GemfirePersistentEntity<?> persistentEntity) Performs addition post processing on theGemfirePersistentEntity
to offer additional feature support (e.g.protected void
registerIndexBeanDefinition
(org.springframework.core.annotation.AnnotationAttributes enableIndexingAttributes, GemfirePersistentEntity<?> persistentEntity, GemfirePersistentProperty persistentProperty, IndexType indexType, Annotation indexAnnotation, org.springframework.beans.factory.support.BeanDefinitionRegistry registry) Registers an Index of the givenIndexType
for theGemfirePersistentProperty
on theGemfirePersistentEntity
using theAnnotation
meta-data to define the Index.Methods inherited from class org.springframework.data.gemfire.config.annotation.EntityDefinedRegionsConfiguration
getAnnotationType, getPersistentEntity, newGemFireComponentClassTypeScanner, registerBeanDefinitions, registerRegionBeanDefinition, resolveBasePackages, resolveClientRegionShortcut, resolveExcludes, resolveIncludes, resolveMappingContext, resolveRegionAnnotatedPersistentEntityTypeFilters, resolveRegionConfigurers, resolveServerRegionShortcut, setClientRegionAttributes, setFixedPartitionRegionAttributes, setPartitionRegionAttributes, setRegionAttributes, setReplicateRegionAttributes
Methods inherited from class org.springframework.data.gemfire.config.annotation.support.AbstractAnnotationConfigSupport
arrayOfPropertyNamesFor, arrayOfPropertyNamesFor, asArrayProperty, cacheClientProperty, cacheCompressionProperty, cacheOffHeapProperty, cachePeerProperty, cacheProperty, cacheServerProperty, clusterProperty, diskStoreProperty, entitiesProperty, gatewayReceiverProperty, gatewaySenderProperty, getAnnotationAttributes, getAnnotationAttributes, getAnnotationAttributes, getAnnotationTypeName, getAnnotationTypeSimpleName, getBeanClassLoader, getBeanFactory, getEnvironment, getEvaluationContext, getLogger, hasValue, hasValue, hasValue, httpServiceProperty, isAnnotationPresent, isAnnotationPresent, isNotInfrastructureBean, isNotInfrastructureBean, isNotInfrastructureClass, isNotInfrastructureRole, isUserLevelMethod, locatorProperty, logDebug, logDebug, logError, logError, loggingProperty, logInfo, logInfo, logWarning, logWarning, managementProperty, managerProperty, memcachedServiceProperty, namedCacheServerProperty, namedDiskStoreProperty, namedGatewaySenderProperty, namedPoolProperty, newEvaluationContext, newLogger, pdxProperty, poolProperty, propertyName, register, register, requireProperty, resolveAnnotation, resolveBeanClass, resolveBeanClass, resolveBeanClass, resolveBeanClassLoader, resolveBeanClassLoader, resolveBeanClassLoader, resolveBeanClassName, resolveProperty, resolveProperty, resolveProperty, resolveProperty, resolveProperty, resolveProperty, resolveProperty, resolveProperty, safeResolveType, securityProperty, serviceProperty, setBeanClassLoader, setBeanFactory, setEnvironment, sslProperty, statsProperty
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.springframework.context.annotation.ImportBeanDefinitionRegistrar
registerBeanDefinitions
-
Constructor Details
-
IndexConfiguration
public IndexConfiguration()
-
-
Method Details
-
getEnableIndexingAnnotationType
Returns theAnnotation
type
that configures and createsRegion
Indexes from application persistent entity properties.- Returns:
- the
Annotation
type
that configures and createsRegion
Indexes from application persistent entity properties. - See Also:
-
getEnableIndexingAnnotationTypeName
Returns the name of theAnnotation
type
that configures and createsRegion
Indexes from application persistent entity properties.- Returns:
- the name of the
Annotation
type
that configures and createsRegion
Indexes from application persistent entity properties. - See Also:
-
getEnableIndexingAnnotationTypeSimpleName
Returns the simple name of theAnnotation
type
that configures and createsRegion
Indexes from application persistent entity properties.- Returns:
- the simple name of the
Annotation
type
that configures and createsRegion
Indexes from application persistent entity properties. - See Also:
-
postProcess
protected GemfirePersistentEntity<?> postProcess(org.springframework.core.type.AnnotationMetadata importingClassMetadata, org.springframework.beans.factory.support.BeanDefinitionRegistry registry, GemfirePersistentEntity<?> persistentEntity) Description copied from class:EntityDefinedRegionsConfiguration
Performs addition post processing on theGemfirePersistentEntity
to offer additional feature support (e.g. dynamic Index creation).- Overrides:
postProcess
in classEntityDefinedRegionsConfiguration
- Parameters:
importingClassMetadata
-AnnotationMetadata
for the importing application class.registry
-BeanDefinitionRegistry
used to register Spring bean definitions.persistentEntity
-GemfirePersistentEntity
to process.- Returns:
- the given
GemfirePersistentEntity
. - See Also:
-
BeanDefinitionRegistry
AnnotationMetadata
GemfirePersistentEntity
-
registerIndexBeanDefinition
protected void registerIndexBeanDefinition(org.springframework.core.annotation.AnnotationAttributes enableIndexingAttributes, GemfirePersistentEntity<?> persistentEntity, GemfirePersistentProperty persistentProperty, IndexType indexType, Annotation indexAnnotation, org.springframework.beans.factory.support.BeanDefinitionRegistry registry) Registers an Index of the givenIndexType
for theGemfirePersistentProperty
on theGemfirePersistentEntity
using theAnnotation
meta-data to define the Index.- Parameters:
enableIndexingAttributes
-AnnotationAttributes
containing meta-data for theEnableIndexing
annotation.persistentEntity
-GemfirePersistentEntity
containing theGemfirePersistentProperty
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
- IndexAnnotation
.registry
-BeanDefinitionRegistry
used to register the Index bean definition.- See Also:
-
Annotation
BeanDefinitionBuilder
BeanDefinitionRegistry
IndexType
GemfirePersistentEntity
GemfirePersistentProperty
-