diff --git a/settings.gradle b/settings.gradle index 0b7c0e1d5ac..5c4cafe18ee 100644 --- a/settings.gradle +++ b/settings.gradle @@ -66,6 +66,7 @@ include "spring-boot-project:spring-boot-artemis" include "spring-boot-project:spring-boot-autoconfigure" include "spring-boot-project:spring-boot-autoconfigure-all" include "spring-boot-project:spring-boot-batch" +include "spring-boot-project:spring-boot-couchbase" include "spring-boot-project:spring-boot-data-jpa" include "spring-boot-project:spring-boot-dependencies" include "spring-boot-project:spring-boot-devtools" diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/build.gradle b/spring-boot-project/spring-boot-actuator-autoconfigure/build.gradle index 6774a2e390b..4bc5bfe0513 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/build.gradle +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/build.gradle @@ -36,6 +36,7 @@ dependencies { optional(project(":spring-boot-project:spring-boot-activemq")) optional(project(":spring-boot-project:spring-boot-amqp")) optional(project(":spring-boot-project:spring-boot-artemis")) + optional(project(":spring-boot-project:spring-boot-couchbase")) optional(project(":spring-boot-project:spring-boot-data-jpa")) optional(project(":spring-boot-project:spring-boot-elasticsearch")) optional(project(":spring-boot-project:spring-boot-flyway")) diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/couchbase/CouchbaseHealthContributorAutoConfiguration.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/couchbase/CouchbaseHealthContributorAutoConfiguration.java index 27fe49392ce..cc021c197d4 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/couchbase/CouchbaseHealthContributorAutoConfiguration.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/couchbase/CouchbaseHealthContributorAutoConfiguration.java @@ -28,7 +28,6 @@ import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseAutoConfiguration; import org.springframework.context.annotation.Bean; /** @@ -40,8 +39,8 @@ import org.springframework.context.annotation.Bean; * @author Andy Wilkinson Nicoll * @since 2.0.0 */ -@AutoConfiguration( - after = { CouchbaseAutoConfiguration.class, CouchbaseReactiveHealthContributorAutoConfiguration.class }) +@AutoConfiguration(after = CouchbaseReactiveHealthContributorAutoConfiguration.class, + afterName = "org.springframework.boot.couchbase.autoconfigure.CouchbaseAutoConfiguration") @ConditionalOnClass(Cluster.class) @ConditionalOnBean(Cluster.class) @ConditionalOnEnabledHealthIndicator("couchbase") diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/couchbase/CouchbaseReactiveHealthContributorAutoConfiguration.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/couchbase/CouchbaseReactiveHealthContributorAutoConfiguration.java index c953ae8c2d7..f2a4dc2d5fa 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/couchbase/CouchbaseReactiveHealthContributorAutoConfiguration.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/couchbase/CouchbaseReactiveHealthContributorAutoConfiguration.java @@ -29,7 +29,6 @@ import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseAutoConfiguration; import org.springframework.context.annotation.Bean; /** @@ -40,7 +39,7 @@ import org.springframework.context.annotation.Bean; * @author Stephane Nicoll * @since 2.1.0 */ -@AutoConfiguration(after = CouchbaseAutoConfiguration.class) +@AutoConfiguration(afterName = "org.springframework.boot.couchbase.autoconfigure.CouchbaseAutoConfiguration") @ConditionalOnClass({ Cluster.class, Flux.class }) @ConditionalOnBean(Cluster.class) @ConditionalOnEnabledHealthIndicator("couchbase") diff --git a/spring-boot-project/spring-boot-autoconfigure-all/build.gradle b/spring-boot-project/spring-boot-autoconfigure-all/build.gradle index f953a02fe7b..0d0a84f2973 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/build.gradle +++ b/spring-boot-project/spring-boot-autoconfigure-all/build.gradle @@ -60,6 +60,7 @@ dependencies { optional(project(":spring-boot-project:spring-boot-activemq")) optional(project(":spring-boot-project:spring-boot-artemis")) + optional(project(":spring-boot-project:spring-boot-couchbase")) optional(project(":spring-boot-project:spring-boot-data-jpa")) optional(project(":spring-boot-project:spring-boot-elasticsearch")) optional(project(":spring-boot-project:spring-boot-flyway")) diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseDataAutoConfiguration.java b/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseDataAutoConfiguration.java index a459a749df8..685ee6bb6f9 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseDataAutoConfiguration.java +++ b/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseDataAutoConfiguration.java @@ -23,7 +23,6 @@ import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnSingleCandidate; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseAutoConfiguration; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -38,8 +37,8 @@ import org.springframework.data.couchbase.repository.CouchbaseRepository; * @author Stephane Nicoll * @since 1.4.0 */ -@AutoConfiguration(after = CouchbaseAutoConfiguration.class, - afterName = "org.springframework.boot.validation.autoconfigure.ValidationAutoConfiguration") +@AutoConfiguration(afterName = { "org.springframework.boot.couchbase.autoconfigure.CouchbaseAutoConfiguration", + "org.springframework.boot.validation.autoconfigure.ValidationAutoConfiguration" }) @ConditionalOnClass({ Bucket.class, CouchbaseRepository.class }) @EnableConfigurationProperties(CouchbaseDataProperties.class) @Import({ CouchbaseDataConfiguration.class, CouchbaseClientFactoryConfiguration.class, diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json index 3fb36a1035d..3060fc87996 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json +++ b/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -63,137 +63,6 @@ "level": "error" } }, - { - "name": "spring.couchbase.bootstrap-hosts", - "type": "java.util.List", - "description": "Couchbase nodes (host or IP address) to bootstrap from.", - "deprecation": { - "replacement": "spring.couchbase.connection-string", - "level": "error" - } - }, - { - "name": "spring.couchbase.bucket.name", - "type": "java.lang.String", - "description": "Name of the bucket to connect to.", - "deprecation": { - "reason": "A bucket is no longer auto-configured.", - "level": "error" - } - }, - { - "name": "spring.couchbase.bucket.password", - "type": "java.lang.String", - "description": "Password of the bucket.", - "deprecation": { - "reason": "A bucket is no longer auto-configured.", - "level": "error" - } - }, - { - "name": "spring.couchbase.env.bootstrap.http-direct-port", - "type": "java.lang.Integer", - "description": "Port for the HTTP bootstrap.", - "deprecation": { - "level": "error" - } - }, - { - "name": "spring.couchbase.env.bootstrap.http-ssl-port", - "type": "java.lang.Integer", - "description": "Port for the HTTPS bootstrap.", - "deprecation": { - "level": "error" - } - }, - { - "name": "spring.couchbase.env.endpoints.key-value", - "type": "java.lang.Integer", - "description": "Number of sockets per node against the key/value service.", - "deprecation": { - "level": "error" - } - }, - { - "name": "spring.couchbase.env.endpoints.query", - "type": "java.lang.Integer", - "description": "Number of sockets per node against the query (N1QL) service.", - "deprecation": { - "level": "error" - } - }, - { - "name": "spring.couchbase.env.endpoints.queryservice.max-endpoints", - "type": "java.lang.Integer", - "description": "Maximum number of sockets per node.", - "deprecation": { - "replacement": "spring.couchbase.env.io.max-endpoints", - "level": "error" - } - }, - { - "name": "spring.couchbase.env.endpoints.queryservice.min-endpoints", - "type": "java.lang.Integer", - "description": "Minimum number of sockets per node.", - "deprecation": { - "replacement": "spring.couchbase.env.io.min-endpoints", - "level": "error" - } - }, - { - "name": "spring.couchbase.env.endpoints.view", - "type": "java.lang.Integer", - "description": "Number of sockets per node against the view service.", - "deprecation": { - "level": "error" - } - }, - { - "name": "spring.couchbase.env.endpoints.viewservice.max-endpoints", - "type": "java.lang.Integer", - "description": "Maximum number of sockets per node.", - "deprecation": { - "replacement": "spring.couchbase.env.io.max-endpoints", - "level": "error" - } - }, - { - "name": "spring.couchbase.env.endpoints.viewservice.min-endpoints", - "type": "java.lang.Integer", - "description": "Minimum number of sockets per node.", - "deprecation": { - "replacement": "spring.couchbase.env.io.min-endpoints", - "level": "error" - } - }, - { - "name": "spring.couchbase.env.ssl.key-store", - "type": "java.lang.String", - "description": "Path to the JVM key store that holds the certificates.", - "deprecation": { - "replacement": "spring.couchbase.env.ssl.bundle", - "level": "error", - "since": "3.1.0" - } - }, - { - "name": "spring.couchbase.env.ssl.key-store-password", - "type": "java.lang.String", - "description": "Password used to access the key store.", - "deprecation": { - "replacement": "spring.couchbase.env.ssl.bundle", - "level": "error", - "since": "3.1.0" - } - }, - { - "name": "spring.couchbase.env.timeouts.socket-connect", - "type": "java.time.Duration", - "description": "Socket connect connections timeout.", - "deprecation": { - "level": "error" - } - }, { "name": "spring.dao.exceptiontranslation.enabled", "type": "java.lang.Boolean", diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports index 9aa518884b0..907739ea7ac 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ b/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -1,7 +1,6 @@ org.springframework.boot.autoconfigure.aop.AopAutoConfiguration org.springframework.boot.autoconfigure.cache.CacheAutoConfiguration org.springframework.boot.autoconfigure.cassandra.CassandraAutoConfiguration -org.springframework.boot.autoconfigure.couchbase.CouchbaseAutoConfiguration org.springframework.boot.autoconfigure.dao.PersistenceExceptionTranslationAutoConfiguration org.springframework.boot.autoconfigure.data.cassandra.CassandraDataAutoConfiguration org.springframework.boot.autoconfigure.data.cassandra.CassandraReactiveDataAutoConfiguration diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseDataAutoConfigurationTests.java b/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseDataAutoConfigurationTests.java index 071b2ef41e7..3da3d5cd4f8 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseDataAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseDataAutoConfigurationTests.java @@ -21,10 +21,10 @@ import java.util.Collections; import org.junit.jupiter.api.Test; import org.springframework.boot.autoconfigure.AutoConfigurations; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseAutoConfiguration; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseProperties; import org.springframework.boot.autoconfigure.data.couchbase.city.City; import org.springframework.boot.autoconfigure.domain.EntityScan; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseAutoConfiguration; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseProperties; import org.springframework.boot.test.context.runner.ApplicationContextRunner; import org.springframework.boot.validation.autoconfigure.ValidationAutoConfiguration; import org.springframework.context.annotation.Bean; diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseReactiveAndImperativeRepositoriesAutoConfigurationTests.java b/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseReactiveAndImperativeRepositoriesAutoConfigurationTests.java index 8e2438ed030..b89313a9eb0 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseReactiveAndImperativeRepositoriesAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseReactiveAndImperativeRepositoriesAutoConfigurationTests.java @@ -22,9 +22,9 @@ import java.util.List; import org.junit.jupiter.api.Test; import org.springframework.boot.autoconfigure.TestAutoConfigurationPackage; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseAutoConfiguration; import org.springframework.boot.autoconfigure.data.couchbase.city.CityRepository; import org.springframework.boot.autoconfigure.data.couchbase.city.ReactiveCityRepository; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseAutoConfiguration; import org.springframework.boot.test.context.runner.ApplicationContextRunner; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Import; diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseReactiveDataAutoConfigurationTests.java b/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseReactiveDataAutoConfigurationTests.java index 7e9d5c129dd..38d719499bb 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseReactiveDataAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseReactiveDataAutoConfigurationTests.java @@ -21,10 +21,10 @@ import java.util.Collections; import org.junit.jupiter.api.Test; import org.springframework.boot.autoconfigure.AutoConfigurations; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseAutoConfiguration; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseProperties; import org.springframework.boot.autoconfigure.data.couchbase.city.City; import org.springframework.boot.autoconfigure.domain.EntityScan; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseAutoConfiguration; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseProperties; import org.springframework.boot.test.context.runner.ApplicationContextRunner; import org.springframework.boot.validation.autoconfigure.ValidationAutoConfiguration; import org.springframework.context.annotation.Bean; diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseReactiveRepositoriesAutoConfigurationTests.java b/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseReactiveRepositoriesAutoConfigurationTests.java index d866c829cf3..7a9a2943987 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseReactiveRepositoriesAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseReactiveRepositoriesAutoConfigurationTests.java @@ -20,12 +20,12 @@ import org.junit.jupiter.api.Test; import org.springframework.boot.autoconfigure.AutoConfigurations; import org.springframework.boot.autoconfigure.TestAutoConfigurationPackage; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseAutoConfiguration; import org.springframework.boot.autoconfigure.data.alt.couchbase.CityCouchbaseRepository; import org.springframework.boot.autoconfigure.data.alt.couchbase.ReactiveCityCouchbaseRepository; import org.springframework.boot.autoconfigure.data.couchbase.city.City; import org.springframework.boot.autoconfigure.data.couchbase.city.ReactiveCityRepository; import org.springframework.boot.autoconfigure.data.empty.EmptyDataPackage; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseAutoConfiguration; import org.springframework.boot.test.context.runner.ApplicationContextRunner; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Import; diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseRepositoriesAutoConfigurationTests.java b/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseRepositoriesAutoConfigurationTests.java index f58290457ec..f4d0f2633af 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseRepositoriesAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/couchbase/CouchbaseRepositoriesAutoConfigurationTests.java @@ -20,10 +20,10 @@ import org.junit.jupiter.api.Test; import org.springframework.boot.autoconfigure.AutoConfigurations; import org.springframework.boot.autoconfigure.TestAutoConfigurationPackage; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseAutoConfiguration; import org.springframework.boot.autoconfigure.data.couchbase.city.City; import org.springframework.boot.autoconfigure.data.couchbase.city.CityRepository; import org.springframework.boot.autoconfigure.data.empty.EmptyDataPackage; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseAutoConfiguration; import org.springframework.boot.test.context.runner.ApplicationContextRunner; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Import; diff --git a/spring-boot-project/spring-boot-couchbase/build.gradle b/spring-boot-project/spring-boot-couchbase/build.gradle new file mode 100644 index 00000000000..c87d301f1d5 --- /dev/null +++ b/spring-boot-project/spring-boot-couchbase/build.gradle @@ -0,0 +1,46 @@ +/* + * Copyright 2012-present the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + +plugins { + id "java-library" + id "org.springframework.boot.auto-configuration" + id "org.springframework.boot.configuration-properties" + id "org.springframework.boot.deployed" + id "org.springframework.boot.docker-test" + id "org.springframework.boot.optional-dependencies" +} + +description = "Spring Boot Couchbase" + +dependencies { + api(project(":spring-boot-project:spring-boot")) + api("com.couchbase.client:java-client") + + optional(project(":spring-boot-project:spring-boot-autoconfigure")) + optional(project(":spring-boot-project:spring-boot-jackson")) + + dockerTestImplementation(project(":spring-boot-project:spring-boot-test")) + dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker")) + dockerTestImplementation("org.junit.jupiter:junit-jupiter") + dockerTestImplementation("org.testcontainers:couchbase") + dockerTestImplementation("org.testcontainers:junit-jupiter") + + testImplementation(project(":spring-boot-project:spring-boot-test")) + testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) + + testRuntimeOnly("ch.qos.logback:logback-classic") +} diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/dockerTest/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseAutoConfigurationIntegrationTests.java b/spring-boot-project/spring-boot-couchbase/src/dockerTest/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseAutoConfigurationIntegrationTests.java similarity index 98% rename from spring-boot-project/spring-boot-autoconfigure-all/src/dockerTest/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseAutoConfigurationIntegrationTests.java rename to spring-boot-project/spring-boot-couchbase/src/dockerTest/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseAutoConfigurationIntegrationTests.java index 28792c00852..2f870dc92fa 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/dockerTest/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseAutoConfigurationIntegrationTests.java +++ b/spring-boot-project/spring-boot-couchbase/src/dockerTest/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseAutoConfigurationIntegrationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.couchbase; +package org.springframework.boot.couchbase.autoconfigure; import java.time.Duration; diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/couchbase/ClusterEnvironmentBuilderCustomizer.java b/spring-boot-project/spring-boot-couchbase/src/main/java/org/springframework/boot/couchbase/autoconfigure/ClusterEnvironmentBuilderCustomizer.java similarity index 94% rename from spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/couchbase/ClusterEnvironmentBuilderCustomizer.java rename to spring-boot-project/spring-boot-couchbase/src/main/java/org/springframework/boot/couchbase/autoconfigure/ClusterEnvironmentBuilderCustomizer.java index 1f4be3d2340..d0f70c36ce9 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/couchbase/ClusterEnvironmentBuilderCustomizer.java +++ b/spring-boot-project/spring-boot-couchbase/src/main/java/org/springframework/boot/couchbase/autoconfigure/ClusterEnvironmentBuilderCustomizer.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.couchbase; +package org.springframework.boot.couchbase.autoconfigure; import com.couchbase.client.java.env.ClusterEnvironment; import com.couchbase.client.java.env.ClusterEnvironment.Builder; @@ -25,7 +25,7 @@ import com.couchbase.client.java.env.ClusterEnvironment.Builder; * retaining default auto-configuration. * * @author Stephane Nicoll - * @since 2.3.0 + * @since 4.0.0 */ @FunctionalInterface public interface ClusterEnvironmentBuilderCustomizer { diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseAutoConfiguration.java b/spring-boot-project/spring-boot-couchbase/src/main/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseAutoConfiguration.java similarity index 96% rename from spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseAutoConfiguration.java rename to spring-boot-project/spring-boot-couchbase/src/main/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseAutoConfiguration.java index ad6e79ccc23..9e81e889694 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseAutoConfiguration.java +++ b/spring-boot-project/spring-boot-couchbase/src/main/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseAutoConfiguration.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.couchbase; +package org.springframework.boot.couchbase.autoconfigure; import java.io.IOException; import java.io.InputStream; @@ -43,12 +43,12 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.autoconfigure.condition.ConditionalOnSingleCandidate; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseAutoConfiguration.CouchbaseCondition; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseProperties.Authentication.Jks; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseProperties.Authentication.Pem; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseProperties.Ssl; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseProperties.Timeouts; import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseAutoConfiguration.CouchbaseCondition; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseProperties.Authentication.Jks; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseProperties.Authentication.Pem; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseProperties.Ssl; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseProperties.Timeouts; import org.springframework.boot.io.ApplicationResourceLoader; import org.springframework.boot.ssl.SslBundle; import org.springframework.boot.ssl.SslBundles; @@ -73,7 +73,7 @@ import org.springframework.util.StringUtils; * @author Andy Wilkinson * @author Phillip Webb * @author Scott Frederick - * @since 1.4.0 + * @since 4.0.0 */ @AutoConfiguration(afterName = "org.springframework.boot.jackson.autoconfigure.JacksonAutoConfiguration") @ConditionalOnClass(Cluster.class) diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseConnectionDetails.java b/spring-boot-project/spring-boot-couchbase/src/main/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseConnectionDetails.java similarity index 95% rename from spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseConnectionDetails.java rename to spring-boot-project/spring-boot-couchbase/src/main/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseConnectionDetails.java index 7632d84f267..820c4ac9889 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseConnectionDetails.java +++ b/spring-boot-project/spring-boot-couchbase/src/main/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseConnectionDetails.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.couchbase; +package org.springframework.boot.couchbase.autoconfigure; import org.springframework.boot.autoconfigure.service.connection.ConnectionDetails; import org.springframework.boot.ssl.SslBundle; @@ -25,7 +25,7 @@ import org.springframework.boot.ssl.SslBundle; * @author Moritz Halbritter * @author Andy Wilkinson * @author Phillip Webb - * @since 3.1.0 + * @since 4.0.0 */ public interface CouchbaseConnectionDetails extends ConnectionDetails { diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseProperties.java b/spring-boot-project/spring-boot-couchbase/src/main/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseProperties.java similarity index 99% rename from spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseProperties.java rename to spring-boot-project/spring-boot-couchbase/src/main/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseProperties.java index de4c3acb2cf..6ee05313b6e 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseProperties.java +++ b/spring-boot-project/spring-boot-couchbase/src/main/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseProperties.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.couchbase; +package org.springframework.boot.couchbase.autoconfigure; import java.time.Duration; @@ -30,7 +30,7 @@ import org.springframework.util.StringUtils; * @author Brian Clozel * @author Michael Nitschinger * @author Scott Frederick - * @since 1.4.0 + * @since 4.0.0 */ @ConfigurationProperties("spring.couchbase") public class CouchbaseProperties { diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/couchbase/package-info.java b/spring-boot-project/spring-boot-couchbase/src/main/java/org/springframework/boot/couchbase/autoconfigure/package-info.java similarity index 92% rename from spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/couchbase/package-info.java rename to spring-boot-project/spring-boot-couchbase/src/main/java/org/springframework/boot/couchbase/autoconfigure/package-info.java index 108f00a0db7..b8e3a6586ae 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/couchbase/package-info.java +++ b/spring-boot-project/spring-boot-couchbase/src/main/java/org/springframework/boot/couchbase/autoconfigure/package-info.java @@ -17,4 +17,4 @@ /** * Auto-configuration for Couchbase. */ -package org.springframework.boot.autoconfigure.couchbase; +package org.springframework.boot.couchbase.autoconfigure; diff --git a/spring-boot-project/spring-boot-couchbase/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/spring-boot-project/spring-boot-couchbase/src/main/resources/META-INF/additional-spring-configuration-metadata.json new file mode 100644 index 00000000000..70393b3d7f2 --- /dev/null +++ b/spring-boot-project/spring-boot-couchbase/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -0,0 +1,136 @@ +{ + "groups": [], + "properties": [ + { + "name": "spring.couchbase.bootstrap-hosts", + "type": "java.util.List", + "description": "Couchbase nodes (host or IP address) to bootstrap from.", + "deprecation": { + "replacement": "spring.couchbase.connection-string", + "level": "error" + } + }, + { + "name": "spring.couchbase.bucket.name", + "type": "java.lang.String", + "description": "Name of the bucket to connect to.", + "deprecation": { + "reason": "A bucket is no longer auto-configured.", + "level": "error" + } + }, + { + "name": "spring.couchbase.bucket.password", + "type": "java.lang.String", + "description": "Password of the bucket.", + "deprecation": { + "reason": "A bucket is no longer auto-configured.", + "level": "error" + } + }, + { + "name": "spring.couchbase.env.bootstrap.http-direct-port", + "type": "java.lang.Integer", + "description": "Port for the HTTP bootstrap.", + "deprecation": { + "level": "error" + } + }, + { + "name": "spring.couchbase.env.bootstrap.http-ssl-port", + "type": "java.lang.Integer", + "description": "Port for the HTTPS bootstrap.", + "deprecation": { + "level": "error" + } + }, + { + "name": "spring.couchbase.env.endpoints.key-value", + "type": "java.lang.Integer", + "description": "Number of sockets per node against the key/value service.", + "deprecation": { + "level": "error" + } + }, + { + "name": "spring.couchbase.env.endpoints.query", + "type": "java.lang.Integer", + "description": "Number of sockets per node against the query (N1QL) service.", + "deprecation": { + "level": "error" + } + }, + { + "name": "spring.couchbase.env.endpoints.queryservice.max-endpoints", + "type": "java.lang.Integer", + "description": "Maximum number of sockets per node.", + "deprecation": { + "replacement": "spring.couchbase.env.io.max-endpoints", + "level": "error" + } + }, + { + "name": "spring.couchbase.env.endpoints.queryservice.min-endpoints", + "type": "java.lang.Integer", + "description": "Minimum number of sockets per node.", + "deprecation": { + "replacement": "spring.couchbase.env.io.min-endpoints", + "level": "error" + } + }, + { + "name": "spring.couchbase.env.endpoints.view", + "type": "java.lang.Integer", + "description": "Number of sockets per node against the view service.", + "deprecation": { + "level": "error" + } + }, + { + "name": "spring.couchbase.env.endpoints.viewservice.max-endpoints", + "type": "java.lang.Integer", + "description": "Maximum number of sockets per node.", + "deprecation": { + "replacement": "spring.couchbase.env.io.max-endpoints", + "level": "error" + } + }, + { + "name": "spring.couchbase.env.endpoints.viewservice.min-endpoints", + "type": "java.lang.Integer", + "description": "Minimum number of sockets per node.", + "deprecation": { + "replacement": "spring.couchbase.env.io.min-endpoints", + "level": "error" + } + }, + { + "name": "spring.couchbase.env.ssl.key-store", + "type": "java.lang.String", + "description": "Path to the JVM key store that holds the certificates.", + "deprecation": { + "replacement": "spring.couchbase.env.ssl.bundle", + "level": "error", + "since": "3.1.0" + } + }, + { + "name": "spring.couchbase.env.ssl.key-store-password", + "type": "java.lang.String", + "description": "Password used to access the key store.", + "deprecation": { + "replacement": "spring.couchbase.env.ssl.bundle", + "level": "error", + "since": "3.1.0" + } + }, + { + "name": "spring.couchbase.env.timeouts.socket-connect", + "type": "java.time.Duration", + "description": "Socket connect connections timeout.", + "deprecation": { + "level": "error" + } + } + ] +} diff --git a/spring-boot-project/spring-boot-couchbase/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/spring-boot-project/spring-boot-couchbase/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports new file mode 100644 index 00000000000..c4b36e13b3f --- /dev/null +++ b/spring-boot-project/spring-boot-couchbase/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -0,0 +1 @@ +org.springframework.boot.couchbase.autoconfigure.CouchbaseAutoConfiguration diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseAutoConfigurationTests.java b/spring-boot-project/spring-boot-couchbase/src/test/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseAutoConfigurationTests.java similarity index 99% rename from spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseAutoConfigurationTests.java rename to spring-boot-project/spring-boot-couchbase/src/test/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseAutoConfigurationTests.java index 1aa9074a59f..d99f2f423c1 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-couchbase/src/test/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseAutoConfigurationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.couchbase; +package org.springframework.boot.couchbase.autoconfigure; import java.time.Duration; import java.util.HashSet; @@ -37,8 +37,8 @@ import org.assertj.core.api.InstanceOfAssertFactories; import org.junit.jupiter.api.Test; import org.springframework.boot.autoconfigure.AutoConfigurations; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseAutoConfiguration.PropertiesCouchbaseConnectionDetails; import org.springframework.boot.autoconfigure.ssl.SslAutoConfiguration; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseAutoConfiguration.PropertiesCouchbaseConnectionDetails; import org.springframework.boot.jackson.autoconfigure.JacksonAutoConfiguration; import org.springframework.boot.ssl.NoSuchSslBundleException; import org.springframework.boot.test.context.runner.ApplicationContextRunner; diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/couchbase/CouchbasePropertiesTests.java b/spring-boot-project/spring-boot-couchbase/src/test/java/org/springframework/boot/couchbase/autoconfigure/CouchbasePropertiesTests.java similarity index 92% rename from spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/couchbase/CouchbasePropertiesTests.java rename to spring-boot-project/spring-boot-couchbase/src/test/java/org/springframework/boot/couchbase/autoconfigure/CouchbasePropertiesTests.java index 73213fd5681..f303d7cc0f6 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/couchbase/CouchbasePropertiesTests.java +++ b/spring-boot-project/spring-boot-couchbase/src/test/java/org/springframework/boot/couchbase/autoconfigure/CouchbasePropertiesTests.java @@ -14,14 +14,14 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.couchbase; +package org.springframework.boot.couchbase.autoconfigure; import com.couchbase.client.core.env.IoConfig; import com.couchbase.client.core.env.TimeoutConfig; import org.junit.jupiter.api.Test; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseProperties.Io; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseProperties.Timeouts; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseProperties.Io; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseProperties.Timeouts; import static org.assertj.core.api.Assertions.assertThat; diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseTestConfiguration.java b/spring-boot-project/spring-boot-couchbase/src/test/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseTestConfiguration.java similarity index 95% rename from spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseTestConfiguration.java rename to spring-boot-project/spring-boot-couchbase/src/test/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseTestConfiguration.java index 7f588ae56f3..aee3d8fb952 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/couchbase/CouchbaseTestConfiguration.java +++ b/spring-boot-project/spring-boot-couchbase/src/test/java/org/springframework/boot/couchbase/autoconfigure/CouchbaseTestConfiguration.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.couchbase; +package org.springframework.boot.couchbase.autoconfigure; import com.couchbase.client.core.env.Authenticator; import com.couchbase.client.java.Cluster; diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/resources/org/springframework/boot/autoconfigure/couchbase/key.crt b/spring-boot-project/spring-boot-couchbase/src/test/resources/org/springframework/boot/couchbase/autoconfigure/key.crt similarity index 100% rename from spring-boot-project/spring-boot-autoconfigure-all/src/test/resources/org/springframework/boot/autoconfigure/couchbase/key.crt rename to spring-boot-project/spring-boot-couchbase/src/test/resources/org/springframework/boot/couchbase/autoconfigure/key.crt diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/resources/org/springframework/boot/autoconfigure/couchbase/key.pem b/spring-boot-project/spring-boot-couchbase/src/test/resources/org/springframework/boot/couchbase/autoconfigure/key.pem similarity index 100% rename from spring-boot-project/spring-boot-autoconfigure-all/src/test/resources/org/springframework/boot/autoconfigure/couchbase/key.pem rename to spring-boot-project/spring-boot-couchbase/src/test/resources/org/springframework/boot/couchbase/autoconfigure/key.pem diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/resources/org/springframework/boot/autoconfigure/couchbase/keystore.jks b/spring-boot-project/spring-boot-couchbase/src/test/resources/org/springframework/boot/couchbase/autoconfigure/keystore.jks similarity index 100% rename from spring-boot-project/spring-boot-autoconfigure-all/src/test/resources/org/springframework/boot/autoconfigure/couchbase/keystore.jks rename to spring-boot-project/spring-boot-couchbase/src/test/resources/org/springframework/boot/couchbase/autoconfigure/keystore.jks diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/resources/org/springframework/boot/autoconfigure/couchbase/test.jks b/spring-boot-project/spring-boot-couchbase/src/test/resources/org/springframework/boot/couchbase/autoconfigure/test.jks similarity index 100% rename from spring-boot-project/spring-boot-autoconfigure-all/src/test/resources/org/springframework/boot/autoconfigure/couchbase/test.jks rename to spring-boot-project/spring-boot-couchbase/src/test/resources/org/springframework/boot/couchbase/autoconfigure/test.jks diff --git a/spring-boot-project/spring-boot-dependencies/build.gradle b/spring-boot-project/spring-boot-dependencies/build.gradle index 6c9e3eabc36..f3678ce815f 100644 --- a/spring-boot-project/spring-boot-dependencies/build.gradle +++ b/spring-boot-project/spring-boot-dependencies/build.gradle @@ -1994,6 +1994,7 @@ bom { "spring-boot-buildpack-platform", "spring-boot-configuration-metadata", "spring-boot-configuration-processor", + "spring-boot-couchbase", "spring-boot-data-jpa", "spring-boot-devtools", "spring-boot-docker-compose", diff --git a/spring-boot-project/spring-boot-docs/build.gradle b/spring-boot-project/spring-boot-docs/build.gradle index 5d4aee368de..515d45c6b9c 100644 --- a/spring-boot-project/spring-boot-docs/build.gradle +++ b/spring-boot-project/spring-boot-docs/build.gradle @@ -82,6 +82,7 @@ dependencies { autoConfiguration(project(path: ":spring-boot-project:spring-boot-autoconfigure", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-autoconfigure-all", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-batch", configuration: "autoConfigurationMetadata")) + autoConfiguration(project(path: ":spring-boot-project:spring-boot-couchbase", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-data-jpa", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-devtools", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-elasticsearch", configuration: "autoConfigurationMetadata")) @@ -118,6 +119,7 @@ dependencies { configurationProperties(project(path: ":spring-boot-project:spring-boot-autoconfigure", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-autoconfigure-all", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-batch", configuration: "configurationPropertiesMetadata")) + configurationProperties(project(path: ":spring-boot-project:spring-boot-couchbase", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-data-jpa", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-devtools", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-docker-compose", configuration: "configurationPropertiesMetadata")) diff --git a/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/data/nosql.adoc b/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/data/nosql.adoc index fabe6135279..2a3384b1921 100644 --- a/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/data/nosql.adoc +++ b/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/data/nosql.adoc @@ -602,7 +602,7 @@ spring: ---- TIP: Check the `spring.couchbase.env.*` properties for more details. -To take more control, one or more javadoc:org.springframework.boot.autoconfigure.couchbase.ClusterEnvironmentBuilderCustomizer[] beans can be used. +To take more control, one or more javadoc:org.springframework.boot.couchbase.autoconfigure.ClusterEnvironmentBuilderCustomizer[] beans can be used. diff --git a/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/testing/testcontainers.adoc b/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/testing/testcontainers.adoc index eeff13b63b4..50c79844ce6 100644 --- a/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/testing/testcontainers.adoc +++ b/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/testing/testcontainers.adoc @@ -128,7 +128,7 @@ The following service connection factories are provided in the `spring-boot-test | javadoc:org.springframework.boot.autoconfigure.cassandra.CassandraConnectionDetails[] | Containers of type javadoc:org.testcontainers.cassandra.CassandraContainer[] -| javadoc:org.springframework.boot.autoconfigure.couchbase.CouchbaseConnectionDetails[] +| javadoc:org.springframework.boot.couchbase.autoconfigure.CouchbaseConnectionDetails[] | Containers of type javadoc:org.testcontainers.couchbase.CouchbaseContainer[] | javadoc:org.springframework.boot.elasticsearch.autoconfigure.ElasticsearchConnectionDetails[] diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase-reactive/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase-reactive/build.gradle index f0831a41d62..88f373d05ef 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase-reactive/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase-reactive/build.gradle @@ -22,6 +22,7 @@ description = "Starter for using Couchbase document-oriented database and Spring dependencies { api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) + api(project(":spring-boot-project:spring-boot-couchbase")) api(project(":spring-boot-project:spring-boot-tx")) api("io.projectreactor:reactor-core") api("org.springframework.data:spring-data-couchbase") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase/build.gradle index 2c34b3f866c..5b310e7b5fa 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase/build.gradle @@ -22,6 +22,7 @@ description = "Starter for using Couchbase document-oriented database and Spring dependencies { api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) + api(project(":spring-boot-project:spring-boot-couchbase")) api(project(":spring-boot-project:spring-boot-tx")) api("org.springframework.data:spring-data-couchbase") } diff --git a/spring-boot-project/spring-boot-test-autoconfigure/build.gradle b/spring-boot-project/spring-boot-test-autoconfigure/build.gradle index bc1c48e7104..2ec6df3f903 100644 --- a/spring-boot-project/spring-boot-test-autoconfigure/build.gradle +++ b/spring-boot-project/spring-boot-test-autoconfigure/build.gradle @@ -53,6 +53,7 @@ dependencies { dockerTestRuntimeOnly("io.lettuce:lettuce-core") dockerTestRuntimeOnly("org.springframework.data:spring-data-redis") + optional(project(":spring-boot-project:spring-boot-couchbase")) optional(project(":spring-boot-project:spring-boot-data-jpa")) optional(project(":spring-boot-project:spring-boot-elasticsearch")) optional(project(":spring-boot-project:spring-boot-flyway")) diff --git a/spring-boot-project/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.test.autoconfigure.data.couchbase.AutoConfigureDataCouchbase.imports b/spring-boot-project/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.test.autoconfigure.data.couchbase.AutoConfigureDataCouchbase.imports index bd6a6cc5c81..5feba77efb8 100644 --- a/spring-boot-project/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.test.autoconfigure.data.couchbase.AutoConfigureDataCouchbase.imports +++ b/spring-boot-project/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.test.autoconfigure.data.couchbase.AutoConfigureDataCouchbase.imports @@ -1,6 +1,6 @@ # AutoConfigureDataCouchbase auto-configuration imports -org.springframework.boot.autoconfigure.couchbase.CouchbaseAutoConfiguration +org.springframework.boot.couchbase.autoconfigure.CouchbaseAutoConfiguration org.springframework.boot.autoconfigure.data.couchbase.CouchbaseDataAutoConfiguration org.springframework.boot.autoconfigure.data.couchbase.CouchbaseReactiveDataAutoConfiguration org.springframework.boot.autoconfigure.data.couchbase.CouchbaseReactiveRepositoriesAutoConfiguration diff --git a/spring-boot-project/spring-boot-testcontainers/build.gradle b/spring-boot-project/spring-boot-testcontainers/build.gradle index 3cb623a799c..2de5c77de17 100644 --- a/spring-boot-project/spring-boot-testcontainers/build.gradle +++ b/spring-boot-project/spring-boot-testcontainers/build.gradle @@ -29,6 +29,7 @@ dependencies { api(project(":spring-boot-project:spring-boot-autoconfigure-all")) api("org.testcontainers:testcontainers") + dockerTestImplementation(project(":spring-boot-project:spring-boot-couchbase")) dockerTestImplementation(project(":spring-boot-project:spring-boot-flyway")) dockerTestImplementation(project(":spring-boot-project:spring-boot-jdbc")) dockerTestImplementation(project(":spring-boot-project:spring-boot-kafka")) @@ -75,6 +76,7 @@ dependencies { optional(project(":spring-boot-project:spring-boot-amqp")) optional(project(":spring-boot-project:spring-boot-artemis")) optional(project(":spring-boot-project:spring-boot-actuator-autoconfigure")) + optional(project(":spring-boot-project:spring-boot-couchbase")) optional(project(":spring-boot-project:spring-boot-elasticsearch")) optional(project(":spring-boot-project:spring-boot-flyway")) optional(project(":spring-boot-project:spring-boot-hazelcast")) diff --git a/spring-boot-project/spring-boot-testcontainers/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/couchbase/CouchbaseContainerConnectionDetailsFactoryTests.java b/spring-boot-project/spring-boot-testcontainers/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/couchbase/CouchbaseContainerConnectionDetailsFactoryTests.java index 059fc2ef553..166e39e6534 100644 --- a/spring-boot-project/spring-boot-testcontainers/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/couchbase/CouchbaseContainerConnectionDetailsFactoryTests.java +++ b/spring-boot-project/spring-boot-testcontainers/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/couchbase/CouchbaseContainerConnectionDetailsFactoryTests.java @@ -26,8 +26,8 @@ import org.testcontainers.junit.jupiter.Testcontainers; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.ImportAutoConfiguration; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseAutoConfiguration; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseConnectionDetails; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseAutoConfiguration; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseConnectionDetails; import org.springframework.boot.testcontainers.service.connection.ServiceConnection; import org.springframework.boot.testsupport.container.TestImage; import org.springframework.context.annotation.Configuration; diff --git a/spring-boot-project/spring-boot-testcontainers/src/main/java/org/springframework/boot/testcontainers/service/connection/couchbase/CouchbaseContainerConnectionDetailsFactory.java b/spring-boot-project/spring-boot-testcontainers/src/main/java/org/springframework/boot/testcontainers/service/connection/couchbase/CouchbaseContainerConnectionDetailsFactory.java index 862ddc82bc0..df755604d00 100644 --- a/spring-boot-project/spring-boot-testcontainers/src/main/java/org/springframework/boot/testcontainers/service/connection/couchbase/CouchbaseContainerConnectionDetailsFactory.java +++ b/spring-boot-project/spring-boot-testcontainers/src/main/java/org/springframework/boot/testcontainers/service/connection/couchbase/CouchbaseContainerConnectionDetailsFactory.java @@ -18,7 +18,7 @@ package org.springframework.boot.testcontainers.service.connection.couchbase; import org.testcontainers.couchbase.CouchbaseContainer; -import org.springframework.boot.autoconfigure.couchbase.CouchbaseConnectionDetails; +import org.springframework.boot.couchbase.autoconfigure.CouchbaseConnectionDetails; import org.springframework.boot.ssl.SslBundle; import org.springframework.boot.testcontainers.service.connection.ContainerConnectionDetailsFactory; import org.springframework.boot.testcontainers.service.connection.ContainerConnectionSource;