@Configuration public class GemFireHttpSessionConfiguration extends AbstractGemFireHttpSessionConfiguration implements org.springframework.context.annotation.ImportAware
GemFireHttpSessionConfiguration
class is a Spring @Configuration
class
used to configure and initialize Pivotal GemFire/Apache Geode as a clustered, distributed and replicated
HttpSession
provider implementation in Spring Session
.Duration
,
DataSerializer
,
Cache
,
ExpirationAttributes
,
GemFireCache
,
Region
,
RegionAttributes
,
RegionShortcut
,
ClientCache
,
ClientRegionShortcut
,
Pool
,
PdxSerializer
,
BeanPostProcessor
,
Bean
,
Configuration
,
DependsOn
,
Import
,
ImportAware
,
AnnotationAttributes
,
AnnotationMetadata
,
CacheFactoryBean
,
GemfireOperations
,
GemfireTemplate
,
IndexFactoryBean
,
RegionAttributesFactoryBean
,
Session
,
SessionRepository
,
SpringHttpSessionConfiguration
,
GemFireOperationsSessionRepository
,
AbstractGemFireHttpSessionConfiguration
,
EnableGemFireHttpSession
,
SessionCacheTypeAwareRegionFactoryBean
,
SessionAttributesIndexFactoryBean
,
SpringSessionGemFireConfigurer
,
SessionExpirationPolicy
,
SessionExpirationTimeoutAwareBeanPostProcessor
,
SessionExpirationPolicyCustomExpiryAdapter
,
SessionSerializer
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CONFIGURER_GET_CLIENT_REGION_SHORTCUT_METHOD_NAME
|
static java.lang.String |
CONFIGURER_GET_EXPOSE_CONFIGURATION_IN_PROPERTIES_METHOD_NAME |
static java.lang.String |
CONFIGURER_GET_INDEXABLE_SESSION_ATTRIBUTES_METHOD_NAME |
static java.lang.String |
CONFIGURER_GET_MAX_INACTIVE_INTERVAL_IN_SECONDS_METHOD_NAME |
static java.lang.String |
CONFIGURER_GET_POOL_NAME_METHOD_NAME |
static java.lang.String |
CONFIGURER_GET_REGION_NAME_METHOD_NAME |
static java.lang.String |
CONFIGURER_GET_SERVER_REGION_SHORTCUT_METHOD_NAME |
static java.lang.String |
CONFIGURER_GET_SESSION_EXPIRATION_POLICY_BEAN_NAME_METHOD_NAME |
static java.lang.String |
CONFIGURER_GET_SESSION_SERIALIZER_BEAN_NAME_METHOD_NAME |
static org.apache.geode.cache.client.ClientRegionShortcut |
DEFAULT_CLIENT_REGION_SHORTCUT
Default
ClientRegionShortcut used to configure the data management policy of the ClientCache
Region that will store Session state. |
static boolean |
DEFAULT_EXPOSE_CONFIGURATION_AS_PROPERTIES
Default expose Spring Session using Apache Geode or Pivotal GemFire configuration as
Properties
in Spring's Environment . |
static java.lang.String[] |
DEFAULT_INDEXABLE_SESSION_ATTRIBUTES
Defaults names of all
Session attributes that will be indexed by Apache Geode. |
static IsDirtyPredicate |
DEFAULT_IS_DIRTY_PREDICATE
Default
IsDirtyPredicate strategy interface used to determine whether the users' application
domain objects are dirty or not. |
static int |
DEFAULT_MAX_INACTIVE_INTERVAL_IN_SECONDS
Default maximum interval in seconds in which a
Session can remain inactive before it expires. |
static java.lang.String |
DEFAULT_POOL_NAME
Name of the connection
Pool used by the client Region to send Session state
to the cluster of Apache Geode servers. |
static org.apache.geode.cache.RegionShortcut |
DEFAULT_SERVER_REGION_SHORTCUT
Default
RegionShortcut used to configure the data management policy of the Cache Region
that will store Session state. |
static java.lang.String |
DEFAULT_SESSION_EXPIRATION_POLICY_BEAN_NAME
Default name for the
SessionExpirationPolicy bean. |
static java.lang.String |
DEFAULT_SESSION_REGION_NAME
Default name of (Client)Cache
Region used to store Session state. |
static java.lang.String |
DEFAULT_SESSION_SERIALIZER_BEAN_NAME |
static boolean |
DEFAULT_USE_DATA_SERIALIZATION
Indicates whether to employ Apache Geode/Pivotal's DataSerialization framework
for
Session de/serialization. |
static java.lang.String |
SESSION_DATA_SERIALIZER_BEAN_NAME
Set of defaults for
Session serialization. |
static java.lang.String |
SESSION_PDX_SERIALIZER_BEAN_NAME |
protected static java.lang.Class<java.lang.Object> |
SESSION_REGION_KEY_CONSTRAINT
Key and Value class type constraints applied to the
Session Region . |
protected static java.lang.Class<AbstractGemFireOperationsSessionRepository.GemFireSession> |
SESSION_REGION_VALUE_CONSTRAINT |
static java.lang.String |
SESSION_SERIALIZER_BEAN_ALIAS |
protected static java.lang.String |
SPRING_SESSION_GEMFIRE_PROPERTY_SOURCE |
SPRING_SESSION_PROPERTY_PREFIX
Constructor and Description |
---|
GemFireHttpSessionConfiguration() |
Modifier and Type | Method and Description |
---|---|
org.apache.geode.cache.client.ClientRegionShortcut |
getClientRegionShortcut()
Gets the
ClientRegionShortcut used to configure the data management policy of the ClientCache
Region that will store Session state. |
java.lang.String[] |
getIndexableSessionAttributes()
Get the names of all
Session attributes that will be indexed. |
IsDirtyPredicate |
getIsDirtyPredicate()
Returns the configured
IsDirtyPredicate strategy interface bean, declared in the Spring context,
used to determine whether the users' application domain objects are dirty or not. |
int |
getMaxInactiveIntervalInSeconds()
Gets the maximum interval in seconds in which a
Session can remain inactive before it expires. |
java.lang.String |
getPoolName()
Returns the name of the
Pool used by the client Region to send Session
to the cluster of servers during cache operations. |
org.apache.geode.cache.RegionShortcut |
getServerRegionShortcut()
Gets the
RegionShortcut used to configure the data management policy of the Cache Region
that will store Session state. |
java.util.Optional<java.lang.String> |
getSessionExpirationPolicyBeanName()
Returns an
Optional name of the bean configured in the Spring application context
implementing the SessionExpirationPolicy for Session expiration. |
java.lang.String |
getSessionRegionName()
Returns the name of the (Client)Cache
Region used to store Session state. |
java.lang.String |
getSessionSerializerBeanName()
Returns the configured
bean name of the Spring bean declared in the Spring application context
defining the serialization strategy for serializing the Session . |
void |
initGemFire() |
boolean |
isExposeConfigurationAsProperties()
Determines whether the configuration for Spring Session using Apache Geode or Pivotal GemFire should be exposed
in the Spring
Environment as Properties . |
protected boolean |
isUsingDataSerialization()
Determine whether the configured serialization strategy is using Apache Geode / Pivotal GemFire's
DataSerialization framework.
|
org.springframework.data.gemfire.IndexFactoryBean |
principalNameIndex(org.apache.geode.cache.GemFireCache gemfireCache)
Defines an OQL
Index bean on the GemFireCache Region storing and managing
Sessions , specifically on the principalName property for quick lookup
of Sessions by principalName. |
SessionAttributesIndexFactoryBean |
sessionAttributesIndex(org.apache.geode.cache.GemFireCache gemfireCache)
Defines an OQL
Index bean on the GemFireCache Region storing and managing
Sessions , specifically on all Session attributes for quick lookup and queries
on Session attribute names with a given value . |
java.lang.Object |
sessionDataSerializer()
SessionSerializer bean implemented with Apache Geode/Pivotal GemFire DataSerialization framework. |
java.lang.Object |
sessionPdxSerializer()
SessionSerializer bean implemented with Apache Geode/Pivotal GemFire PDX serialization framework. |
SessionCacheTypeAwareRegionFactoryBean<java.lang.Object,org.springframework.session.Session> |
sessionRegion(org.apache.geode.cache.GemFireCache gemfireCache,
org.apache.geode.cache.RegionAttributes<java.lang.Object,org.springframework.session.Session> sessionRegionAttributes)
Defines the
Region used to store and manage Session state in either a client-server
or peer-to-peer (p2p) topology. |
org.springframework.data.gemfire.RegionAttributesFactoryBean |
sessionRegionAttributes(org.apache.geode.cache.GemFireCache gemfireCache)
Defines a
RegionAttributes used to configure and initialize the cache Region
used to store Session state. |
org.springframework.data.gemfire.GemfireTemplate |
sessionRegionTemplate(org.apache.geode.cache.GemFireCache gemfireCache)
Defines a
GemfireTemplate bean used to interact with the (Client)Cache Region
used to store Session state. |
GemFireOperationsSessionRepository |
sessionRepository(org.springframework.data.gemfire.GemfireOperations gemfireOperations)
Defines the
SessionRepository bean used to interact with Apache Geode or Pivotal GemFire
as the Spring Session provider. |
void |
setClientRegionShortcut(org.apache.geode.cache.client.ClientRegionShortcut shortcut)
Gets the
ClientRegionShortcut used to configure the data management policy of the ClientCache
Region that will store Session state. |
void |
setExposeConfigurationAsProperties(boolean exposeConfigurationAsProperties)
Sets whether to expose the configuration of Spring Session using Apache Geode or Pivotal GemFire
as
Properties in the Spring Environment . |
void |
setImportMetadata(org.springframework.core.type.AnnotationMetadata importMetadata)
Callback with the
AnnotationMetadata of the class containing @Import annotation
that imported this @Configuration class. |
void |
setIndexableSessionAttributes(java.lang.String[] indexableSessionAttributes)
Sets the names of all
Session attributes that will be indexed. |
void |
setIsDirtyPredicate(IsDirtyPredicate dirtyPredicate)
Configures the
IsDirtyPredicate strategy interface, as a bean from the Spring context, used to
determine whether the users' application domain objects are dirty or not. |
void |
setMaxInactiveIntervalInSeconds(int maxInactiveIntervalInSeconds)
Sets the maximum interval in seconds in which a
Session can remain inactive before it expires. |
void |
setPoolName(java.lang.String poolName)
Sets the name of the
Pool used by the client Region to send Session
to the cluster of servers during cache operations. |
void |
setServerRegionShortcut(org.apache.geode.cache.RegionShortcut shortcut)
Sets the
RegionShortcut used to configure the data management policy of the Cache Region
that will store Session state. |
void |
setSessionExpirationPolicyBeanName(java.lang.String sessionExpirationPolicyBeanName)
Sets the
name of the bean configured in the Spring application context implementing
the SessionExpirationPolicy for Session expiration. |
void |
setSessionRegionName(java.lang.String sessionRegionName)
Sets the name of the (Client)Cache
Region used to store Session state. |
void |
setSessionSerializerBeanName(java.lang.String sessionSerializerBeanName)
Sets the
bean name of the Spring bean declared in the Spring application context
defining the serialization strategy for serializing the Session . |
clientRegionShortcutPropertyName, exposeConfigurationAsPropertiesPropertyName, getApplicationContext, getBeanClassLoader, getBeanFactory, getEnvironment, getLogger, indexableSessionAttributesPropertyName, indexedSessionAttributesPropertyName, maxInactiveIntervalInSecondsPropertyName, poolNamePropertyName, requireProperty, resolveEnumeratedProperty, resolveProperty, resolveProperty, resolveProperty, resolveProperty, resolveProperty, resolveProperty, serverRegionShortcutPropertyName, sessionExpirationPolicyBeanNamePropertyName, sessionRegionNamePropertyName, sessionSerializerBeanNamePropertyName, setApplicationContext, setBeanClassLoader, setEnvironment
public static final boolean DEFAULT_EXPOSE_CONFIGURATION_AS_PROPERTIES
Properties
in Spring's Environment
.public static final boolean DEFAULT_USE_DATA_SERIALIZATION
Session
de/serialization.public static final int DEFAULT_MAX_INACTIVE_INTERVAL_IN_SECONDS
Session
can remain inactive before it expires.protected static final java.lang.Class<java.lang.Object> SESSION_REGION_KEY_CONSTRAINT
Session
Region
.protected static final java.lang.Class<AbstractGemFireOperationsSessionRepository.GemFireSession> SESSION_REGION_VALUE_CONSTRAINT
public static final org.apache.geode.cache.client.ClientRegionShortcut DEFAULT_CLIENT_REGION_SHORTCUT
ClientRegionShortcut
used to configure the data management policy of the ClientCache
Region
that will store Session
state.public static final IsDirtyPredicate DEFAULT_IS_DIRTY_PREDICATE
IsDirtyPredicate
strategy interface used to determine whether the users' application
domain objects are dirty or not.public static final org.apache.geode.cache.RegionShortcut DEFAULT_SERVER_REGION_SHORTCUT
RegionShortcut
used to configure the data management policy of the Cache
Region
that will store Session
state.public static final java.lang.String CONFIGURER_GET_CLIENT_REGION_SHORTCUT_METHOD_NAME
public static final java.lang.String CONFIGURER_GET_EXPOSE_CONFIGURATION_IN_PROPERTIES_METHOD_NAME
public static final java.lang.String CONFIGURER_GET_INDEXABLE_SESSION_ATTRIBUTES_METHOD_NAME
public static final java.lang.String CONFIGURER_GET_MAX_INACTIVE_INTERVAL_IN_SECONDS_METHOD_NAME
public static final java.lang.String CONFIGURER_GET_POOL_NAME_METHOD_NAME
public static final java.lang.String CONFIGURER_GET_REGION_NAME_METHOD_NAME
public static final java.lang.String CONFIGURER_GET_SERVER_REGION_SHORTCUT_METHOD_NAME
public static final java.lang.String CONFIGURER_GET_SESSION_EXPIRATION_POLICY_BEAN_NAME_METHOD_NAME
public static final java.lang.String CONFIGURER_GET_SESSION_SERIALIZER_BEAN_NAME_METHOD_NAME
public static final java.lang.String DEFAULT_POOL_NAME
Pool
used by the client Region
to send Session
state
to the cluster of Apache Geode servers.public static final java.lang.String DEFAULT_SESSION_EXPIRATION_POLICY_BEAN_NAME
SessionExpirationPolicy
bean.public static final java.lang.String DEFAULT_SESSION_REGION_NAME
Region
used to store Session
state.public static final java.lang.String SESSION_DATA_SERIALIZER_BEAN_NAME
Session
serialization.public static final java.lang.String SESSION_PDX_SERIALIZER_BEAN_NAME
public static final java.lang.String SESSION_SERIALIZER_BEAN_ALIAS
public static final java.lang.String DEFAULT_SESSION_SERIALIZER_BEAN_NAME
protected static final java.lang.String SPRING_SESSION_GEMFIRE_PROPERTY_SOURCE
public static final java.lang.String[] DEFAULT_INDEXABLE_SESSION_ATTRIBUTES
Session
attributes that will be indexed by Apache Geode.public void setClientRegionShortcut(org.apache.geode.cache.client.ClientRegionShortcut shortcut)
ClientRegionShortcut
used to configure the data management policy of the ClientCache
Region
that will store Session
state.
Defaults to ClientRegionShortcut.PROXY
.shortcut
- ClientRegionShortcut
used to configure the data management policy
of the ClientCache
Region
.EnableGemFireHttpSession.clientRegionShortcut()
,
ClientRegionShortcut
public org.apache.geode.cache.client.ClientRegionShortcut getClientRegionShortcut()
ClientRegionShortcut
used to configure the data management policy of the ClientCache
Region
that will store Session
state.
Defaults to ClientRegionShortcut.PROXY
.ClientRegionShortcut
used to configure the data management policy
of the ClientCache
Region
.ClientRegionShortcut
public void setExposeConfigurationAsProperties(boolean exposeConfigurationAsProperties)
Properties
in the Spring Environment
.exposeConfigurationAsProperties
- boolean indicating whether to expose the configuration
of Spring Session using Apache Geode or Pivotal GemFire as Properties
in the Spring Environment
.EnableGemFireHttpSession.exposeConfigurationAsProperties()
public boolean isExposeConfigurationAsProperties()
Environment
as Properties
.
Currently, users may configure Spring Session for Apache Geode or Pivotal GemFire using attributes on this
Annotation
, using the well-known and documented Properties
(e.g. spring.session.data.gemfire.session.expiration.max-inactive-interval-seconds)
or using the SpringSessionGemFireConfigurer
declared as a bean in the Spring application context.
The Properties
that are exposed will use the well-known property names
that are documented
in this Annotation's
attributes.
The values of the resulting Properties
follows the precedence as outlined in the documentation:
first any SpringSessionGemFireConfigurer
bean defined takes precedence, followed by explicit
Properties
declared in Spring Boot application.properties and finally, this
Annotation's
attribute values.
Defaults to false.
Use spring.session.data.gemfire.session.configuration.expose in Spring Boot
application.properties.Environment
as Properties
.public void setIndexableSessionAttributes(java.lang.String[] indexableSessionAttributes)
Session
attributes that will be indexed.indexableSessionAttributes
- an array of Strings
containing the names
of all Session
attributes for which an Index will be created.EnableGemFireHttpSession.indexableSessionAttributes()
public java.lang.String[] getIndexableSessionAttributes()
Session
attributes that will be indexed.Strings
containing the names of all Session
attributes
for which an Index will be created. Defaults to an empty array if unspecified.@Autowired(required=false) public void setIsDirtyPredicate(IsDirtyPredicate dirtyPredicate)
IsDirtyPredicate
strategy interface, as a bean from the Spring context, used to
determine whether the users' application domain objects are dirty or not.dirtyPredicate
- IsDirtyPredicate
strategy interface bean used to determine whether
the users' application domain objects are dirty or not.IsDirtyPredicate
public IsDirtyPredicate getIsDirtyPredicate()
IsDirtyPredicate
strategy interface bean, declared in the Spring context,
used to determine whether the users' application domain objects are dirty or not.
Defaults to DEFAULT_IS_DIRTY_PREDICATE
.IsDirtyPredicate
strategy interface bean used to determine whether
the users' application domain objects are dirty or not.IsDirtyPredicate
public void setMaxInactiveIntervalInSeconds(int maxInactiveIntervalInSeconds)
Session
can remain inactive before it expires.maxInactiveIntervalInSeconds
- integer value specifying the maximum interval in seconds
that a Session
can remain inactive before it expires.EnableGemFireHttpSession.maxInactiveIntervalInSeconds()
public int getMaxInactiveIntervalInSeconds()
Session
can remain inactive before it expires.Session
can remain inactive
before it expires.public void setPoolName(java.lang.String poolName)
Pool
used by the client Region
to send Session
to the cluster of servers during cache operations.poolName
- String
containing the name of a Pool
.EnableGemFireHttpSession.poolName()
public java.lang.String getPoolName()
Pool
used by the client Region
to send Session
to the cluster of servers during cache operations.String
containing the name of a Pool
.Pool.getName()
public void setServerRegionShortcut(org.apache.geode.cache.RegionShortcut shortcut)
RegionShortcut
used to configure the data management policy of the Cache
Region
that will store Session
state.
Defaults to RegionShortcut.PARTITION
.shortcut
- RegionShortcut
used to configure the data management policy
of the Cache
Region
.EnableGemFireHttpSession.serverRegionShortcut()
,
RegionShortcut
public org.apache.geode.cache.RegionShortcut getServerRegionShortcut()
RegionShortcut
used to configure the data management policy of the Cache
Region
that will store Session
state.
Defaults to RegionShortcut.PARTITION
.RegionShortcut
used to configure the data management policy
of the Cache
Region
.RegionShortcut
public void setSessionExpirationPolicyBeanName(java.lang.String sessionExpirationPolicyBeanName)
name
of the bean configured in the Spring application context implementing
the SessionExpirationPolicy
for Session
expiration.sessionExpirationPolicyBeanName
- String
containing the name of the bean configured in
the Spring application context implementing the SessionExpirationPolicy
for Session
expiration.public java.util.Optional<java.lang.String> getSessionExpirationPolicyBeanName()
Optional
name
of the bean configured in the Spring application context
implementing the SessionExpirationPolicy
for Session
expiration.Optional
name
of the bean configured in the Spring application context
implementing the SessionExpirationPolicy
for Session
expiration.public void setSessionRegionName(java.lang.String sessionRegionName)
Region
used to store Session
state.sessionRegionName
- String
specifying the name of the (Client)Cache Region
used to store Session
state.EnableGemFireHttpSession.regionName()
public java.lang.String getSessionRegionName()
Region
used to store Session
state.String
specifying the name of the (Client)Cache Region
used to store Session
state.Region.getName()
public void setSessionSerializerBeanName(java.lang.String sessionSerializerBeanName)
bean name
of the Spring bean declared in the Spring application context
defining the serialization strategy for serializing the Session
.
The serialization strategy and bean referred to by its name must be an implementation of
SessionSerializer
.
Defaults to SessionDataSerializer.sessionSerializerBeanName
- bean name
of the SessionSerializer
used to
serialize the Session
.DataSerializableSessionSerializer
,
SessionSerializer
public java.lang.String getSessionSerializerBeanName()
bean name
of the Spring bean declared in the Spring application context
defining the serialization strategy for serializing the Session
.
The serialization strategy and bean referred to by its name must be an implementation of
SessionSerializer
.
Defaults to SessionDataSerializer.bean name
of the SessionSerializer
used to serialize the Session
.DataSerializableSessionSerializer
,
SessionSerializer
protected boolean isUsingDataSerialization()
getSessionSerializerBeanName()
public void setImportMetadata(org.springframework.core.type.AnnotationMetadata importMetadata)
AnnotationMetadata
of the class containing @Import
annotation
that imported this @Configuration
class.
The @Configuration
class should also be annotated with EnableGemFireHttpSession
.setImportMetadata
in interface org.springframework.context.annotation.ImportAware
importMetadata
- AnnotationMetadata
of the application class importing
this Configuration
class.AnnotationMetadata
,
applySpringSessionGemFireConfigurer()
,
exposeSpringSessionGemFireConfiguration()
@PostConstruct public void initGemFire()
@Bean(value="SessionDataSerializer") public java.lang.Object sessionDataSerializer()
SessionSerializer
bean implemented with Apache Geode/Pivotal GemFire DataSerialization framework.SessionSerializer
implementation.DataSerializableSessionSerializer
,
SessionSerializer
@Bean(value="SessionPdxSerializer") public java.lang.Object sessionPdxSerializer()
SessionSerializer
bean implemented with Apache Geode/Pivotal GemFire PDX serialization framework.SessionSerializer
implementation.PdxSerializableSessionSerializer
,
SessionSerializer
@Bean(name="ClusteredSpringSessions") public SessionCacheTypeAwareRegionFactoryBean<java.lang.Object,org.springframework.session.Session> sessionRegion(org.apache.geode.cache.GemFireCache gemfireCache, @Qualifier(value="sessionRegionAttributes") org.apache.geode.cache.RegionAttributes<java.lang.Object,org.springframework.session.Session> sessionRegionAttributes)
Region
used to store and manage Session
state in either a client-server
or peer-to-peer (p2p) topology.gemfireCache
- reference to the GemFireCache
.sessionRegionAttributes
- RegionAttributes
used to configure the Region
.SessionCacheTypeAwareRegionFactoryBean
used to configure and initialize
the cache Region
used to store and manage Session
state.GemFireCache
,
RegionAttributes
,
getClientRegionShortcut()
,
getPoolName()
,
getServerRegionShortcut()
,
getSessionRegionName()
@Bean public org.springframework.data.gemfire.RegionAttributesFactoryBean sessionRegionAttributes(org.apache.geode.cache.GemFireCache gemfireCache)
RegionAttributes
used to configure and initialize the cache Region
used to store Session
state.
Expiration is also configured for the Region
on the basis that the cache Region
is a not a proxy on either the client or server.gemfireCache
- reference to the GemFireCache
.RegionAttributes
used to configure and initialize cache Region
used to store and manage Session
state.RegionAttributesFactoryBean
,
GemFireCache
,
PartitionAttributes
,
isExpirationAllowed(GemFireCache)
@Bean @DependsOn(value="ClusteredSpringSessions") public org.springframework.data.gemfire.GemfireTemplate sessionRegionTemplate(org.apache.geode.cache.GemFireCache gemfireCache)
GemfireTemplate
bean used to interact with the (Client)Cache Region
used to store Session
state.gemfireCache
- reference to the single GemFireCache
instance used by the GemfireTemplate
to perform cache Region
data access operations.GemfireTemplate
used to interact with the (Client)Cache Region
used to store Session
state.GemfireTemplate
,
GemFireCache
,
Region
,
getSessionRegionName()
@Bean public GemFireOperationsSessionRepository sessionRepository(@Qualifier(value="sessionRegionTemplate") org.springframework.data.gemfire.GemfireOperations gemfireOperations)
SessionRepository
bean used to interact with Apache Geode or Pivotal GemFire
as the Spring Session provider.gemfireOperations
- instance of GemfireOperations
used to manage Session
state
in Apache Geode or Pivotal GemFire.GemFireOperationsSessionRepository
for managing (clustering/replicating) Session
state
in Apache Geode or Pivotal GemFire.GemFireOperationsSessionRepository
,
GemfireOperations
@Bean @DependsOn(value="ClusteredSpringSessions") @Profile(value="!disable-spring-session-data-gemfire-indexes") public org.springframework.data.gemfire.IndexFactoryBean principalNameIndex(org.apache.geode.cache.GemFireCache gemfireCache)
Index
bean on the GemFireCache
Region
storing and managing
Sessions
, specifically on the principalName property for quick lookup
of Sessions
by principalName.gemfireCache
- reference to the GemFireCache
.IndexFactoryBean
to create an OQL Index
on the principalName property
for Sessions
stored in the GemFireCache
Region
.IndexFactoryBean
,
GemFireCache
@Bean @DependsOn(value="ClusteredSpringSessions") @Profile(value="!disable-spring-session-data-gemfire-indexes") public SessionAttributesIndexFactoryBean sessionAttributesIndex(org.apache.geode.cache.GemFireCache gemfireCache)
Index
bean on the GemFireCache
Region
storing and managing
Sessions
, specifically on all Session
attributes for quick lookup and queries
on Session
attribute names
with a given value
.gemfireCache
- reference to the GemFireCache
.IndexFactoryBean
to create an OQL Index
on attributes of Sessions
stored in the GemFireCache
Region
.IndexFactoryBean
,
GemFireCache