From 63e4e3b8d6551be4a0f81c37d07650b369cb8337 Mon Sep 17 00:00:00 2001 From: Matthew Reid Date: Mon, 9 Jan 2017 19:37:48 +0000 Subject: [PATCH] Allow lifecycle endpoints to be globally disabled using endpoints.enabled property (#148) fixes gh-158 --- .../context/restart/RestartEndpoint.java | 2 ++ .../LifecycleMvcAutoConfigurationTests.java | 25 +++++++++++++++---- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/spring-cloud-context/src/main/java/org/springframework/cloud/context/restart/RestartEndpoint.java b/spring-cloud-context/src/main/java/org/springframework/cloud/context/restart/RestartEndpoint.java index 9ed0d82f..70bb0616 100644 --- a/spring-cloud-context/src/main/java/org/springframework/cloud/context/restart/RestartEndpoint.java +++ b/spring-cloud-context/src/main/java/org/springframework/cloud/context/restart/RestartEndpoint.java @@ -114,6 +114,7 @@ public class RestartEndpoint extends AbstractEndpoint return new ResumeEndpoint(); } + @ConfigurationProperties("endpoints") public class PauseEndpoint extends AbstractEndpoint { public PauseEndpoint() { @@ -130,6 +131,7 @@ public class RestartEndpoint extends AbstractEndpoint } } + @ConfigurationProperties("endpoints") public class ResumeEndpoint extends AbstractEndpoint { public ResumeEndpoint() { diff --git a/spring-cloud-context/src/test/java/org/springframework/cloud/autoconfigure/LifecycleMvcAutoConfigurationTests.java b/spring-cloud-context/src/test/java/org/springframework/cloud/autoconfigure/LifecycleMvcAutoConfigurationTests.java index 78270451..7ac7b28d 100644 --- a/spring-cloud-context/src/test/java/org/springframework/cloud/autoconfigure/LifecycleMvcAutoConfigurationTests.java +++ b/spring-cloud-context/src/test/java/org/springframework/cloud/autoconfigure/LifecycleMvcAutoConfigurationTests.java @@ -1,5 +1,10 @@ package org.springframework.cloud.autoconfigure; +import static org.hamcrest.Matchers.equalTo; +import static org.hamcrest.Matchers.instanceOf; +import static org.hamcrest.Matchers.is; +import static org.junit.Assert.assertThat; + import org.junit.Test; import org.springframework.boot.actuate.endpoint.mvc.EndpointMvcAdapter; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; @@ -10,11 +15,6 @@ import org.springframework.context.annotation.Configuration; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; -import static org.hamcrest.Matchers.equalTo; -import static org.hamcrest.Matchers.instanceOf; -import static org.hamcrest.Matchers.is; -import static org.junit.Assert.assertThat; - /** * @author Spencer Gibb */ @@ -44,6 +44,21 @@ public class LifecycleMvcAutoConfigurationTests { public void restartMvcEndpointDisabled() { endpointDisabled("endpoints.restart.enabled", "restartMvcEndpoint"); } + + @Test + public void pauseMvcEndpointGloballyDisabled() { + endpointDisabled("endpoints.enabled", "pauseMvcEndpoint"); + } + + @Test + public void resumeMvcEndpointGloballyDisabled() { + endpointDisabled("endpoints.enabled", "resumeMvcEndpoint"); + } + + @Test + public void restartMvcEndpointGloballyDisabled() { + endpointDisabled("endpoints.enabled", "restartMvcEndpoint"); + } private void endpointDisabled(String enabledProp, String beanName) { try (ConfigurableApplicationContext context = getApplicationContext(Config.class,