diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraHealthContributorAutoConfiguration.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraHealthContributorAutoConfiguration.java index c15a049c18..23602f3ccb 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraHealthContributorAutoConfiguration.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraHealthContributorAutoConfiguration.java @@ -19,9 +19,8 @@ package org.springframework.boot.actuate.autoconfigure.cassandra; import com.datastax.oss.driver.api.core.CqlSession; import org.springframework.boot.actuate.autoconfigure.cassandra.CassandraHealthContributorConfigurations.CassandraDriverConfiguration; -import org.springframework.boot.actuate.autoconfigure.cassandra.CassandraHealthContributorConfigurations.CassandraOperationsConfiguration; import org.springframework.boot.actuate.autoconfigure.health.ConditionalOnEnabledHealthIndicator; -import org.springframework.boot.actuate.cassandra.CassandraHealthIndicator; +import org.springframework.boot.actuate.cassandra.CassandraDriverHealthIndicator; import org.springframework.boot.autoconfigure.AutoConfigureAfter; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.cassandra.CassandraAutoConfiguration; @@ -32,7 +31,7 @@ import org.springframework.context.annotation.Import; /** * {@link EnableAutoConfiguration Auto-configuration} for - * {@link CassandraHealthIndicator}. + * {@link CassandraDriverHealthIndicator}. * * @author Julien Dubois * @author Stephane Nicoll @@ -43,7 +42,9 @@ import org.springframework.context.annotation.Import; @ConditionalOnEnabledHealthIndicator("cassandra") @AutoConfigureAfter({ CassandraAutoConfiguration.class, CassandraDataAutoConfiguration.class, CassandraReactiveHealthContributorAutoConfiguration.class }) -@Import({ CassandraOperationsConfiguration.class, CassandraDriverConfiguration.class }) +@Import({ CassandraDriverConfiguration.class, + CassandraHealthContributorConfigurations.CassandraOperationsConfiguration.class }) +@SuppressWarnings("deprecation") public class CassandraHealthContributorAutoConfiguration { } diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraHealthContributorConfigurations.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraHealthContributorConfigurations.java index a618380a4f..b3ff97fe0e 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraHealthContributorConfigurations.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraHealthContributorConfigurations.java @@ -24,8 +24,6 @@ import org.springframework.boot.actuate.autoconfigure.health.CompositeHealthCont import org.springframework.boot.actuate.autoconfigure.health.CompositeReactiveHealthContributorConfiguration; import org.springframework.boot.actuate.cassandra.CassandraDriverHealthIndicator; import org.springframework.boot.actuate.cassandra.CassandraDriverReactiveHealthIndicator; -import org.springframework.boot.actuate.cassandra.CassandraHealthIndicator; -import org.springframework.boot.actuate.cassandra.CassandraReactiveHealthIndicator; import org.springframework.boot.actuate.health.HealthContributor; import org.springframework.boot.actuate.health.ReactiveHealthContributor; import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; @@ -59,8 +57,9 @@ class CassandraHealthContributorConfigurations { @Configuration(proxyBeanMethods = false) @ConditionalOnClass(CassandraOperations.class) @ConditionalOnBean(CassandraOperations.class) - static class CassandraOperationsConfiguration - extends CompositeHealthContributorConfiguration { + @Deprecated + static class CassandraOperationsConfiguration extends + CompositeHealthContributorConfiguration { @Bean @ConditionalOnMissingBean(name = { "cassandraHealthIndicator", "cassandraHealthContributor" }) @@ -86,8 +85,9 @@ class CassandraHealthContributorConfigurations { @Configuration(proxyBeanMethods = false) @ConditionalOnClass(ReactiveCassandraOperations.class) @ConditionalOnBean(ReactiveCassandraOperations.class) + @Deprecated static class CassandraReactiveOperationsConfiguration extends - CompositeReactiveHealthContributorConfiguration { + CompositeReactiveHealthContributorConfiguration { @Bean @ConditionalOnMissingBean(name = { "cassandraHealthIndicator", "cassandraHealthContributor" }) diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraReactiveHealthContributorAutoConfiguration.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraReactiveHealthContributorAutoConfiguration.java index b6fbfdd7c8..14f26a5f31 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraReactiveHealthContributorAutoConfiguration.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraReactiveHealthContributorAutoConfiguration.java @@ -19,9 +19,8 @@ import com.datastax.oss.driver.api.core.CqlSession; import reactor.core.publisher.Flux; import org.springframework.boot.actuate.autoconfigure.cassandra.CassandraHealthContributorConfigurations.CassandraReactiveDriverConfiguration; -import org.springframework.boot.actuate.autoconfigure.cassandra.CassandraHealthContributorConfigurations.CassandraReactiveOperationsConfiguration; import org.springframework.boot.actuate.autoconfigure.health.ConditionalOnEnabledHealthIndicator; -import org.springframework.boot.actuate.cassandra.CassandraReactiveHealthIndicator; +import org.springframework.boot.actuate.cassandra.CassandraDriverReactiveHealthIndicator; import org.springframework.boot.autoconfigure.AutoConfigureAfter; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; @@ -31,7 +30,7 @@ import org.springframework.context.annotation.Import; /** * {@link EnableAutoConfiguration Auto-configuration} for - * {@link CassandraReactiveHealthIndicator}. + * {@link CassandraDriverReactiveHealthIndicator}. * * @author Artsiom Yudovin * @author Stephane Nicoll @@ -41,7 +40,9 @@ import org.springframework.context.annotation.Import; @ConditionalOnClass({ CqlSession.class, Flux.class }) @ConditionalOnEnabledHealthIndicator("cassandra") @AutoConfigureAfter(CassandraReactiveDataAutoConfiguration.class) -@Import({ CassandraReactiveOperationsConfiguration.class, CassandraReactiveDriverConfiguration.class }) +@Import({ CassandraReactiveDriverConfiguration.class, + CassandraHealthContributorConfigurations.CassandraReactiveOperationsConfiguration.class }) +@SuppressWarnings("deprecation") public class CassandraReactiveHealthContributorAutoConfiguration { } diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraHealthContributorAutoConfigurationTests.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraHealthContributorAutoConfigurationTests.java index 21c5a00c5d..3e6e09d25e 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraHealthContributorAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraHealthContributorAutoConfigurationTests.java @@ -21,7 +21,6 @@ import org.junit.jupiter.api.Test; import org.springframework.boot.actuate.autoconfigure.health.HealthContributorAutoConfiguration; import org.springframework.boot.actuate.cassandra.CassandraDriverHealthIndicator; -import org.springframework.boot.actuate.cassandra.CassandraHealthIndicator; import org.springframework.boot.autoconfigure.AutoConfigurations; import org.springframework.boot.test.context.FilteredClassLoader; import org.springframework.boot.test.context.runner.ApplicationContextRunner; @@ -36,6 +35,7 @@ import static org.mockito.Mockito.mock; * @author Phillip Webb * @author Stephane Nicoll */ +@SuppressWarnings("deprecation") class CassandraHealthContributorAutoConfigurationTests { private final ApplicationContextRunner contextRunner = new ApplicationContextRunner() @@ -45,21 +45,31 @@ class CassandraHealthContributorAutoConfigurationTests { @Test void runWithoutCqlSessionOrCassandraOperationsShouldNotCreateIndicator() { this.contextRunner.run((context) -> assertThat(context).doesNotHaveBean("cassandraHealthContributor") - .doesNotHaveBean(CassandraHealthIndicator.class).doesNotHaveBean(CassandraDriverHealthIndicator.class)); - } - - @Test - void runWithCassandraOperationsShouldCreateRegularIndicator() { - this.contextRunner.withBean(CqlSession.class, () -> mock(CqlSession.class)) - .withBean(CassandraOperations.class, () -> mock(CassandraOperations.class)) - .run((context) -> assertThat(context).hasSingleBean(CassandraHealthIndicator.class) - .doesNotHaveBean(CassandraDriverHealthIndicator.class)); + .doesNotHaveBean(org.springframework.boot.actuate.cassandra.CassandraHealthIndicator.class) + .doesNotHaveBean(CassandraDriverHealthIndicator.class)); } @Test void runWithCqlSessionOnlyShouldCreateDriverIndicator() { - this.contextRunner.withBean(CqlSession.class, () -> mock(CqlSession.class)).run((context) -> assertThat(context) - .hasSingleBean(CassandraDriverHealthIndicator.class).doesNotHaveBean(CassandraHealthIndicator.class)); + this.contextRunner.withBean(CqlSession.class, () -> mock(CqlSession.class)) + .run((context) -> assertThat(context).hasSingleBean(CassandraDriverHealthIndicator.class) + .doesNotHaveBean(org.springframework.boot.actuate.cassandra.CassandraHealthIndicator.class)); + } + + @Test + void runWithCassandraOperationsOnlyShouldCreateRegularIndicator() { + this.contextRunner.withBean(CassandraOperations.class, () -> mock(CassandraOperations.class)) + .run((context) -> assertThat(context) + .hasSingleBean(org.springframework.boot.actuate.cassandra.CassandraHealthIndicator.class) + .doesNotHaveBean(CassandraDriverHealthIndicator.class)); + } + + @Test + void runWithCqlSessionAndCassandraOperationsShouldCreateDriverIndicator() { + this.contextRunner.withBean(CqlSession.class, () -> mock(CqlSession.class)) + .withBean(CassandraOperations.class, () -> mock(CassandraOperations.class)) + .run((context) -> assertThat(context).hasSingleBean(CassandraDriverHealthIndicator.class) + .doesNotHaveBean(org.springframework.boot.actuate.cassandra.CassandraHealthIndicator.class)); } @Test @@ -67,7 +77,7 @@ class CassandraHealthContributorAutoConfigurationTests { this.contextRunner.withBean(CqlSession.class, () -> mock(CqlSession.class)) .withClassLoader(new FilteredClassLoader("org.springframework.data")) .run((context) -> assertThat(context).hasSingleBean(CassandraDriverHealthIndicator.class) - .doesNotHaveBean(CassandraHealthIndicator.class)); + .doesNotHaveBean(org.springframework.boot.actuate.cassandra.CassandraHealthIndicator.class)); } @Test @@ -76,7 +86,7 @@ class CassandraHealthContributorAutoConfigurationTests { .withBean(CassandraOperations.class, () -> mock(CassandraOperations.class)) .withPropertyValues("management.health.cassandra.enabled:false") .run((context) -> assertThat(context).doesNotHaveBean("cassandraHealthContributor") - .doesNotHaveBean(CassandraHealthIndicator.class) + .doesNotHaveBean(org.springframework.boot.actuate.cassandra.CassandraHealthIndicator.class) .doesNotHaveBean(CassandraDriverHealthIndicator.class)); } diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraReactiveHealthContributorAutoConfigurationTests.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraReactiveHealthContributorAutoConfigurationTests.java index 81cff2bee5..21bb7d94d9 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraReactiveHealthContributorAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/cassandra/CassandraReactiveHealthContributorAutoConfigurationTests.java @@ -22,8 +22,6 @@ import org.junit.jupiter.api.Test; import org.springframework.boot.actuate.autoconfigure.health.HealthContributorAutoConfiguration; import org.springframework.boot.actuate.cassandra.CassandraDriverHealthIndicator; import org.springframework.boot.actuate.cassandra.CassandraDriverReactiveHealthIndicator; -import org.springframework.boot.actuate.cassandra.CassandraHealthIndicator; -import org.springframework.boot.actuate.cassandra.CassandraReactiveHealthIndicator; import org.springframework.boot.autoconfigure.AutoConfigurations; import org.springframework.boot.test.context.FilteredClassLoader; import org.springframework.boot.test.context.runner.ApplicationContextRunner; @@ -39,6 +37,7 @@ import static org.mockito.Mockito.mock; * @author Artsiom Yudovin * @author Stephane Nicoll */ +@SuppressWarnings("deprecation") class CassandraReactiveHealthContributorAutoConfigurationTests { private final ApplicationContextRunner contextRunner = new ApplicationContextRunner() @@ -48,37 +47,50 @@ class CassandraReactiveHealthContributorAutoConfigurationTests { @Test void runWithoutCqlSessionOrReactiveCassandraOperationsShouldNotCreateIndicator() { this.contextRunner.run((context) -> assertThat(context).doesNotHaveBean("cassandraHealthContributor") - .doesNotHaveBean(CassandraReactiveHealthIndicator.class) + .doesNotHaveBean(org.springframework.boot.actuate.cassandra.CassandraReactiveHealthIndicator.class) .doesNotHaveBean(CassandraDriverReactiveHealthIndicator.class)); } @Test - void runWithReactiveCassandraOperationsShouldOnlyCreateReactiveIndicator() { + void runWithCqlSessionOnlyShouldCreateDriverIndicator() { this.contextRunner.withBean(CqlSession.class, () -> mock(CqlSession.class)) - .withBean(ReactiveCassandraOperations.class, () -> mock(ReactiveCassandraOperations.class)) + .run((context) -> assertThat(context).hasBean("cassandraHealthContributor") + .hasSingleBean(CassandraDriverReactiveHealthIndicator.class).doesNotHaveBean( + org.springframework.boot.actuate.cassandra.CassandraReactiveHealthIndicator.class)); + } + + @Test + void runWithReactiveCassandraOperationsOnlyShouldCreateReactiveIndicator() { + this.contextRunner.withBean(ReactiveCassandraOperations.class, () -> mock(ReactiveCassandraOperations.class)) .withBean(CassandraOperations.class, () -> mock(CassandraOperations.class)) .run((context) -> assertThat(context).hasBean("cassandraHealthContributor") - .hasSingleBean(CassandraReactiveHealthIndicator.class) + .hasSingleBean( + org.springframework.boot.actuate.cassandra.CassandraReactiveHealthIndicator.class) .doesNotHaveBean(CassandraDriverReactiveHealthIndicator.class) - .doesNotHaveBean(CassandraHealthIndicator.class) + .doesNotHaveBean(org.springframework.boot.actuate.cassandra.CassandraHealthIndicator.class) .doesNotHaveBean(CassandraDriverHealthIndicator.class)); } @Test - void runWithCqlSessionShouldCreateDriverIndicator() { + void runWithCqlSessionAndReactiveCassandraOperationsShouldCreateDriverIndicator() { this.contextRunner.withBean(CqlSession.class, () -> mock(CqlSession.class)) + .withBean(ReactiveCassandraOperations.class, () -> mock(ReactiveCassandraOperations.class)) + .withBean(CassandraOperations.class, () -> mock(CassandraOperations.class)) .run((context) -> assertThat(context).hasBean("cassandraHealthContributor") .hasSingleBean(CassandraDriverReactiveHealthIndicator.class) - .doesNotHaveBean(CassandraReactiveHealthIndicator.class)); + .doesNotHaveBean( + org.springframework.boot.actuate.cassandra.CassandraReactiveHealthIndicator.class) + .doesNotHaveBean(org.springframework.boot.actuate.cassandra.CassandraHealthIndicator.class) + .doesNotHaveBean(CassandraDriverHealthIndicator.class)); } @Test - void runWithCqlSessionAndSpringDataAbsentShouldACreateDriverIndicator() { + void runWithCqlSessionAndSpringDataAbsentShouldCreateDriverIndicator() { this.contextRunner.withBean(CqlSession.class, () -> mock(CqlSession.class)) .withClassLoader(new FilteredClassLoader("org.springframework.data")) .run((context) -> assertThat(context).hasBean("cassandraHealthContributor") - .hasSingleBean(CassandraDriverReactiveHealthIndicator.class) - .doesNotHaveBean(CassandraReactiveHealthIndicator.class)); + .hasSingleBean(CassandraDriverReactiveHealthIndicator.class).doesNotHaveBean( + org.springframework.boot.actuate.cassandra.CassandraReactiveHealthIndicator.class)); } @Test @@ -86,8 +98,8 @@ class CassandraReactiveHealthContributorAutoConfigurationTests { this.contextRunner.withBean(CqlSession.class, () -> mock(CqlSession.class)) .withBean(ReactiveCassandraOperations.class, () -> mock(ReactiveCassandraOperations.class)) .withPropertyValues("management.health.cassandra.enabled:false") - .run((context) -> assertThat(context).doesNotHaveBean("cassandraHealthContributor") - .doesNotHaveBean(CassandraReactiveHealthIndicator.class)); + .run((context) -> assertThat(context).doesNotHaveBean("cassandraHealthContributor").doesNotHaveBean( + org.springframework.boot.actuate.cassandra.CassandraReactiveHealthIndicator.class)); } } diff --git a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/cassandra/CassandraHealthIndicator.java b/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/cassandra/CassandraHealthIndicator.java index a02d5fe398..2b15f4e8b3 100644 --- a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/cassandra/CassandraHealthIndicator.java +++ b/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/cassandra/CassandraHealthIndicator.java @@ -32,7 +32,9 @@ import org.springframework.util.Assert; * @author Julien Dubois * @author Alexandre Dutra * @since 2.0.0 + * @deprecated since 2.4.0 in favor of {@link CassandraDriverHealthIndicator} */ +@Deprecated public class CassandraHealthIndicator extends AbstractHealthIndicator { private static final SimpleStatement SELECT = SimpleStatement diff --git a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/cassandra/CassandraReactiveHealthIndicator.java b/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/cassandra/CassandraReactiveHealthIndicator.java index eed0b2df71..12375aff5b 100644 --- a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/cassandra/CassandraReactiveHealthIndicator.java +++ b/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/cassandra/CassandraReactiveHealthIndicator.java @@ -30,7 +30,9 @@ import org.springframework.util.Assert; * * @author Artsiom Yudovin * @since 2.1.0 + * @deprecated since 2.4.0 in favor of {@link CassandraDriverHealthIndicator} */ +@Deprecated public class CassandraReactiveHealthIndicator extends AbstractReactiveHealthIndicator { private static final SimpleStatement SELECT = SimpleStatement diff --git a/spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/cassandra/CassandraHealthIndicatorTests.java b/spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/cassandra/CassandraHealthIndicatorTests.java index d07274bed9..8044c99fc3 100644 --- a/spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/cassandra/CassandraHealthIndicatorTests.java +++ b/spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/cassandra/CassandraHealthIndicatorTests.java @@ -38,6 +38,7 @@ import static org.mockito.Mockito.mock; * @author Oleksii Bondar * @author Stephane Nicoll */ +@Deprecated class CassandraHealthIndicatorTests { @Test diff --git a/spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/cassandra/CassandraReactiveHealthIndicatorTests.java b/spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/cassandra/CassandraReactiveHealthIndicatorTests.java index b795e3d783..5ac7de6c06 100644 --- a/spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/cassandra/CassandraReactiveHealthIndicatorTests.java +++ b/spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/cassandra/CassandraReactiveHealthIndicatorTests.java @@ -37,6 +37,7 @@ import static org.mockito.Mockito.mock; * * @author Artsiom Yudovin */ +@Deprecated class CassandraReactiveHealthIndicatorTests { @Test diff --git a/spring-boot-project/spring-boot-docs/src/docs/asciidoc/production-ready-features.adoc b/spring-boot-project/spring-boot-docs/src/docs/asciidoc/production-ready-features.adoc index f343afacb5..884fcf600e 100644 --- a/spring-boot-project/spring-boot-docs/src/docs/asciidoc/production-ready-features.adoc +++ b/spring-boot-project/spring-boot-docs/src/docs/asciidoc/production-ready-features.adoc @@ -679,7 +679,7 @@ with the `key` listed in the table below. ======= | `cassandra` -| {spring-boot-actuator-module-code}/cassandra/CassandraHealthIndicator.java[`CassandraHealthIndicator`] or {spring-boot-actuator-module-code}/cassandra/CassandraDriverHealthIndicator.java[`CassandraDriverHealthIndicator`] +| {spring-boot-actuator-module-code}/cassandra/CassandraDriverHealthIndicator.java[`CassandraDriverHealthIndicator`] | Checks that a Cassandra database is up. | `couchbase` @@ -878,7 +878,7 @@ The following `ReactiveHealthIndicators` are auto-configured by Spring Boot when |=== | Name | Description -| {spring-boot-actuator-module-code}/cassandra/CassandraReactiveHealthIndicator.java[`CassandraReactiveHealthIndicator`] or {spring-boot-actuator-module-code}/cassandra/CassandraDriverReactiveHealthIndicator.java[`CassandraDriverReactiveHealthIndicator`] +| {spring-boot-actuator-module-code}/cassandra/CassandraDriverReactiveHealthIndicator.java[`CassandraDriverReactiveHealthIndicator`] | Checks that a Cassandra database is up. | {spring-boot-actuator-module-code}/couchbase/CouchbaseReactiveHealthIndicator.java[`CouchbaseReactiveHealthIndicator`]