Make Audit events Web endpoint after parameter required

Closes gh-10322
This commit is contained in:
Vedran Pavic
2017-09-18 07:38:03 +02:00
committed by Stephane Nicoll
parent dd27682af2
commit b6b2fd4ce8
4 changed files with 84 additions and 0 deletions

View File

@@ -19,6 +19,7 @@ package org.springframework.boot.actuate.autoconfigure.audit;
import org.springframework.boot.actuate.audit.AuditEventRepository;
import org.springframework.boot.actuate.audit.AuditEventsEndpoint;
import org.springframework.boot.actuate.audit.AuditEventsJmxEndpointExtension;
import org.springframework.boot.actuate.audit.AuditEventsWebEndpointExtension;
import org.springframework.boot.actuate.autoconfigure.endpoint.condition.ConditionalOnEnabledEndpoint;
import org.springframework.boot.actuate.logging.LoggersEndpoint;
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
@@ -33,6 +34,7 @@ import org.springframework.context.annotation.Configuration;
*
* @author Phillip Webb
* @author Andy Wilkinson
* @author Vedran Pavic
* @since 2.0.0
*/
@Configuration
@@ -57,4 +59,13 @@ public class AuditEventsEndpointAutoConfiguration {
return new AuditEventsJmxEndpointExtension(auditEventsEndpoint);
}
@Bean
@ConditionalOnMissingBean
@ConditionalOnEnabledEndpoint
@ConditionalOnBean(AuditEventsEndpoint.class)
public AuditEventsWebEndpointExtension auditEventsWebEndpointExtension(
AuditEventsEndpoint auditEventsEndpoint) {
return new AuditEventsWebEndpointExtension(auditEventsEndpoint);
}
}

View File

@@ -20,6 +20,7 @@ import org.junit.Test;
import org.springframework.boot.actuate.audit.AuditEventsEndpoint;
import org.springframework.boot.actuate.audit.AuditEventsJmxEndpointExtension;
import org.springframework.boot.actuate.audit.AuditEventsWebEndpointExtension;
import org.springframework.boot.autoconfigure.AutoConfigurations;
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
@@ -30,6 +31,7 @@ import static org.assertj.core.api.Assertions.assertThat;
*
* @author Andy Wilkinson
* @author Phillip Webb
* @author Vedran Pavic
*/
public class AuditEventsEndpointAutoConfigurationTests {
@@ -49,6 +51,12 @@ public class AuditEventsEndpointAutoConfigurationTests {
.hasSingleBean(AuditEventsJmxEndpointExtension.class));
}
@Test
public void runShouldHaveWebExtensionBean() {
this.contextRunner.run((context) -> assertThat(context)
.hasSingleBean(AuditEventsWebEndpointExtension.class));
}
@Test
public void runWhenEnabledPropertyIsFalseShouldNotHaveEndpointOrExtensionBean()
throws Exception {