diff --git a/spring-geode-tests/smoke-tests/locator-application/src/main/java/example/app/geode/locator/SpringBootApacheGeodeLocatorApplication.java b/spring-geode-tests/smoke-tests/locator-application/src/main/java/example/app/geode/locator/SpringBootApacheGeodeLocatorApplication.java index 1cf59da6..5cfb7bdd 100644 --- a/spring-geode-tests/smoke-tests/locator-application/src/main/java/example/app/geode/locator/SpringBootApacheGeodeLocatorApplication.java +++ b/spring-geode-tests/smoke-tests/locator-application/src/main/java/example/app/geode/locator/SpringBootApacheGeodeLocatorApplication.java @@ -15,13 +15,17 @@ */ package example.app.geode.locator; +import java.util.Scanner; + import org.apache.geode.distributed.Locator; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.context.ConfigurableApplicationContext; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Profile; +import org.springframework.core.env.Environment; import org.springframework.data.gemfire.GemFireProperties; import org.springframework.data.gemfire.config.annotation.LocatorApplication; import org.springframework.data.gemfire.config.annotation.LocatorConfigurer; @@ -45,7 +49,11 @@ import org.springframework.data.gemfire.config.annotation.LocatorConfigurer; public class SpringBootApacheGeodeLocatorApplication { public static void main(String[] args) { - SpringApplication.run(SpringBootApacheGeodeLocatorApplication.class, args); + + ConfigurableApplicationContext applicationContext = + SpringApplication.run(SpringBootApacheGeodeLocatorApplication.class, args); + + block(applicationContext.getEnvironment()); } @Bean @@ -56,4 +64,12 @@ public class SpringBootApacheGeodeLocatorApplication { return (beanName, bean) -> bean.getGemFireProperties() .setProperty(GemFireProperties.LOCATORS.toString(), locators); } + + private static void block(Environment environment) { + + if (environment.getProperty("spring.boot.data.geode.locator.prompt-for-shutdown", Boolean.class, false)) { + System.err.println("Press to exit."); + new Scanner(System.in).nextLine(); + } + } }