Commit Graph

238 Commits

Author SHA1 Message Date
John Blum
cf8699c00a Refer to Spring Data for Apache Geode API Javadoc.
Parameterize version in Spring Session core API Javadoc URL.
2018-10-30 12:50:23 -07:00
John Blum
184894eb5b Prepare next development iteration. 2018-10-24 23:14:42 -07:00
John Blum
c1706e6e83 Release 2.1.0.RELEASE. 2018-10-24 23:02:33 -07:00
John Blum
f4caee8b95 Add exception handling around deploy artifacts and deploy docs Jenkins build stages. 2018-10-24 23:01:06 -07:00
John Blum
16734f4516 Remove all repository declarations from modulde build.gradle files and add to gradle/dependency-management.gradle. 2018-10-24 21:50:54 -07:00
John Blum
71e33ecb2c Fix documentation reference (httpsession-gemfire-clientserver-xml) and anchor/bookmark (http-session-gemifre-clientserver-xml) to match. 2018-10-24 21:49:46 -07:00
John Blum
8319151c96 Extend o.s.session.data.gemfire.AbstractGemFireIntegrationTests to ensure proper test resource cleanup on test setup and test teardown. 2018-10-24 21:10:54 -07:00
John Blum
f7a0e2c90b Add dependency management for Spring Session core to control the version, particularly for releases. 2018-10-24 20:54:04 -07:00
John Blum
70c65eda1f Add gradlePluginPortal() to Gradle build script respositories.
Switch from repo.spring.io/plugins-snapshot to repo.spring.io/plugins-release.
2018-10-24 20:42:49 -07:00
John Blum
2aec1d39d9 Upgrade to the Spring Build Conventions Gradle Plugin 0.0.20.RELEASE. 2018-10-24 20:39:10 -07:00
John Blum
0b290cba07 Edit documentation on Session expiration. 2018-10-24 20:22:28 -07:00
John Blum
83e4b40585 Fix Javadoc. 2018-10-24 19:56:42 -07:00
John Blum
d237dcc02a Prepare next development iteration. 2018-10-23 23:49:11 -07:00
John Blum
216917f12e Release 2.1.0.RC1. 2018-10-23 23:38:54 -07:00
John Blum
7ed93ef7cf Extend o.s.data.gemfire.tests.integration.IntegrationTestSupport. 2018-10-23 23:30:05 -07:00
John Blum
6ca478341f Upgrade to Spring Boot 2.1.0.RC1.
Upgrade to Spring Session 2.1.0.RELEASE.
2018-10-23 23:20:54 -07:00
John Blum
37411c4a9d Add chapter/section on configurable session expiration policies.
Resolve gh-5.
2018-10-23 23:14:54 -07:00
John Blum
c963938954 Add Integration Test asserting lazy expiration timeouts on Session access using FixedDurationExpirationSessionRepository.
Resolves gh-5.
2018-10-23 23:02:55 -07:00
John Blum
c4f72bfb35 Add Integration Test asserting that idle timeout expiration takes precendence over fixed duration expiration when an idle Session will expire before the fixed duration timeout.
Resolves gh-5.
2018-10-23 22:21:57 -07:00
John Blum
e980f9811b Add additional test cases asserting the SessionExpirationPolicy bean configuration, the Region.customEntryIdleTimeout expiration configuration and the Region.entryIdleTimeout expiration configuration.
Resolves gh-5.
2018-10-23 22:10:10 -07:00
John Blum
01297d507d Fomrat source code. 2018-10-23 21:12:52 -07:00
John Blum
2f7dcf26e2 Handle no expiration timeout as determined by SessionExpirationPolicy.
Change newExpirationAttributes(..) methods from private to protected.

Edit Javadoc.

Resolves gh-5.
2018-10-23 21:10:23 -07:00
John Blum
149c76f8b1 Extend IdleTimeoutSessionExpirationPolicy.
Determine expiration timeout in terms of both fixed timeout and idle timeout.  If the remaining idle timeout is less than the remaining fixed timeout then return Optional.empty().

Edit Javadoc.

Resolves gh-5.
2018-10-23 21:10:13 -07:00
John Blum
f69b83ce6c Default Idle Timeout to 30 minutes.
Allow construction with a null Idle Timeout, which may signify disabling expiration timeouts.

Implement the SessionExpirationTimeoutAware interface.

Return Optional<Duration> from determineExpirationTimeout(:Session).

Edit Javadoc.

Resolve gh-5.
2018-10-23 21:10:04 -07:00
John Blum
9eef2d099c Change the specification and interface contract of SessionExpirationPolicy.determineExpirationTimeout(:Session):Duration to prevent null return values and return an Optional of Duration instead.
An Optional<Duration> return value, particularly when Optional#EMPTY, may suggest that the Session should not expire or that the expiration determination should be delegated to the next expiration policy in the chain of policies when composing expiration policies using the Composite Software Design Pattern.

