From 4e42a83ca8f3544edffa71fecf1c87140f8f6639 Mon Sep 17 00:00:00 2001 From: Greg Turnquist Date: Wed, 9 May 2018 16:39:43 -0500 Subject: [PATCH] Add support for Java 10 --- .travis.yml | 37 ++++++++++++++---- pom.xml | 38 +++++++++++++------ .../MongoOperationsSessionRepository.java | 9 ++--- ...ctiveMongoOperationsSessionRepository.java | 9 ++--- ...eMongoOperationsSessionRepositoryTest.java | 2 +- 5 files changed, 65 insertions(+), 30 deletions(-) diff --git a/.travis.yml b/.travis.yml index 6aafe13..af53f8c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,21 +1,44 @@ language: java -jdk: -- oraclejdk8 -env: - matrix: - - PROFILE=non-existent - - PROFILE=spring5-next - - PROFILE=springdata-next + +# Get latest install-jdk.sh script +before_install: + - wget https://github.com/sormuras/bach/raw/master/install-jdk.sh + +matrix: + include: + - env: PROFILE=non-existent + jdk: oraclejdk8 + - env: PROFILE=spring5-next + jdk: oraclejdk8 + - env: PROFILE=springdata-next + jdk: oraclejdk8 + - env: JDK='Open JDK 10' PROFILE=non-existent + install: . ./install-jdk.sh -F 10 -L GPL + - env: JDK='Open JDK 10' PROFILE=spring5-next + install: . ./install-jdk.sh -F 10 -L GPL + - env: JDK='Open JDK 10' PROFILE=springdata-next + install: . ./install-jdk.sh -F 10 -L GPL + - env: JDK='Oracle JDK 10' PROFILE=non-existent + install: . ./install-jdk.sh -F 10 -L BCL + - env: JDK='Oracle JDK 10' PROFILE=spring5-next + install: . ./install-jdk.sh -F 10 -L BCL + - env: JDK='Oracle JDK 10' PROFILE=springdata-next + install: . ./install-jdk.sh -F 10 -L BCL + cache: directories: - $HOME/.m2 + os: - linux + branches: except: - gh-pages + sudo: false script: ./build.bash + notifications: slack: secure: fKLKkvaIVRK4l0f+PjFIZTwnVmgmFilKv1uS2XFFhFWPjAzSF0Qi0H2ZKt3cYRTbhNkUGksRbTivbvi9/p69lIpLn0HbM9p6theS7EdgP6O4VkDk9ubMysO9JZRp/5APJN3JJqHCC9gKCabyFwtsixKfzKhPtxNwhNiOAP7a/izuIdCq9Cl+lOskdFp3nAY3U8+Jk0zsE26TdRQ/7uOTDlWl4RU5h0UEr+AGxns+Du/K2efxpWrmOEjiIVQMSFGXJ3FBonX1XZcLu8RweLSARVcjPzZyOZgNWoziRvG9rprDRM6pZGEuSTDW/OIi3EcUezEXLkx5VxpaxS7ELNSBiQxsSpyWSIbTeUdA63n2VCSs5yfGJzuRG2zci0tSObEQtYNaSWoGFTW4EAliS4HmibN697vjoLO+s6mqc37YLkRa+aZctDHVKByDIgniOjz27/t1ZVgqVwOABfAjXxJyLLNrOkWoWAhwKWji+xvIIq+OK6TysWKs8ivTgJwMfeQ0yEEmo0/BaOONNvwUGgWX5/0xq4UvBJxIZzNbL6HUPBBUMCAJf+2t9S3zoBy2ML54ardhfk28jVOiH0lOLC/rQfQzCjM9FxQ4eBSy6TIdEJkCitfRrIVkDH23YmCuQl9nVrjwX+Jak6VRGvjYYs41N8dRxrN4cK6433LV9qyOvAA= diff --git a/pom.xml b/pom.xml index 2d1ecb2..3769ad8 100644 --- a/pom.xml +++ b/pom.xml @@ -68,7 +68,8 @@ 1.8 UTF-8 - 3.8.0 + + 3.9.1 1.50.5 1.3 2.9.1 @@ -76,11 +77,11 @@ 2.18.3 3.5.0 1.6.0 - Bismuth-SR6 - 5.0.4.RELEASE - Kay-SR4 - 5.0.1.RELEASE - 2.0.2.RELEASE + Bismuth-SR9 + 5.0.6.RELEASE + Kay-SR7 + 5.0.5.RELEASE + 2.0.3.RELEASE @@ -89,10 +90,10 @@ spring5-next Bismuth-BUILD-SNAPSHOT - 5.0.5.BUILD-SNAPSHOT + 5.0.7.BUILD-SNAPSHOT Kay-BUILD-SNAPSHOT - 5.0.2.BUILD-SNAPSHOT - 2.0.3.BUILD-SNAPSHOT + 5.0.6.BUILD-SNAPSHOT + 2.0.4.BUILD-SNAPSHOT @@ -106,10 +107,12 @@ springdata-next Bismuth-BUILD-SNAPSHOT - 5.0.5.BUILD-SNAPSHOT + 3.8.0-beta1 + 1.8.0 + 5.0.7.BUILD-SNAPSHOT Lovelace-BUILD-SNAPSHOT - 5.0.1.RELEASE - 2.0.3.BUILD-SNAPSHOT + 5.0.5.RELEASE + 2.0.4.BUILD-SNAPSHOT @@ -433,6 +436,17 @@ + + java10 + + 10 + + + + 1.10 + + + diff --git a/src/main/java/org/springframework/session/data/mongo/MongoOperationsSessionRepository.java b/src/main/java/org/springframework/session/data/mongo/MongoOperationsSessionRepository.java index 49593fe..32168dd 100644 --- a/src/main/java/org/springframework/session/data/mongo/MongoOperationsSessionRepository.java +++ b/src/main/java/org/springframework/session/data/mongo/MongoOperationsSessionRepository.java @@ -25,11 +25,10 @@ import java.util.List; import java.util.Map; import java.util.Optional; -import javax.annotation.PostConstruct; - import org.bson.Document; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.InitializingBean; import org.springframework.context.ApplicationEvent; import org.springframework.context.ApplicationEventPublisher; import org.springframework.context.ApplicationEventPublisherAware; @@ -56,7 +55,7 @@ import com.mongodb.DBObject; * @since 1.2 */ public class MongoOperationsSessionRepository - implements FindByIndexNameSessionRepository, ApplicationEventPublisherAware { + implements FindByIndexNameSessionRepository, ApplicationEventPublisherAware, InitializingBean { /** * The default time period in seconds in which a session will expire. @@ -162,8 +161,8 @@ public class MongoOperationsSessionRepository }); } - @PostConstruct - public void ensureIndexesAreCreated() { + @Override + public void afterPropertiesSet() { IndexOperations indexOperations = this.mongoOperations.indexOps(this.collectionName); this.mongoSessionConverter.ensureIndexes(indexOperations); diff --git a/src/main/java/org/springframework/session/data/mongo/ReactiveMongoOperationsSessionRepository.java b/src/main/java/org/springframework/session/data/mongo/ReactiveMongoOperationsSessionRepository.java index da4882f..132d20f 100644 --- a/src/main/java/org/springframework/session/data/mongo/ReactiveMongoOperationsSessionRepository.java +++ b/src/main/java/org/springframework/session/data/mongo/ReactiveMongoOperationsSessionRepository.java @@ -19,12 +19,11 @@ import static org.springframework.session.data.mongo.MongoSessionUtils.*; import java.time.Duration; -import javax.annotation.PostConstruct; - import org.bson.Document; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import reactor.core.publisher.Mono; +import org.springframework.beans.factory.InitializingBean; import org.springframework.context.ApplicationEvent; import org.springframework.context.ApplicationEventPublisher; import org.springframework.context.ApplicationEventPublisherAware; @@ -39,7 +38,7 @@ import org.springframework.session.events.SessionDeletedEvent; * @author Greg Turnquist */ public class ReactiveMongoOperationsSessionRepository - implements ReactiveSessionRepository, ApplicationEventPublisherAware { + implements ReactiveSessionRepository, ApplicationEventPublisherAware, InitializingBean { /** * The default time period in seconds in which a session will expire. @@ -147,8 +146,8 @@ public class ReactiveMongoOperationsSessionRepository * Do not use {@link org.springframework.data.mongodb.core.index.ReactiveIndexOperations} to ensure indexes exist. * Instead, get a blocking {@link IndexOperations} and use that instead, if possible. */ - @PostConstruct - public void ensureIndexesAreCreated() { + @Override + public void afterPropertiesSet() { if (this.blockingMongoOperations != null) { IndexOperations indexOperations = this.blockingMongoOperations.indexOps(this.collectionName); diff --git a/src/test/java/org/springframework/session/data/mongo/ReactiveMongoOperationsSessionRepositoryTest.java b/src/test/java/org/springframework/session/data/mongo/ReactiveMongoOperationsSessionRepositoryTest.java index 6dfe78e..b8e1b34 100644 --- a/src/test/java/org/springframework/session/data/mongo/ReactiveMongoOperationsSessionRepositoryTest.java +++ b/src/test/java/org/springframework/session/data/mongo/ReactiveMongoOperationsSessionRepositoryTest.java @@ -206,7 +206,7 @@ public class ReactiveMongoOperationsSessionRepositoryTest { this.repository.setBlockingMongoOperations(this.blockingMongoOperations); // when - this.repository.ensureIndexesAreCreated(); + this.repository.afterPropertiesSet(); // then verify(this.blockingMongoOperations, times(1)).indexOps((String) any());