Eleftheria Stein-Kousathana
0cd0bfb32f
Remove attribute key and value from Redis
...
Closes gh-1331
2020-07-24 12:55:26 +02:00
Eleftheria Stein
43dd571345
Fix typo in Javadoc
2020-02-27 16:32:29 -05:00
Vedran Pavic
c88456a183
Rework scheduling configurers into nested configuration
...
This commit extracts scheduling configurers that are used in Redis and JDBC configurations into nested configuration classes in order to avoid bean method references.
Resolves : #1516
2019-09-30 16:08:55 +02:00
Vedran Pavic
f5abd55394
Ensure proxyBeanMethods is set to false everywhere
...
This commit sets proxyBeanMethods to false on all @Enable*Session annotations since they are meta-annotated with @Configuration.
See: #1516
2019-09-30 16:08:55 +02:00
Vedran Pavic
b9fd3666b5
Update integration tests
2019-09-30 16:08:20 +02:00
Vedran Pavic
bd36e115a8
Align with spring-javaformat 0.0.15
2019-09-29 16:16:36 +02:00
Vedran Pavic
feaf8780a8
Add support for configuring custom IndexResolver
...
See: #1467
2019-09-26 22:18:37 +02:00
Vedran Pavic
b357a76ce3
Align Spring Data Redis dependency excludes with Moore-RELEASE
...
See: #1507
2019-09-26 14:42:22 +02:00
Vedran Pavic
8cc8fbb7fd
Harmonize naming of session repositories
...
Resolves : #1455
2019-09-22 21:47:53 +02:00
Vedran Pavic
df3e4c5bc1
Add support for customizing session repository before initialization
...
This commit adds support for customizing session repository implementations (both SessionRepository and ReactiveSessionRepository) before initialization by introducing SessionRepositoryCustomizer and ReactiveSessionRepositoryCustomizer strategies.
Resolves : #1499
2019-09-03 22:17:36 +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
8cb85618c2
Polish
2019-07-02 23:19:11 +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
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
099be441dd
Fix copyright dates
...
See: #1441
2019-06-21 15:52:26 +02:00
Vedran Pavic
aab9b39a6b
Remove immediate flush mode support for reactive Redis sessions
...
Resolves : #1441
2019-06-20 10:44:22 +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
17005c51a7
Add simple Redis SessionRepository implementation
...
See: #1408
2019-06-14 22:55:21 +02:00
Vedran Pavic
54859070f3
Extract RedisSessionMapper
...
See: #1408
2019-06-14 22:55:11 +02:00
Vedran Pavic
2e91024a56
Fix integration tests
...
See: #1033
2019-06-09 10:54:28 +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
78b72f2d1b
Save reactive Redis session on subscribe
...
This commit ensures ReactiveRedisOperationsSessionRepository#save does work only after subscribe. Without this, multiple invocations of #save over the course of same request can lead to race condition situations.
Resolves : #1399
2019-06-02 19:02:13 +02:00
Vedran Pavic
52f59a83e4
Update integration tests
2019-05-31 23:31:01 +02:00
Rob Winch
d94d58d96b
Redis save uses then
...
We need to ensure that the session id is changed before we save the
changes. Otherwise the rename of the session id will override the
changes we just made.
Fixes: gh-1428
2019-05-16 15:51:51 -05:00
Vedran Pavic
cc41ea5271
Ensure Redis session with immediate flush respects defaultMaxInactiveInterval
...
Resolves : #1409
2019-05-13 19:08:03 +02:00
Vedran Pavic
b98c5216b4
Update configuration classes to use proxyBeanMethods=false
...
Resolves : #1345
2019-05-09 18:10:57 +02:00
Vedran Pavic
856a9b2c51
Update integration tests
2019-04-09 21:24:55 +02:00
Vedran Pavic
094ffe8a60
Avoid conflicts with user provided RedisMessageListenerContainer
...
Resolves : #1252
2019-03-29 21:27:56 +01:00
Spring Operator
a5a3bc5d0b
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.ultraq.net.nz/thymeleaf/layout (302) with 12 occurrences migrated to:
https://github.com/ultraq/thymeleaf-layout-dialect ([https](https://www.ultraq.net.nz/thymeleaf/layout ) result ConnectTimeoutException).
* [ ] http://192.168.1.100:8080/ (AnnotatedConnectException) with 1 occurrences migrated to:
https://192.168.1.100:8080/ ([https](https://192.168.1.100:8080/ ) result ConnectTimeoutException).
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* [ ] http://docs.hazelcast.org/docs/ with 8 occurrences migrated to:
https://docs.hazelcast.org/docs/ ([https](https://docs.hazelcast.org/docs/ ) result 200).
* [ ] http://docs.spring.io/spring-data/data-redis/docs/current/reference/html/ with 1 occurrences migrated to:
https://docs.spring.io/spring-data/data-redis/docs/current/reference/html/ ([https](https://docs.spring.io/spring-data/data-redis/docs/current/reference/html/ ) result 200).
* [ ] http://docs.spring.io/spring-session/docs/current/reference/html5/ with 1 occurrences migrated to:
https://docs.spring.io/spring-session/docs/current/reference/html5/ ([https](https://docs.spring.io/spring-session/docs/current/reference/html5/ ) result 200).
* [ ] http://infinispan.org/docs/dev/user_guide/user_guide.html with 1 occurrences migrated to:
https://infinispan.org/docs/dev/user_guide/user_guide.html ([https](https://infinispan.org/docs/dev/user_guide/user_guide.html ) result 200).
* [ ] http://logback.qos.ch/manual/groovy.html with 1 occurrences migrated to:
https://logback.qos.ch/manual/groovy.html ([https](https://logback.qos.ch/manual/groovy.html ) result 200).
* [ ] http://projects.spring.io/spring-session/ with 1 occurrences migrated to:
https://projects.spring.io/spring-session/ ([https](https://projects.spring.io/spring-session/ ) result 200).
* [ ] http://redis.io/commands/expire with 1 occurrences migrated to:
https://redis.io/commands/expire ([https](https://redis.io/commands/expire ) result 200).
* [ ] http://redis.io/commands/hmset with 1 occurrences migrated to:
https://redis.io/commands/hmset ([https](https://redis.io/commands/hmset ) result 200).
* [ ] http://redis.io/topics/data-types with 1 occurrences migrated to:
https://redis.io/topics/data-types ([https](https://redis.io/topics/data-types ) result 200).
* [ ] http://redis.io/topics/notifications with 2 occurrences migrated to:
https://redis.io/topics/notifications ([https](https://redis.io/topics/notifications ) result 200).
* [ ] http://stackoverflow.com with 1 occurrences migrated to:
https://stackoverflow.com ([https](https://stackoverflow.com ) result 200).
* [ ] http://stackoverflow.com/tags/spring-session with 1 occurrences migrated to:
https://stackoverflow.com/tags/spring-session ([https](https://stackoverflow.com/tags/spring-session ) result 200).
* [ ] http://www.thymeleaf.org with 12 occurrences migrated to:
https://www.thymeleaf.org ([https](https://www.thymeleaf.org ) result 200).
* [ ] http://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-spring4-3.dtd with 5 occurrences migrated to:
https://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-spring4-3.dtd ([https](https://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-spring4-3.dtd ) result 200).
* [ ] http://contributor-covenant.org with 1 occurrences migrated to:
https://contributor-covenant.org ([https](https://contributor-covenant.org ) result 301).
* [ ] http://contributor-covenant.org/version/1/3/0/ with 1 occurrences migrated to:
https://contributor-covenant.org/version/1/3/0/ ([https](https://contributor-covenant.org/version/1/3/0/ ) result 301).
* [ ] http://docs.spring.io/spring/docs/current/spring-framework-reference/html/spring-data-tier.html with 2 occurrences migrated to:
https://docs.spring.io/spring/docs/current/spring-framework-reference/html/spring-data-tier.html ([https](https://docs.spring.io/spring/docs/current/spring-framework-reference/html/spring-data-tier.html ) result 301).
* [ ] http://www.maxmind.com with 2 occurrences migrated to:
https://www.maxmind.com ([https](https://www.maxmind.com ) result 302).
These URLs were intentionally ignored.
* http://java.sun.com/jsp/jstl/core with 8 occurrences
* http://localhost with 15 occurrences
* http://localhost:8080/ with 31 occurrences
* http://localhost:8080/h2-console/ with 3 occurrences
* http://localhost:8080/logout with 1 occurrences
* http://localhost:8080/test/index with 2 occurrences
* http://localhost:xxxxx/hazelcast/rest/maps/spring:session:sessions/7e8383a4-082c-4ffe-a4bc-c40fd3363c5e with 1 occurrences
* http://www.w3.org/1999/xhtml with 5 occurrences
* http://www.webjars.org/tags with 8 occurrences
Fixes gh-1375
2019-03-22 10:24:07 -04: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
8b40e8cce8
Rework RedisHttpSessionConfiguration to bean method invocations
...
Closes : #1362
2019-03-14 21:34:53 +01:00
Vedran Pavic
381a07cb8c
Ignore failed rename operation for deleted session
...
In scenario with concurrent requests attempting to change session id, the "ERR no such key" error will occur for a thread that comes in second. This commit addresses the problem by ignoring the aforementioned error.
Resolves : #1270
2019-01-29 21:29:10 +01:00
Vedran Pavic
72198e9e80
Update integration tests
2019-01-10 16:19:38 +01:00
Jeff
a4a5b529ef
Fix RedisOperationsSessionRepository javadoc typos
...
Resolves : #1273
2018-12-04 16:35:56 +01:00
Vedran Pavic
3b7da0c370
Update integration tests
2018-11-26 17:54:57 +01:00
Vedran Pavic
8a4872b919
Improve exception asserts
2018-11-26 10:02:40 +01:00
Vedran Pavic
002136bad4
Align WebSession#save implementations with API
...
Closes gh-1135
2018-09-18 23:58:59 +02:00
Vedran Pavic
3e1a22102d
Ensure compatibility with Java 9 and 10
...
Closes gh-1196
2018-09-16 22:13:56 +02:00
Vedran Pavic
1a3da5944d
Polish
...
See gh-1128
2018-09-13 08:55:13 +02:00
Vedran Pavic
5d0775b802
Ensure RedisHttpSessionConfiguration handles events for configured database
...
At present, RedisHttpSessionConfiguration doesn't take into account database index when handlng events. In situations where multiple apps use Spring Session with same Redis instance, but different database, this results in invalid session events.
This commits improves event handling in RedisHttpSessionConfiguration to ensure currently used database is considered.
Closes gh-1128
2018-09-12 23:07:52 +02:00
Vedran Pavic
603a258172
Upgrade Testcontainers to 1.9.0-rc1
2018-09-11 23:06:10 +02:00
Vedran Pavic
57955b7d7b
Polish
...
See gh-1111
2018-09-10 17:03:10 +02:00
Vedran Pavic
6cc4bcd13d
Verify session existence before update in ReactiveRedisOperationsSessionRepository
...
Currently, ReactiveRedisOperationsSessionRepository#save does not ensure session's existence before executing update. This can result in an invalid session record in Redis, since write use only delta, and in turn to error while retrieving the invalid session record.
This commit adds check for session existence if session is being updated.
Closes gh-1111
2018-09-09 23:55:27 +02:00
Vedran Pavic
d3134ad065
Ignore failed rename operation for deleted session
...
Attempting to change session id for a deleted session currently results in "ERR no such key" error on rename operation of expired key. This commit addressed the problem by ignoring the aforementioned error.
Closes #1137
2018-09-04 23:07:27 +02:00
Vedran Pavic
c031ee278d
Add javadoc for RedisOperationsSessionRepository#getSessionRedisOperations
...
Closes #1175
2018-09-03 23:29:50 +02:00