Alternately, an Optional#EMPTY return value can suggest to the underlying Spring Session data store provider (e.g. Apache Geode or Pivotal GemFire) to use the configured, default Idle Timeout (TTI) Expiration policy for the Region managing Session state.

Resolve gh-5.
2018-10-23 19:58:23 -07:00
John Blum
9217b107f2 Rename expireAfter(:Session):Duraton to determineExpirationTimeout(:Session):Duration.
Rename getAction():ExpirationAction to getExpirationAction():ExpirationAction.

Edit Javadoc.

Resolves gh-5.
2018-10-23 19:58:23 -07:00
John Blum
c569a3de5f Edit Javadoc.
Resolves gh-5.
2018-10-23 19:58:23 -07:00
John Blum
03f7c2f9b5 Change the specification and interface contract for SessionExpirationPolicy.expireAfter(:Session):Duration to allow null return values.
A null return value will signal GemFire/Geode to use the default Region Entry Idle Timeout (TTI) Expiration Policy configured for the Sessions Region.

Resolves gh-5.
2018-10-23 19:58:23 -07:00
John Blum
bff54fa08a Refactor GemFireHttpSessionConfiguration to always set a Region Entry Idle Timeout (TTI) Expiration Policy regardless if the user provided her own custom, Region Entry Idle Timeout (TTI) Expiration Policy.
Resolves gh-5.
2018-10-23 14:14:56 -07:00
John Blum
7c5a7da9ea Fix failing tests based on session expiration policy configuration.
Resolves gh-5.
2018-10-22 22:30:42 -07:00
John Blum
bc803fcd61 Add Integration Tests asserting fixed duration expiration timeout for a Session.
Resolved gh-5.
2018-10-22 22:23:39 -07:00
John Blum
c905b365e1 Add SpringSessionGemFireConfigurer support for configuring custom session expiration policies.
Resolve gh-5.
2018-10-22 21:33:20 -07:00
John Blum
9024da840f Add Integration Tests to assert the configuration of custom session expiration policies.
Resolve gh-5.
2018-10-22 21:01:49 -07:00
John Blum
7ea48fdc6c Add annotation configuration support to configure custom session expiration policies.
Resolves gh-5.
2018-10-22 20:55:53 -07:00
John Blum
6714ed9421 Add Unit Tests for o.s.session.data.gemfire.expiration.SessionExpirationPolicy strategy interface and supporting classes.
Resolves gh-5.
2018-10-22 19:05:43 -07:00
John Blum
65d9ff8f42 Define o.s.session.data.gemfire.expiration.SessionExpirationPolicy strategy interface and supporting classes to enable users to implement custom expiration policies.
Resolve gh-5.
2018-10-22 19:02:20 -07:00
John Blum
9d9a5d0b1a Add link/URL to the Spring Session core GitHub Issue #922 referencing the new feature request. 2018-10-15 15:55:22 -07:00
John Blum
96d03171e9 Prototype a basic implementation of time-boxed, fixed duration expiration (e.g. 24 hours). 2018-10-15 15:55:22 -07:00
John Blum
3777a7662f Upgrade to Spring Framework 5.1.1.RELEASE.
Upgrade to Spring Boot 2.1.0.M4.

Upgrade to Spring Data for Apache Geode 2.1.1.RELEASE.

Upgrade to Spring Data for Pivotal GemFire 2.1.1.RELEASE.

Upgrade to Spring Data Release Train Lovelace-SR1.

Upgrade to Spring Session BOM Bean-RC1.
2018-10-15 15:38:14 -07:00
John Blum
d466d4ca99 Add reference to the API. 2018-08-31 08:48:51 -07:00
John Blum
50fc925cea Update Jenkins build script file to match core Spring Session. 2018-08-29 22:57:04 -07:00
John Blum
0db2a25add Format source code. 2018-08-29 12:01:32 -07:00
John Blum
fabcdeb3f7 Upgrade to Spring Test for Apache Geode/Pivotal GemFire 0.0.1.M3. 2018-08-29 11:53:38 -07:00
John Blum
fdf7cf00d4 Upgrade to Gradle 4.10. 2018-08-28 17:45:02 -07:00
John Blum
4b53271659 Upgrade to Spring Test for Apache Geode/Pivotal GemFire 0.0.1.M2. 2018-08-28 17:44:18 -07:00
John Blum
d5b1769157 Remove the 'testCompile seleniumDependencies' dependency declaration. 2018-08-24 21:29:41 -07:00
John Blum
72a1209b98 Upgrade to Spring Build Conventions Gradle Plugin 0.0.18.RELEASE. 2018-08-24 21:28:29 -07:00
John Blum
c3417edf47 Prepare next development iteration. 2018-08-22 12:36:20 -07:00
John Blum
52536923f2 Release 2.1.0.M1. 2018-08-22 12:28:04 -07:00
John Blum
2b08f5b4a8 Upgrade to Spring Test for Apache Geode/Pivotal GemFire 0.0.1.M1. 2018-08-22 11:58:27 -07:00