From a7cff3d290e9baeb3d448ee6eb0336ecb4e4ca08 Mon Sep 17 00:00:00 2001 From: John Blum Date: Wed, 29 Aug 2018 14:56:01 -0700 Subject: [PATCH] Add section on disabling Spring Boot auto-configuration on a feature by feature basis. --- .../src/docs/asciidoc/appendix.adoc | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/spring-geode-docs/src/docs/asciidoc/appendix.adoc b/spring-geode-docs/src/docs/asciidoc/appendix.adoc index e54dbccf..71f99b13 100644 --- a/spring-geode-docs/src/docs/asciidoc/appendix.adoc +++ b/spring-geode-docs/src/docs/asciidoc/appendix.adoc @@ -347,6 +347,54 @@ It is pretty simple to build and run a Spring Boot, Apache Geode/Pivotal GemFire that connects to this cluster. Simply include and use Spring Boot for Apache Geode/Pivotal GemFire, ;-). +[[geode-auto-configuration-disable]] +=== Disabling Auto-configuration + +If you would like to disable the auto-configuration of any feature provided by Spring Boot for +Apache Geode/Pivotal GemFire, then you can specify the auto-configuration class in the `exclude` attribute +of the `@SpringBootApplication` annotation, as follows: + +.Disable Auto-configuration of PDX +[source,java] +---- +@SpringBootApplication(exclude = PdxSerializationAutoConfiguration.class) +public class MySpringBootApplication { + + public static void main(String[] args) { + SpringApplication.run(MySpringBootApplication.class, args); + } +} +---- + +Of course, you can disable more than 1 auto-configuration class at a time by specifying each class +in the `exclude` attribute using array syntax, as follows: + +.Disable Auto-configuration of PDX & SSL +[source,java] +---- +@SpringBootApplication(exclude = { PdxSerializationAutoConfiguration.class, SslAutoConfiguration.class }) +public class MySpringBootApplication { + + public static void main(String[] args) { + SpringApplication.run(MySpringBootApplication.class, args); + } +} +---- + +The current set of auto-configuration classes in Spring Boot for Apache Geode/Pivotal GemFire include: + +* `CachingProviderAutoConfiguration` +* `ClientCacheAutoConfiguration` +* `ClientSecurityAutoConfiguration` +* `ContinuousQueryAutoConfiguration` +* `FunctionExecutionAutoConfiguration` +* `PdxSerializationAutoConfiguration` +* `PeerSecurityAutoConfiguration` +* `RepositoriesAutoConfiguration` +* `SpringSessionAutoConfiguration` +* `SslAutoConfiguration` + + [[geode-testing]] === Testing