Vedran Pavic
63f1013a07
Upgrade Hazelcast to 3.12.2
...
Resolves : #1483
2019-08-02 22:39:28 +02:00
Vedran Pavic
903fa10861
Polish
2019-07-30 23:08:13 +02:00
Vedran Pavic
033d6eecae
Add support for session save mode
...
This commit introduces SaveMode enum that individual SessionRepository implementations use to allow customization of the way they handle save operation in terms of tracking delta of changes.
Resolves : #1466
2019-07-14 10:35:05 +02:00
Vedran Pavic
1ca9daccb4
Remove unnecessary throws declaration
2019-07-02 19:23:35 +02:00
Vedran Pavic
8d0d757e46
Polish
2019-06-25 22:11:29 +02:00
Vedran Pavic
e2f1fe5446
Add missing deprecation
...
See: #1465
2019-06-25 21:50:03 +02:00
Vedran Pavic
07b9433540
Add common flush mode support
...
Resolves : #1465
2019-06-24 19:11:12 +02:00
Vedran Pavic
a6f6042831
Introduce IndexResolver
...
This commit introduces IndexResolver as a strategy interface for resolving index values in FindByIndexNameSessionRepository implementations.
Resolves : #557
2019-06-24 12:01:26 +02:00
Vedran Pavic
822db7fbbf
Use spring-javaformat to format and check code
...
Resolves : #1450
2019-06-17 23:54:41 +02:00
Vedran Pavic
f6a5bdacb8
Upgrade Hazelcast to 3.12.1
...
Resolves : #1452
2019-06-13 18:17:59 +02:00
Vedran Pavic
a4ff3682f6
Migrate tests to JUnit 5
...
Resolves : #1033
2019-06-06 20:57:45 +02:00
Vedran Pavic
566b388b2f
Align Checkstyle config with Spring Boot
2019-06-03 16:49:08 +02:00
Vedran Pavic
b98c5216b4
Update configuration classes to use proxyBeanMethods=false
...
Resolves : #1345
2019-05-09 18:10:57 +02:00
Vedran Pavic
2a5b221d70
Update integration tests
2019-04-12 20:14:12 +02:00
Vedran Pavic
5a462b3594
Resolve indexes for Hazelcast session on write
...
Resolves : #1145
2019-04-12 20:08:54 +02:00
Vedran Pavic
c2a3ffdb00
Upgrade Hazelcast to 3.12
...
Resolves : #1403
2019-04-09 21:28:45 +02:00
Spring Operator
90c08340fa
URL Cleanup
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.
* http://www.puppycrawl.com/dtds/configuration_1_3.dtd (404) with 1 occurrences migrated to:
https://www.puppycrawl.com/dtds/configuration_1_3.dtd ([https](https://www.puppycrawl.com/dtds/configuration_1_3.dtd ) result 404).
* http://www.puppycrawl.com/dtds/suppressions_1_1.dtd (404) with 1 occurrences migrated to:
https://www.puppycrawl.com/dtds/suppressions_1_1.dtd ([https](https://www.puppycrawl.com/dtds/suppressions_1_1.dtd ) result 404).
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* http://www.hazelcast.com/schema/config/hazelcast-config-3.11.xsd with 3 occurrences migrated to:
https://www.hazelcast.com/schema/config/hazelcast-config-3.11.xsd ([https](https://www.hazelcast.com/schema/config/hazelcast-config-3.11.xsd ) result 200).
* http://www.springframework.org/schema/beans/spring-beans.xsd with 9 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans.xsd ([https](https://www.springframework.org/schema/beans/spring-beans.xsd ) result 200).
* http://www.springframework.org/schema/context/spring-context.xsd with 7 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context.xsd ([https](https://www.springframework.org/schema/context/spring-context.xsd ) result 200).
* http://www.springframework.org/schema/jdbc/spring-jdbc.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/jdbc/spring-jdbc.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc.xsd ) result 200).
* http://www.springframework.org/schema/security/spring-security.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/security/spring-security.xsd ([https](https://www.springframework.org/schema/security/spring-security.xsd ) result 200).
* http://www.springframework.org/schema/util/spring-util-4.1.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util-4.1.xsd ([https](https://www.springframework.org/schema/util/spring-util-4.1.xsd ) result 200).
* http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd with 2 occurrences migrated to:
https://java.sun.com/xml/ns/javaee/web-app_3_0.xsd ([https](https://java.sun.com/xml/ns/javaee/web-app_3_0.xsd ) result 302).
These URLs were intentionally ignored.
* http://java.sun.com/xml/ns/javaee with 4 occurrences
* http://www.hazelcast.com/schema/config with 6 occurrences
* http://www.springframework.org/schema/beans with 18 occurrences
* http://www.springframework.org/schema/context with 14 occurrences
* http://www.springframework.org/schema/jdbc with 2 occurrences
* http://www.springframework.org/schema/p with 5 occurrences
* http://www.springframework.org/schema/security with 4 occurrences
* http://www.springframework.org/schema/util with 4 occurrences
* http://www.w3.org/2001/XMLSchema-instance with 14 occurrences
Fixes gh-1374
2019-03-21 16:59:05 -04:00
Spring Operator
0975d4d47e
URL Cleanup
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
# Fixed URLs
## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* http://www.apache.org/licenses/ with 1 occurrences migrated to:
https://www.apache.org/licenses/ ([https](https://www.apache.org/licenses/ ) result 200).
* http://www.apache.org/licenses/LICENSE-2.0 with 269 occurrences migrated to:
https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0 ) result 200).
* http://www.apache.org/licenses/LICENSE-2.0.html with 1 occurrences migrated to:
https://www.apache.org/licenses/LICENSE-2.0.html ([https](https://www.apache.org/licenses/LICENSE-2.0.html ) result 200).
2019-03-14 20:39:41 -05:00
Vedran Pavic
f00a1b9c6f
Fix HazelcastSessionRepository to update TTL when maxInactiveInterval is changed
...
Resolves : #1300
2019-01-12 12:22:45 +01:00
Vedran Pavic
96391ce41a
Fix assertion in Hazelcast tests
2018-12-24 20:59:06 +01:00
Vedran Pavic
d48eebea99
Upgrade Hazelcast to 3.11.1
...
Resolves : #1299
2018-12-20 18:52:27 +01:00
Vedran Pavic
124565306b
Tweak Hazelcast session event tests
...
See: #1267
2018-11-27 13:21:16 +01:00
Vedran Pavic
f709a6c787
Upgrade Hazelcast to 3.11
...
Resolves : #1267
2018-11-27 11:29:48 +01:00
Vedran Pavic
3480c65c2b
Polish
2018-11-26 18:24:14 +01:00
Vedran Pavic
e0dc0262ef
Make SessionUpdateEntryProcessor public
...
Resolves : #1260
2018-11-26 18:18:18 +01:00
Vedran Pavic
8a4872b919
Improve exception asserts
2018-11-26 10:02:40 +01:00
Vedran Pavic
f34acebf84
Upgrade integration tests
2018-10-15 18:42:12 +02:00
Vedran Pavic
81460ede09
Make SessionUpdateEntryProcessor implement Offloadable
...
Resolves : #1204
2018-09-20 19:31:55 +02:00
Vedran Pavic
fd2165f471
Upgrade Hazelcast to 3.10.5
...
Resolves : #1206
2018-09-20 19:23:24 +02:00
Vedran Pavic
603a258172
Upgrade Testcontainers to 1.9.0-rc1
2018-09-11 23:06:10 +02:00
Vedran Pavic
10a18366f9
Update integration tests
2018-09-07 07:46:10 +02:00
Vedran Pavic
d2936ed0b4
Upgrade dependencies
2018-07-27 11:10:14 +02:00
Vedran Pavic
3d2a742328
Use Spring Java Format Checkstyle
...
Closes gh-1113
2018-07-23 15:16:35 +02:00
Vedran Pavic
83cbff5ce2
Improve support for Hazelcast client-server topology
...
This commit improves support for use of Spring Session with Hazelcast's client-server topology by ensuring SessionUpdateEntryProcessor is easier to serialize to the cluster. This is done by refactoring SessionUpdateEntryProcessor from static inner class of HazelcastSessionRepository to a dedicated class, therefore minimizing the dependencies to other Spring Session components.
Closes gh-1101
2018-07-17 21:42:33 +02:00
Vedran Pavic
936fc853df
Ensure Session#getAttributeNames implementations return a copy
...
Currently, Session#getAttributeNames implementations, by delegating to MapSession, all return a session attribute map's key set. This causes ConcurrentModificationException when an attempt to modify session attributes is made while iterating over the returned attribute names.
Closes gh-1120
2018-07-17 15:05:03 +02:00
Vedran Pavic
63a215f73b
Disable network join in Hazelcast integration tests
2018-06-13 17:01:57 +02:00
Vedran Pavic
8dac35cf73
Fix session event handling in HazelcastSessionRepository
...
Previously, invoking HttpServletRequest#changeSessionId on session backed by HazelcastSessionRepository generated generated invalid session destroyed and session created events. This was due to use of IMap#remove and IMap#set when handling the change session id.
This commit improves change session id handling to prevent publishing invalid events by using IMap#delete instead of IMap#remove and keeping track of originally assigned session id.
Closes gh-1077
2018-06-13 16:12:28 +02:00
Vedran Pavic
42818a1b90
Improve update handling in HazelcastSessionRepository
...
This commit improves HazelcastSessionRepository.SessionUpdateEntryProcessor to avoid NPE in scenario where save operation was invoked for session that was already deleted.
See gh-1076
2018-05-15 08:16:20 +02:00
Vedran Pavic
a780ee0264
Replace use of ExpectedException rule with AssertJ
...
Closes gh-1032
2018-03-31 08:32:16 +02:00
Vedran Pavic
e364511c7e
Polish contribution
...
Closes gh-965
2018-01-08 17:38:29 +01:00
Johnny Lim
79ccbe7066
Polish
...
See gh-965
2018-01-08 17:38:06 +01:00
Vedran Pavic
27283e29d5
Optimize HazelcastSessionRepository.SessionUpdateEntryProcessor
...
Closes gh-947
2017-12-01 23:20:19 +01:00
Vedran Pavic
41de1b087a
Refactor Hazelcast configuration
...
Closes gh-938
2017-11-27 22:21:40 +01:00
Vedran Pavic
17e56dda18
Polish configuration classes
2017-11-26 12:21:32 +01:00
Vedran Pavic
f5912da089
Optimize HazelcastSessionRepository write operations
...
This commit introduces several optimizations to write operations in `HazelcastSessionRepository`.
- when storing a new session, `IMap#set` is now used instead of `IMap#put`
- when updating an existing session, `IMap#executeOnKey` and a dedicated `EntryProcessor` are used
To make these two changes possible, internal `HazelcastSession` now adds a flag to determine which of the two mentioned write scenarios to use, and also tracks a delta of session attributes in order to optimize updates.
Closes gh-850
2017-11-24 21:06:05 +01:00
Vedran Pavic
f28ab07b9a
Migrate SpringJUnit4ClassRunner -> SpringRunner
2017-11-20 08:08:00 +01:00
Vedran Pavic
34f29cf36c
Improve Hazelcast configuration
...
This commit improves Hazelcast configuration by introducing `@SpringSessionHazelcastInstance` qualifier for explicitly declaring a `HazelcastInstance` to be used by Spring Session. This is in particular useful in scenarios with multiple `HazelcastInstance` beans present in the application context.
Closes gh-912
2017-10-30 08:03:02 +01:00
Vedran Pavic
f8583bb02f
Add missing @Override
2017-10-27 09:59:55 +02:00
Vedran Pavic
5df555cd53
Polish
2017-10-27 09:59:51 +02:00
Rob Winch
be2604ca69
Add Session.changeSessionId
2017-07-20 16:31:38 -05:00