Interface SpringSessionGemFireConfigurer


public interface SpringSessionGemFireConfigurer
The SpringSessionGemFireConfigurer interface defines a contract for programmatically controlling the configuration of either Apache Geode or Pivotal GemFire as a (HTTP) Session state management provider in Spring Session.
Since:
1.0.0
See Also:
  • Method Details

    • getClientRegionShortcut

      default org.apache.geode.cache.client.ClientRegionShortcut getClientRegionShortcut()
      Defines the ClientCache Region data management policy. Defaults to ClientRegionShortcut.PROXY.
      Returns:
      a ClientRegionShortcut used to configure the ClientCache Region data management policy.
      See Also:
    • getExposeConfigurationAsProperties

      default boolean getExposeConfigurationAsProperties()
      Determines whether the configuration for Spring Session using Apache Geode or Pivotal GemFire should be exposed in the Spring 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.
      Returns:
      a boolean value indicating whether to expose the configuration of Spring Session using Apache Geode or Pivotal GemFire in the Spring Environment as Properties.
    • getIndexableSessionAttributes

      default String[] getIndexableSessionAttributes()
      Identifies the Session attributes by name that will be indexed for query operations. For instance, find all Sessions in Apache Geode or Pivotal GemFire having attribute A defined with value X. Defaults to empty String array.
      Returns:
      an array of Strings identifying the names of Session attributes to index.
      See Also:
    • getMaxInactiveIntervalInSeconds

      default int getMaxInactiveIntervalInSeconds()
      Defines the maximum interval in seconds that a Session can remain inactive before it expires. Defaults to 1800 seconds, or 30 minutes.
      Returns:
      an integer value defining the maximum inactive interval in seconds before the Session expires.
      See Also:
    • getPoolName

      default String getPoolName()
      Specifies the name of the specific Pool used by the ClientCache Region (i.e. ClusteredSpringSessions) when performing cache data access operations. This is attribute is only used in the client/server topology. Defaults to gemfirePool.
      Returns:
      the name of the Pool used by the ClientCache Region to send Session state to the cluster of servers.
      See Also:
    • getRegionName

      default String getRegionName()
      Defines the name of the (client)cache Region used to store Session state. Defaults to ClusteredSpringSessions.
      Returns:
      a String specifying the name of the (client)cache Region used to store Session state.
      See Also:
    • getServerRegionShortcut

      default org.apache.geode.cache.RegionShortcut getServerRegionShortcut()
      Defines the Cache Region data management policy. Defaults to RegionShortcut.PARTITION.
      Returns:
      a RegionShortcut used to specify and configure the Cache Region data management policy.
      See Also:
    • getSessionExpirationPolicyBeanName

      default String getSessionExpirationPolicyBeanName()
      Defines the name of the bean referring to the SessionExpirationPolicy used to configure the Session expiration logic and strategy. The bean referred to by its name must be of type SessionExpirationPolicy. Defaults to unset.
      Returns:
      a String containing the bean name of the configured SessionExpirationPolicy.
      See Also:
    • getSessionSerializerBeanName

      default String getSessionSerializerBeanName()
      Defines the bean name of the SessionSerializer used to serialize Session state between client and server or to disk when persisting or overflowing Session state. The bean referred to by its name must be of type SessionSerializer. Defaults to SessionPdxSerializer.
      Returns:
      a String containing the bean name of the configured SessionSerializer.
      See Also: