John Blum
23da21d8fe
Add generic signature to getSessionRepository().
...
Add commit(:Session) method.
2018-12-19 02:17:27 -08:00
John Blum
b077f66856
Update README describing SSDG custom, enterprise features.
2018-12-19 02:12:56 -08:00
John Blum
71837eac1f
Switch from Log4j to SLF4J.
...
Resolves gh-18.
2018-12-17 21:05:25 -08:00
John Blum
ba678e8b41
Add additional Unit Tests using Always Dirty, Never Dirty and a custom IsDirtyPredicate strategy interface.
...
Add additional Unit Tests for org.apache.geode.Delta implementing objects.
Resolves gh-17.
2018-12-17 20:53:16 -08:00
John Blum
deb774f94f
Rename getFullyQualifiedRegionName() to getSessionsRegionName().
2018-12-17 18:45:44 -08:00
John Blum
8e50d365f6
Apply the configured IsDirtyPredicate strategy interface implementation to appliation domain objects stored in Session Attributes.
...
Resolves gh-17.
2018-12-17 18:40:17 -08:00
John Blum
545a9fbff1
Enable the configuration of an IsDirtyPredicate strategy interface implementation.
...
Resolves gh-17.
2018-12-17 18:37:40 -08:00
John Blum
f90ca10bd8
Upgrade to Spring Build Conventions Gradle Plugin 0.0.22.RELEASE.
2018-12-17 16:42:40 -08:00
John Blum
c03cfe41f0
Upgrade to Gradle Wrapper 4.10.3.
2018-12-17 16:42:01 -08:00
John Blum
ad312984bc
Fix bug in DeltaCapableGemFireSessionAttriutes.newSessionAttributes(lock:Object) not properly passing the lock to the new GemFireSessionAttributes instance.
2018-12-17 13:52:05 -08:00
John Blum
96632a0502
Add an IsDirtyPredicate strategy interface for determining when users application domain objects are dirty in a DataSerialization, Delta capable Session configuration.
...
Resolves gh-17.
2018-12-16 13:40:52 -08:00
John Blum
f8c8e5d912
Simplify delta recording in DeltaCapableGemFireSessionAttributes.
...
Existing tests cover the changes.
Resolves gh-19.
2018-12-14 03:28:16 -08:00
John Blum
53ccac533e
Polish.
...
Resolves gh-21.
2018-12-14 03:03:10 -08:00
John Blum
7a448183c0
Change the default value for register interest receive values to true, matching the GemFire/Geode default.
...
Resolves gh-21.
2018-12-14 02:55:41 -08:00
John Blum
8b8723f87c
Re-implement GemFire/Geode cache entry event to Spring Session event to HttpSessionListener event handling.
...
Resolves gh-21.
2018-12-14 01:08:33 -08:00
John Blum
019753f86d
Re-implement Session ID interest registration using Apache Geode/Pivotal GemFire Region.registerInterest(..) inside a registered, custom CacheListener.
...
Resolves gh-6.
2018-12-12 19:23:07 -08:00
John Blum
c67d4d11b7
Add abstract utility class containing functions for managing Sessions.
2018-12-12 18:01:34 -08:00
John Blum
0952f7efc3
Add GemFireUtils.isNonLocalClientRegion(:Region<?, ?>) method.
...
Remove GemFireUtils.toRegionPath(:String) method.
2018-12-12 17:49:53 -08:00
John Blum
e3467fc840
Refactor and Simplify Interest Registration.
...
Resolves gh-6.
Resolves gh-7.
2018-12-12 17:49:53 -08:00
John Blum
58d79a3dfa
Simplify isProxy(:Region) method.
2018-12-10 23:13:41 -08:00
John Blum
84b6cd1442
Polish.
2018-12-07 16:43:10 -08:00
John Blum
7a9c1398ca
Add additional integration test case testing the accessiblity of Spring Session GemFire configuration as Properties via Spring's @Value annotation on other beans defined in the Spring ApplicationContext.
...
Resolves gh-14.
2018-12-06 01:33:32 -08:00
John Blum
308bf0e6b7
Introduce usingDataSerialization boolean flag fixing bug when DataSerializer is not the DataSerializableSessionSerializer provided by SSDG.
...
Rename exposeSpringSessionGemFireConfigurationAsProperties() to exposeSpringSessionGemFireConfiguration().
2018-12-06 01:33:32 -08:00
John Blum
50827c21cb
Simplify Spring Session DataSerializer (Spy) re-registration logic.
2018-12-06 01:33:32 -08:00
John Blum
788cbda8cb
Change DI annotations on the Session Region field from @Resource to @Autowired(required = false) with a qualifier.
2018-12-06 01:33:32 -08:00
John Blum
889d4b004b
Remove post test, explicit DataSerializer cleanup.
2018-12-06 01:33:32 -08:00
John Blum
73228a4192
Polish.
2018-12-06 01:33:32 -08:00
John Blum
d56604276e
Add additional test case covering the serialization behavior of a Region.put(key, value) when value is new and when value.hasDelta() returns false.
2018-12-06 01:33:32 -08:00
John Blum
b269bd23b1
Add an additional Thread ( #3 ) to the ConcurrentSessionOperationsTestCase.
2018-12-06 01:33:32 -08:00
John Blum
b5419ce20d
Autowire optional reference to Spring ApplicationContext.
...
Provide getters for the autowired/injected ApplicationContext, GemFireCache and Sessions Region.
Add method to force touch a Session object by incrementing the current lastAccessedTime by 1 millisecond.
2018-12-06 01:33:32 -08:00
John Blum
8be155e109
Add integration, load test testing the concurrent access of an HttpSession backed by Spring Session using Apache Geode with 180 concurrent users (Threads) performing 10,000 concurrent data access opeations on the HttpSession to rule out possible race conditions and lost updates.
2018-12-06 01:33:32 -08:00
John Blum
ada5900863
Replace Optional.ofNullable(:Session) with a conditional and a new, private isNonNullAndDirty(:Session) method.
2018-12-03 18:37:04 -08:00
John Blum
0369cb85e5
Add protected instance variable, optionally auto-wired with an object reference to the configured 'ClusteredSpringSessions' Region.
2018-12-03 18:34:40 -08:00
John Blum
e48d34888e
Set Spring Test for Apache Geode/Pivotal GemFire to 0.0.1.BUILD-SNAPSHOT.
2018-12-03 18:32:46 -08:00
John Blum
8662bea492
Increase number of Threads concurrently accessing the same logical Session to 4.
...
In Thread 4, update lastAccessedTime then save Session in tick 2, and attempt to save a non-dirty Session in tick 3.
2018-11-27 18:59:56 -08:00
John Blum
d6bae4912a
Guard against null values for Session.lastAccessedTime.
2018-11-27 18:59:56 -08:00
John Blum
adf29e7702
Refactor and simplify non-dirty Session handling.
...
Resolves gh-16.
2018-11-27 00:17:18 -08:00
John Blum
1c915b27a4
Change Pivotal GemFire log-level to error.
2018-11-27 00:05:51 -08:00
John Blum
8c990ac328
Format source code.
2018-11-27 00:04:04 -08:00
John Blum
f37010c5d7
Add support to expose configuration as properties in the Spring Environment.
...
Edit Javadoc.
Resolves gh-14.
2018-11-25 18:27:37 -08:00
John Blum
e036a1b512
Rename tearDow() to tearDown().
2018-11-25 18:25:34 -08:00
John Blum
90824e973d
Annotate configuration methods and parameters with Spring's @NonNull and @Nullable annotations to make the contract of the methods apparent.
...
Edit Javadoc.
2018-11-25 18:19:34 -08:00
John Blum
2a30b08d25
Change all configuration based, JavaBean property accessor methods (getters) to public.
2018-11-21 16:29:47 -08:00
John Blum
153568d05c
Add registerDataSerializableSessionSerializer() method.
...
Refactor doInitialization() to delegate to registerDataSerializableSessionSerializer() when registering custom Spring Session DataSerializers/SessionSerializer implementations.
Remove sessionRegionName configuration parameters and state.
2018-11-21 16:24:51 -08:00
John Blum
fef2faa307
Implement non-behavior changing fixes.
...
Format source code.
Edit Javadoc.
2018-11-21 15:54:03 -08:00
John Blum
8db58729b3
Reorder overridden SessionRepository methods.
...
Edit Javadoc.
2018-11-21 15:54:03 -08:00
John Blum
3df7146b9e
Prepare next development iteration.
2018-11-13 22:25:04 -08:00
John Blum
609a5157ce
Release 2.1.1.RELEASE.
2018-11-13 22:13:09 -08:00
John Blum
a450bea65d
Add test class asserting proper DataSerialization of Session types combined with proper PDX serialization of application domain types.
2018-11-13 22:03:19 -08:00
John Blum
680c6d4a61
Add sample demonstrating the use of Spring Session with Gfsh started Apache Geode servers configured with DataSerialization.
...
Resolve gh-11.
2018-11-13 19:09:57 -08:00