Format with Eclipse Oxygen SR2

pull/11515/merge
Andy Wilkinson 7 years ago
parent b4f4dd3fdd
commit 76a450dfba

@ -115,9 +115,8 @@ public class CloudFoundryActuatorAutoConfiguration {
String cloudControllerUrl = environment.getProperty("vcap.application.cf_api");
boolean skipSslValidation = environment.getProperty(
"management.cloudfoundry.skip-ssl-validation", Boolean.class, false);
return (cloudControllerUrl == null ? null
: new CloudFoundrySecurityService(restTemplateBuilder, cloudControllerUrl,
skipSslValidation));
return (cloudControllerUrl == null ? null : new CloudFoundrySecurityService(
restTemplateBuilder, cloudControllerUrl, skipSslValidation));
}
private CorsConfiguration getCorsConfiguration() {

@ -58,7 +58,8 @@ public class PropertiesMeterFilter implements MeterFilter {
public HistogramConfig configure(Meter.Id id, HistogramConfig config) {
HistogramConfig.Builder builder = HistogramConfig.builder();
Distribution distribution = this.properties.getDistribution();
builder.percentilesHistogram(lookup(distribution.getPercentilesHistogram(), id, null));
builder.percentilesHistogram(
lookup(distribution.getPercentilesHistogram(), id, null));
builder.percentiles(lookup(distribution.getPercentiles(), id, null));
builder.sla(convertSla(id.getType(), lookup(distribution.getSla(), id, null)));
return builder.build().merge(config);

@ -134,8 +134,7 @@ class ServletManagementChildContextConfiguration {
accessLogValve.setPrefix(customizePrefix(accessLogValve.getPrefix()));
}
private AccessLogValve findAccessLogValve(
TomcatServletWebServerFactory factory) {
private AccessLogValve findAccessLogValve(TomcatServletWebServerFactory factory) {
for (Valve engineValve : factory.getEngineValves()) {
if (engineValve instanceof AccessLogValve) {
return (AccessLogValve) engineValve;
@ -151,8 +150,7 @@ class ServletManagementChildContextConfiguration {
@Override
public void customize(UndertowServletWebServerFactory factory) {
factory.setAccessLogPrefix(
customizePrefix(factory.getAccessLogPrefix()));
factory.setAccessLogPrefix(customizePrefix(factory.getAccessLogPrefix()));
}
}

@ -101,15 +101,13 @@ public class CloudFoundryWebFluxEndpointIntegrationTests {
@Test
public void responseToOptionsRequestIncludesCorsHeaders() {
load(TestEndpointConfiguration.class,
(client) -> client.options().uri("/cfApplication/test")
.accept(MediaType.APPLICATION_JSON)
.header("Access-Control-Request-Method", "POST")
.header("Origin", "http://example.com").exchange().expectStatus()
.isOk().expectHeader()
.valueEquals("Access-Control-Allow-Origin", "http://example.com")
.expectHeader()
.valueEquals("Access-Control-Allow-Methods", "GET,POST"));
load(TestEndpointConfiguration.class, (client) -> client.options()
.uri("/cfApplication/test").accept(MediaType.APPLICATION_JSON)
.header("Access-Control-Request-Method", "POST")
.header("Origin", "http://example.com").exchange().expectStatus().isOk()
.expectHeader()
.valueEquals("Access-Control-Allow-Origin", "http://example.com")
.expectHeader().valueEquals("Access-Control-Allow-Methods", "GET,POST"));
}
@Test
@ -117,21 +115,19 @@ public class CloudFoundryWebFluxEndpointIntegrationTests {
given(tokenValidator.validate(any())).willReturn(Mono.empty());
given(securityService.getAccessLevel(any(), eq("app-id")))
.willReturn(Mono.just(AccessLevel.FULL));
load(TestEndpointConfiguration.class,
(client) -> client.get().uri("/cfApplication")
.accept(MediaType.APPLICATION_JSON)
.header("Authorization", "bearer " + mockAccessToken()).exchange()
.expectStatus().isOk().expectBody().jsonPath("_links.length()")
.isEqualTo(5).jsonPath("_links.self.href").isNotEmpty()
.jsonPath("_links.self.templated").isEqualTo(false)
.jsonPath("_links.info.href").isNotEmpty()
.jsonPath("_links.info.templated").isEqualTo(false)
.jsonPath("_links.env.href").isNotEmpty()
.jsonPath("_links.env.templated").isEqualTo(false)
.jsonPath("_links.test.href").isNotEmpty()
.jsonPath("_links.test.templated").isEqualTo(false)
.jsonPath("_links.test-part.href").isNotEmpty()
.jsonPath("_links.test-part.templated").isEqualTo(true));
load(TestEndpointConfiguration.class, (client) -> client.get()
.uri("/cfApplication").accept(MediaType.APPLICATION_JSON)
.header("Authorization", "bearer " + mockAccessToken()).exchange()
.expectStatus().isOk().expectBody().jsonPath("_links.length()")
.isEqualTo(5).jsonPath("_links.self.href").isNotEmpty()
.jsonPath("_links.self.templated").isEqualTo(false)
.jsonPath("_links.info.href").isNotEmpty()
.jsonPath("_links.info.templated").isEqualTo(false)
.jsonPath("_links.env.href").isNotEmpty().jsonPath("_links.env.templated")
.isEqualTo(false).jsonPath("_links.test.href").isNotEmpty()
.jsonPath("_links.test.templated").isEqualTo(false)
.jsonPath("_links.test-part.href").isNotEmpty()
.jsonPath("_links.test-part.templated").isEqualTo(true));
}
@Test

@ -96,10 +96,9 @@ public class ReactiveCloudFoundrySecurityInterceptorTests {
.from(MockServerHttpRequest.get("/a")
.header(HttpHeaders.AUTHORIZATION, "bearer " + mockAccessToken())
.build());
StepVerifier.create(this.interceptor.preHandle(request, "/a"))
.consumeErrorWith((ex) -> assertThat(
((CloudFoundryAuthorizationException) ex).getReason())
.isEqualTo(Reason.SERVICE_UNAVAILABLE))
StepVerifier.create(this.interceptor.preHandle(request, "/a")).consumeErrorWith(
(ex) -> assertThat(((CloudFoundryAuthorizationException) ex).getReason())
.isEqualTo(Reason.SERVICE_UNAVAILABLE))
.verify();
}
@ -109,10 +108,9 @@ public class ReactiveCloudFoundrySecurityInterceptorTests {
"my-app-id");
MockServerWebExchange request = MockServerWebExchange.from(MockServerHttpRequest
.get("/a").header(HttpHeaders.AUTHORIZATION, mockAccessToken()).build());
StepVerifier.create(this.interceptor.preHandle(request, "/a"))
.consumeErrorWith((ex) -> assertThat(
((CloudFoundryAuthorizationException) ex).getReason())
.isEqualTo(Reason.SERVICE_UNAVAILABLE))
StepVerifier.create(this.interceptor.preHandle(request, "/a")).consumeErrorWith(
(ex) -> assertThat(((CloudFoundryAuthorizationException) ex).getReason())
.isEqualTo(Reason.SERVICE_UNAVAILABLE))
.verify();
}

@ -94,36 +94,32 @@ public class CloudFoundryMvcWebEndpointIntegrationTests {
@Test
public void responseToOptionsRequestIncludesCorsHeaders() {
load(TestEndpointConfiguration.class,
(client) -> client.options().uri("/cfApplication/test")
.accept(MediaType.APPLICATION_JSON)
.header("Access-Control-Request-Method", "POST")
.header("Origin", "http://example.com").exchange().expectStatus()
.isOk().expectHeader()
.valueEquals("Access-Control-Allow-Origin", "http://example.com")
.expectHeader()
.valueEquals("Access-Control-Allow-Methods", "GET,POST"));
load(TestEndpointConfiguration.class, (client) -> client.options()
.uri("/cfApplication/test").accept(MediaType.APPLICATION_JSON)
.header("Access-Control-Request-Method", "POST")
.header("Origin", "http://example.com").exchange().expectStatus().isOk()
.expectHeader()
.valueEquals("Access-Control-Allow-Origin", "http://example.com")
.expectHeader().valueEquals("Access-Control-Allow-Methods", "GET,POST"));
}
@Test
public void linksToOtherEndpointsWithFullAccess() {
given(securityService.getAccessLevel(any(), eq("app-id")))
.willReturn(AccessLevel.FULL);
load(TestEndpointConfiguration.class,
(client) -> client.get().uri("/cfApplication")
.accept(MediaType.APPLICATION_JSON)
.header("Authorization", "bearer " + mockAccessToken()).exchange()
.expectStatus().isOk().expectBody().jsonPath("_links.length()")
.isEqualTo(5).jsonPath("_links.self.href").isNotEmpty()
.jsonPath("_links.self.templated").isEqualTo(false)
.jsonPath("_links.info.href").isNotEmpty()
.jsonPath("_links.info.templated").isEqualTo(false)
.jsonPath("_links.env.href").isNotEmpty()
.jsonPath("_links.env.templated").isEqualTo(false)
.jsonPath("_links.test.href").isNotEmpty()
.jsonPath("_links.test.templated").isEqualTo(false)
.jsonPath("_links.test-part.href").isNotEmpty()
.jsonPath("_links.test-part.templated").isEqualTo(true));
load(TestEndpointConfiguration.class, (client) -> client.get()
.uri("/cfApplication").accept(MediaType.APPLICATION_JSON)
.header("Authorization", "bearer " + mockAccessToken()).exchange()
.expectStatus().isOk().expectBody().jsonPath("_links.length()")
.isEqualTo(5).jsonPath("_links.self.href").isNotEmpty()
.jsonPath("_links.self.templated").isEqualTo(false)
.jsonPath("_links.info.href").isNotEmpty()
.jsonPath("_links.info.templated").isEqualTo(false)
.jsonPath("_links.env.href").isNotEmpty().jsonPath("_links.env.templated")
.isEqualTo(false).jsonPath("_links.test.href").isNotEmpty()
.jsonPath("_links.test.templated").isEqualTo(false)
.jsonPath("_links.test-part.href").isNotEmpty()
.jsonPath("_links.test-part.templated").isEqualTo(true));
}
@Test

@ -60,9 +60,8 @@ public class ConfigurationPropertiesReportEndpointAutoConfigurationTests {
@Test
public void keysToSanitizeCanBeConfiguredViaTheEnvironment() {
this.contextRunner.withUserConfiguration(Config.class)
.withPropertyValues(
"management.endpoint.configprops.keys-to-sanitize: .*pass.*, property")
this.contextRunner.withUserConfiguration(Config.class).withPropertyValues(
"management.endpoint.configprops.keys-to-sanitize: .*pass.*, property")
.run(validateTestProperties("******", "******"));
}

@ -88,9 +88,9 @@ public class AuditEventsEndpointDocumentationTests
parameterWithName("principal").description(
"Restricts the events to those with the given "
+ "principal. Optional."),
parameterWithName("type").description(
"Restricts the events to those with the given "
+ "type. Optional."))));
parameterWithName("type").description(
"Restricts the events to those with the given "
+ "type. Optional."))));
verify(this.repository).find("alice", now.toInstant(), "logout");
}

@ -49,10 +49,9 @@ public class BeansEndpointDocumentationTests extends MockMvcEndpointDocumentatio
@Test
public void beans() throws Exception {
List<FieldDescriptor> beanFields = Arrays
.asList(fieldWithPath("aliases").description("Names of any aliases."),
fieldWithPath("scope")
.description("Scope of the bean."),
List<FieldDescriptor> beanFields = Arrays.asList(
fieldWithPath("aliases").description("Names of any aliases."),
fieldWithPath("scope").description("Scope of the bean."),
fieldWithPath("type").description("Fully qualified type of the bean."),
fieldWithPath("resource")
.description("Resource in which the bean was defined, if any.")

@ -100,8 +100,8 @@ public class ConditionsReportEndpointDocumentationTests
this.mockMvc.perform(get("/actuator/conditions")).andExpect(status().isOk())
.andDo(MockMvcRestDocumentation.document("conditions",
preprocessResponse(
limit("contexts", getApplicationContext().getId(),
"positiveMatches"),
limit("contexts", getApplicationContext()
.getId(), "positiveMatches"),
limit("contexts", getApplicationContext().getId(),
"negativeMatches")),
responseFields(fieldWithPath("contexts")

@ -71,12 +71,10 @@ public class EnvironmentEndpointDocumentationTests
@Test
public void env() throws Exception {
this.mockMvc.perform(get("/actuator/env")).andExpect(status().isOk())
.andDo(document("env/all",
preprocessResponse(replacePattern(
Pattern.compile(
"org/springframework/boot/actuate/autoconfigure/endpoint/web/documentation/"),
""), filterProperties()),
this.mockMvc.perform(get("/actuator/env")).andExpect(status().isOk()).andDo(
document("env/all", preprocessResponse(replacePattern(Pattern.compile(
"org/springframework/boot/actuate/autoconfigure/endpoint/web/documentation/"),
""), filterProperties()),
responseFields(activeProfiles, propertySources,
propertySourceName,
fieldWithPath("propertySources.[].properties")
@ -94,14 +92,13 @@ public class EnvironmentEndpointDocumentationTests
this.mockMvc.perform(get("/actuator/env/com.example.cache.max-size"))
.andExpect(status().isOk())
.andDo(document("env/single",
preprocessResponse(replacePattern(
Pattern.compile(
"org/springframework/boot/actuate/autoconfigure/endpoint/web/documentation/"),
preprocessResponse(replacePattern(Pattern.compile(
"org/springframework/boot/actuate/autoconfigure/endpoint/web/documentation/"),
"")),
responseFields(
fieldWithPath("property").description(
"Property from the environment, if found.")
.optional(),
.optional(),
fieldWithPath("property.source").description(
"Name of the source of the property."),
fieldWithPath("property.value")

@ -50,16 +50,14 @@ public class FlywayEndpointDocumentationTests extends MockMvcEndpointDocumentati
@Test
public void flyway() throws Exception {
this.mockMvc.perform(get("/actuator/flyway")).andExpect(status().isOk())
.andDo(MockMvcRestDocumentation.document("flyway",
responseFields(
fieldWithPath("contexts")
.description("Application contexts keyed by id"),
.andDo(MockMvcRestDocumentation.document("flyway", responseFields(
fieldWithPath("contexts")
.description("Application contexts keyed by id"),
fieldWithPath("contexts.*.flywayBeans.*.migrations").description(
"Migrations performed by the Flyway instance, keyed by"
+ " Flyway bean name."))
.andWithPrefix(
"contexts.*.flywayBeans.*.migrations.[].",
migrationFieldDescriptors())
+ " Flyway bean name.")).andWithPrefix(
"contexts.*.flywayBeans.*.migrations.[].",
migrationFieldDescriptors())
.and(parentIdField())));
}
@ -84,9 +82,8 @@ public class FlywayEndpointDocumentationTests extends MockMvcEndpointDocumentati
"Rank of the applied migration, if any. Later migrations have "
+ "higher ranks.")
.optional(),
fieldWithPath("script")
.description(
"Name of the script used to execute the migration, if any.")
fieldWithPath("script").description(
"Name of the script used to execute the migration, if any.")
.optional(),
fieldWithPath("state").description("State of the migration. ("
+ describeEnumValues(MigrationState.class) + ")"),

@ -52,10 +52,9 @@ public class HealthEndpointDocumentationTests extends MockMvcEndpointDocumentati
@Test
public void health() throws Exception {
this.mockMvc.perform(get("/actuator/health")).andExpect(status().isOk())
.andDo(document("health",
responseFields(
fieldWithPath("status").description(
"Overall status of the application."),
.andDo(document("health", responseFields(
fieldWithPath("status")
.description("Overall status of the application."),
fieldWithPath("details").description(
"Details of the health of the application. Presence is controlled by "
+ "`management.endpoint.health.show-details`)."),

@ -77,10 +77,9 @@ public class HttpTraceEndpointDocumentationTests
() -> UUID.randomUUID().toString());
given(this.repository.findAll()).willReturn(Arrays.asList(trace));
this.mockMvc.perform(get("/actuator/httptrace")).andExpect(status().isOk())
.andDo(document("httptrace",
responseFields(
fieldWithPath("traces").description(
"An array of traced HTTP request-response exchanges."),
.andDo(document("httptrace", responseFields(
fieldWithPath("traces").description(
"An array of traced HTTP request-response exchanges."),
fieldWithPath("traces.[].timestamp").description(
"Timestamp of when the traced exchange occurred."),
fieldWithPath("traces.[].principal")
@ -90,9 +89,8 @@ public class HttpTraceEndpointDocumentationTests
.description("Name of the principal.").optional(),
fieldWithPath("traces.[].request.method")
.description("HTTP method of the request."),
fieldWithPath("traces.[].request.remoteAddress")
.description(
"Remote address from which the request was received, if known.")
fieldWithPath("traces.[].request.remoteAddress").description(
"Remote address from which the request was received, if known.")
.optional().type(JsonFieldType.STRING),
fieldWithPath("traces.[].request.uri")
.description("URI of the request."),

@ -53,13 +53,13 @@ public class InfoEndpointDocumentationTests extends MockMvcEndpointDocumentation
responseFields(beneathPath("git"),
fieldWithPath("branch")
.description("Name of the Git branch, if any."),
fieldWithPath("commit")
.description("Details of the Git commit, if any."),
fieldWithPath("commit.time")
.description("Timestamp of the commit, if any.")
.type(JsonFieldType.VARIES),
fieldWithPath("commit.id")
.description("ID of the commit, if any.")),
fieldWithPath("commit").description(
"Details of the Git commit, if any."),
fieldWithPath("commit.time")
.description("Timestamp of the commit, if any.")
.type(JsonFieldType.VARIES),
fieldWithPath("commit.id")
.description("ID of the commit, if any.")),
responseFields(beneathPath("build"),
fieldWithPath("artifact")
.description(
@ -76,9 +76,8 @@ public class InfoEndpointDocumentationTests extends MockMvcEndpointDocumentation
.description(
"Version of the application, if any.")
.optional(),
fieldWithPath("time")
.description(
"Timestamp of when the application was built, if any.")
fieldWithPath("time").description(
"Timestamp of when the application was built, if any.")
.type(JsonFieldType.VARIES).optional())));
}

@ -57,9 +57,10 @@ public class LiquibaseEndpointDocumentationTests
responseFields(
fieldWithPath("contexts")
.description("Application contexts keyed by id"),
changeSetsField).andWithPrefix(
"contexts.*.liquibaseBeans.*.changeSets[].",
getChangeSetFieldDescriptors()).and(parentIdField())));
changeSetsField).andWithPrefix(
"contexts.*.liquibaseBeans.*.changeSets[].",
getChangeSetFieldDescriptors())
.and(parentIdField())));
}
private List<FieldDescriptor> getChangeSetFieldDescriptors() {
@ -81,8 +82,8 @@ public class LiquibaseEndpointDocumentationTests
fieldWithPath("labels")
.description("Labels associated with the change set."),
fieldWithPath("checksum").description("Checksum of the change set."),
fieldWithPath("orderExecuted").description(
"Order of the execution of the change set."),
fieldWithPath("orderExecuted")
.description("Order of the execution of the change set."),
fieldWithPath("tag")
.description("Tag associated with the change set, if any.")
.optional().type(JsonFieldType.STRING));

@ -67,10 +67,9 @@ public class LoggersEndpointDocumentationTests extends MockMvcEndpointDocumentat
new LoggerConfiguration("ROOT", LogLevel.INFO, LogLevel.INFO),
new LoggerConfiguration("com.example", LogLevel.DEBUG, LogLevel.DEBUG)));
this.mockMvc.perform(get("/actuator/loggers")).andExpect(status().isOk())
.andDo(MockMvcRestDocumentation.document("loggers/all",
responseFields(
fieldWithPath("levels").description(
"Levels support by the logging system."),
.andDo(MockMvcRestDocumentation.document("loggers/all", responseFields(
fieldWithPath("levels")
.description("Levels support by the logging system."),
fieldWithPath("loggers").description("Loggers keyed by name."))
.andWithPrefix("loggers.*.", levelFields)));
}
@ -90,13 +89,12 @@ public class LoggersEndpointDocumentationTests extends MockMvcEndpointDocumentat
.perform(post("/actuator/loggers/com.example")
.content("{\"configuredLevel\":\"debug\"}")
.contentType(MediaType.APPLICATION_JSON))
.andExpect(status().isNoContent())
.andDo(MockMvcRestDocumentation
.document("loggers/set",
.andExpect(status().isNoContent()).andDo(
MockMvcRestDocumentation.document("loggers/set",
requestFields(fieldWithPath("configuredLevel")
.description("Level for the logger. May be"
+ " omitted to clear the level.")
.optional())));
.optional())));
verify(this.loggingSystem).setLogLevel("com.example", LogLevel.DEBUG);
}

@ -78,13 +78,13 @@ public class MappingsEndpointReactiveDocumentationTests
responseFields(
beneathPath("contexts.*.mappings.dispatcherHandlers")
.withSubsectionId("dispatcher-handlers"),
fieldWithPath("*").description(
"Dispatcher handler mappings, if any, keyed by "
+ "dispatcher handler bean name."),
fieldWithPath("*.[].handler")
.description("Handler for the mapping."),
fieldWithPath("*.[].predicate")
.description("Predicate for the mapping."))));
fieldWithPath("*").description(
"Dispatcher handler mappings, if any, keyed by "
+ "dispatcher handler bean name."),
fieldWithPath("*.[].handler")
.description("Handler for the mapping."),
fieldWithPath("*.[].predicate")
.description("Predicate for the mapping."))));
}
@Configuration

@ -96,13 +96,13 @@ public class MappingsEndpointServletDocumentationTests
responseFields(
beneathPath("contexts.*.mappings.dispatcherServlets")
.withSubsectionId("dispatcher-servlets"),
fieldWithPath("*").description(
"Dispatcher servlet mappings, if any, keyed by "
+ "dispatcher servlet bean name."),
fieldWithPath("*.[].handler")
.description("Handler for the mapping."),
fieldWithPath("*.[].predicate")
.description("Predicate for the mapping.")),
fieldWithPath("*").description(
"Dispatcher servlet mappings, if any, keyed by "
+ "dispatcher servlet bean name."),
fieldWithPath("*.[].handler")
.description("Handler for the mapping."),
fieldWithPath("*.[].predicate")
.description("Predicate for the mapping.")),
responseFields(
beneathPath("contexts.*.mappings.servletFilters")
.withSubsectionId("servlet-filters"),

@ -52,11 +52,10 @@ public class MetricsEndpointDocumentationTests extends MockMvcEndpointDocumentat
public void metric() throws Exception {
this.mockMvc.perform(get("/actuator/metrics/jvm.memory.max"))
.andExpect(status().isOk())
.andDo(document("metrics/metric",
responseFields(
fieldWithPath("name").description("Name of the metric"),
fieldWithPath("measurements")
.description("Measurements of the metric"),
.andDo(document("metrics/metric", responseFields(
fieldWithPath("name").description("Name of the metric"),
fieldWithPath("measurements")
.description("Measurements of the metric"),
fieldWithPath("measurements[].statistic")
.description("Statistic of the measurement. ("
+ describeEnumValues(Statistic.class) + ")."),
@ -72,10 +71,8 @@ public class MetricsEndpointDocumentationTests extends MockMvcEndpointDocumentat
@Test
public void metricWithTags() throws Exception {
this.mockMvc
.perform(get("/actuator/metrics/jvm.memory.max")
.param("tag", "area:nonheap")
.param("tag", "id:Compressed Class Space"))
this.mockMvc.perform(get("/actuator/metrics/jvm.memory.max")
.param("tag", "area:nonheap").param("tag", "id:Compressed Class Space"))
.andExpect(status().isOk())
.andDo(document("metrics/metric-with-tags",
requestParameters(parameterWithName("tag").description(

@ -50,10 +50,9 @@ public class ScheduledTasksEndpointDocumentationTests
public void scheduledTasks() throws Exception {
this.mockMvc.perform(get("/actuator/scheduledtasks")).andExpect(status().isOk())
.andDo(document("scheduled-tasks",
preprocessResponse(replacePattern(
Pattern.compile(
"org.*\\.ScheduledTasksEndpointDocumentationTests\\$"
+ "TestConfiguration"),
preprocessResponse(replacePattern(Pattern.compile(
"org.*\\.ScheduledTasksEndpointDocumentationTests\\$"
+ "TestConfiguration"),
"com.example.Processor")),
responseFields(
fieldWithPath("cron").description("Cron tasks, if any."),

@ -67,10 +67,10 @@ public class SessionsEndpointDocumentationTests
private static final Session sessionThree = createSession(
Instant.now().minusSeconds(60 * 60 * 2), Instant.now().minusSeconds(12));
private static final List<FieldDescriptor> sessionFields = Arrays
.asList(fieldWithPath("id").description("ID of the session."),
fieldWithPath("attributeNames").description(
"Names of the attributes stored in the session."),
private static final List<FieldDescriptor> sessionFields = Arrays.asList(
fieldWithPath("id").description("ID of the session."),
fieldWithPath("attributeNames")
.description("Names of the attributes stored in the session."),
fieldWithPath("creationTime")
.description("Timestamp of when the session was created."),
fieldWithPath("lastAccessedTime")

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -133,11 +133,9 @@ public class EnvironmentEndpoint {
String propertyName) {
Map<String, PropertyValueDescriptor> propertySources = new LinkedHashMap<>();
PlaceholdersResolver resolver = getResolver();
getPropertySourcesAsMap()
.forEach((sourceName, source) -> propertySources.put(sourceName,
source.containsProperty(propertyName)
? describeValueOf(propertyName, source, resolver)
: null));
getPropertySourcesAsMap().forEach((sourceName, source) -> propertySources
.put(sourceName, source.containsProperty(propertyName)
? describeValueOf(propertyName, source, resolver) : null));
return propertySources;
}

@ -120,10 +120,8 @@ public class MetricsEndpoint {
}
private void mergeMeasurements(Map<Statistic, Double> samples, Meter meter) {
meter.measure()
.forEach((measurement) -> samples.merge(measurement.getStatistic(),
measurement.getValue(),
mergeFunction(measurement.getStatistic())));
meter.measure().forEach((measurement) -> samples.merge(measurement.getStatistic(),
measurement.getValue(), mergeFunction(measurement.getStatistic())));
}
private BiFunction<Double, Double, Double> mergeFunction(Statistic statistic) {

@ -107,13 +107,13 @@ public class WebMvcMetricsFilter extends OncePerRequestFilter {
@Override
protected void doFilterInternal(HttpServletRequest request,
HttpServletResponse response, FilterChain filterChain)
throws ServletException, IOException {
throws ServletException, IOException {
filterAndRecordMetrics(request, response, filterChain);
}
private void filterAndRecordMetrics(HttpServletRequest request,
HttpServletResponse response, FilterChain filterChain)
throws IOException, ServletException, NestedServletException {
throws IOException, ServletException, NestedServletException {
Object handler = null;
try {
handler = getHandler(request);
@ -150,7 +150,7 @@ public class WebMvcMetricsFilter extends OncePerRequestFilter {
private void filterAndRecordMetrics(HttpServletRequest request,
HttpServletResponse response, FilterChain filterChain, Object handler)
throws IOException, ServletException, NestedServletException {
throws IOException, ServletException, NestedServletException {
TimingContext timingContext = TimingContext.get(request);
if (timingContext == null) {
timingContext = startAndAttachTimingContext(request, handler);

@ -75,7 +75,7 @@ public class HttpTraceFilter extends OncePerRequestFilter implements Ordered {
@Override
protected void doFilterInternal(HttpServletRequest request,
HttpServletResponse response, FilterChain filterChain)
throws ServletException, IOException {
throws ServletException, IOException {
TraceableHttpServletRequest traceableRequest = new TraceableHttpServletRequest(
request);
HttpTrace trace = this.tracer.receivedRequest(traceableRequest);

@ -100,12 +100,13 @@ public class BeansEndpointTests {
new ApplicationContextRunner()
.withUserConfiguration(EndpointConfiguration.class).withParent(parent)
.run((child) -> {
ApplicationBeans result = child.getBean(BeansEndpoint.class).beans();
assertThat(result.getContexts().get(parent.getId()).getBeans())
.containsKey("bean");
assertThat(result.getContexts().get(child.getId()).getBeans())
.containsKey("endpoint");
});
ApplicationBeans result = child.getBean(BeansEndpoint.class)
.beans();
assertThat(result.getContexts().get(parent.getId()).getBeans())
.containsKey("bean");
assertThat(result.getContexts().get(child.getId()).getBeans())
.containsKey("endpoint");
});
});
}

@ -43,18 +43,20 @@ public class ConfigurationPropertiesReportEndpointParentTests {
new ApplicationContextRunner()
.withUserConfiguration(ClassConfigurationProperties.class)
.withParent(parent).run((child) -> {
ConfigurationPropertiesReportEndpoint endpoint = child
.getBean(ConfigurationPropertiesReportEndpoint.class);
ApplicationConfigurationProperties applicationProperties = endpoint
.configurationProperties();
assertThat(applicationProperties.getContexts())
.containsOnlyKeys(child.getId(), parent.getId());
assertThat(applicationProperties.getContexts().get(child.getId())
.getBeans().keySet()).containsExactly("someProperties");
assertThat((applicationProperties.getContexts()
.get(parent.getId()).getBeans().keySet()))
.containsExactly("testProperties");
});
ConfigurationPropertiesReportEndpoint endpoint = child
.getBean(
ConfigurationPropertiesReportEndpoint.class);
ApplicationConfigurationProperties applicationProperties = endpoint
.configurationProperties();
assertThat(applicationProperties.getContexts())
.containsOnlyKeys(child.getId(), parent.getId());
assertThat(applicationProperties.getContexts()
.get(child.getId()).getBeans().keySet())
.containsExactly("someProperties");
assertThat((applicationProperties.getContexts()
.get(parent.getId()).getBeans().keySet()))
.containsExactly("testProperties");
});
});
}
@ -66,17 +68,19 @@ public class ConfigurationPropertiesReportEndpointParentTests {
.withUserConfiguration(
BeanMethodConfigurationProperties.class)
.withParent(parent).run((child) -> {
ConfigurationPropertiesReportEndpoint endpoint = child
.getBean(ConfigurationPropertiesReportEndpoint.class);
ApplicationConfigurationProperties applicationProperties = endpoint
.configurationProperties();
assertThat(applicationProperties.getContexts().get(child.getId())
.getBeans().keySet())
.containsExactlyInAnyOrder("otherProperties");
assertThat((applicationProperties.getContexts()
.get(parent.getId()).getBeans().keySet()))
.containsExactly("testProperties");
});
ConfigurationPropertiesReportEndpoint endpoint = child
.getBean(
ConfigurationPropertiesReportEndpoint.class);
ApplicationConfigurationProperties applicationProperties = endpoint
.configurationProperties();
assertThat(applicationProperties.getContexts()
.get(child.getId()).getBeans().keySet())
.containsExactlyInAnyOrder(
"otherProperties");
assertThat((applicationProperties.getContexts()
.get(parent.getId()).getBeans().keySet()))
.containsExactly("testProperties");
});
});
}

@ -131,7 +131,7 @@ public class JerseyWebEndpointIntegrationTests extends
@Override
protected void doFilterInternal(HttpServletRequest request,
HttpServletResponse response, FilterChain filterChain)
throws ServletException, IOException {
throws ServletException, IOException {
filterChain.doFilter(new HttpServletRequestWrapper(request) {
@Override

@ -66,15 +66,13 @@ public class WebFluxEndpointIntegrationTests
@Test
public void responseToOptionsRequestIncludesCorsHeaders() {
load(TestEndpointConfiguration.class,
(client) -> client.options().uri("/test")
.accept(MediaType.APPLICATION_JSON)
.header("Access-Control-Request-Method", "POST")
.header("Origin", "http://example.com").exchange().expectStatus()
.isOk().expectHeader()
.valueEquals("Access-Control-Allow-Origin", "http://example.com")
.expectHeader()
.valueEquals("Access-Control-Allow-Methods", "GET,POST"));
load(TestEndpointConfiguration.class, (client) -> client.options().uri("/test")
.accept(MediaType.APPLICATION_JSON)
.header("Access-Control-Request-Method", "POST")
.header("Origin", "http://example.com").exchange().expectStatus().isOk()
.expectHeader()
.valueEquals("Access-Control-Allow-Origin", "http://example.com")
.expectHeader().valueEquals("Access-Control-Allow-Methods", "GET,POST"));
}
@Test

@ -68,15 +68,13 @@ public class MvcWebEndpointIntegrationTests extends
@Test
public void responseToOptionsRequestIncludesCorsHeaders() {
load(TestEndpointConfiguration.class,
(client) -> client.options().uri("/test")
.accept(MediaType.APPLICATION_JSON)
.header("Access-Control-Request-Method", "POST")
.header("Origin", "http://example.com").exchange().expectStatus()
.isOk().expectHeader()
.valueEquals("Access-Control-Allow-Origin", "http://example.com")
.expectHeader()
.valueEquals("Access-Control-Allow-Methods", "GET,POST"));
load(TestEndpointConfiguration.class, (client) -> client.options().uri("/test")
.accept(MediaType.APPLICATION_JSON)
.header("Access-Control-Request-Method", "POST")
.header("Origin", "http://example.com").exchange().expectStatus().isOk()
.expectHeader()
.valueEquals("Access-Control-Allow-Origin", "http://example.com")
.expectHeader().valueEquals("Access-Control-Allow-Methods", "GET,POST"));
}
@Test
@ -147,7 +145,7 @@ public class MvcWebEndpointIntegrationTests extends
@Override
protected void doFilterInternal(HttpServletRequest request,
HttpServletResponse response, FilterChain filterChain)
throws ServletException, IOException {
throws ServletException, IOException {
filterChain.doFilter(new HttpServletRequestWrapper(request) {
@Override

@ -70,8 +70,8 @@ public class MetricsEndpointWebIntegrationTests {
@Test
public void selectByTag() {
client.get()
.uri("/actuator/metrics/jvm.memory.used?tag=id:Compressed%20Class%20Space")
client.get().uri(
"/actuator/metrics/jvm.memory.used?tag=id:Compressed%20Class%20Space")
.exchange().expectStatus().isOk().expectBody().jsonPath("$.name")
.isEqualTo("jvm.memory.used");
}

@ -69,8 +69,8 @@ public class MetricsRestTemplateCustomizerTests {
.andRespond(MockRestResponseCreators.withSuccess("OK",
MediaType.APPLICATION_JSON));
String result = this.restTemplate.getForObject("/test/{id}", String.class, 123);
assertThat(this.registry.find("http.client.requests")
.meters()).anySatisfy((m) -> assertThat(
assertThat(this.registry.find("http.client.requests").meters())
.anySatisfy((m) -> assertThat(
StreamSupport.stream(m.getId().getTags().spliterator(), false)
.map(Tag::getKey)).doesNotContain("bucket"));
assertThat(this.registry.get("http.client.requests")

@ -497,7 +497,7 @@ public class WebMvcMetricsFilterTests {
@Override
protected void doFilterInternal(HttpServletRequest request,
HttpServletResponse response, FilterChain filterChain)
throws ServletException, IOException {
throws ServletException, IOException {
String misbehave = request.getHeader(TEST_MISBEHAVE_HEADER);
if (misbehave != null) {
response.setStatus(Integer.parseInt(misbehave));

@ -205,12 +205,11 @@ public class HttpExchangeTracerTests {
@Test
public void mixedCaseSetCookieHeaderIsNotIncludedByDefault() {
HttpTrace trace = new HttpTrace(createRequest());
new HttpExchangeTracer(EnumSet.of(Include.RESPONSE_HEADERS))
.sendingResponse(trace,
createResponse(Collections.singletonMap(
mixedCase(HttpHeaders.SET_COOKIE),
Arrays.asList("test=test"))),
null, null);
new HttpExchangeTracer(EnumSet.of(Include.RESPONSE_HEADERS)).sendingResponse(
trace,
createResponse(Collections.singletonMap(mixedCase(HttpHeaders.SET_COOKIE),
Arrays.asList("test=test"))),
null, null);
assertThat(trace.getResponse().getHeaders()).isEmpty();
}

@ -76,7 +76,7 @@ public class HttpTraceFilterTests {
@Override
protected void service(HttpServletRequest req,
HttpServletResponse resp)
throws ServletException, IOException {
throws ServletException, IOException {
req.getSession(true);
}
@ -112,7 +112,7 @@ public class HttpTraceFilterTests {
@Override
protected void service(HttpServletRequest req,
HttpServletResponse resp)
throws ServletException, IOException {
throws ServletException, IOException {
throw new IOException();
}

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -108,7 +108,7 @@ public class BatchAutoConfiguration {
@ConditionalOnMissingBean(JobOperator.class)
public SimpleJobOperator jobOperator(JobExplorer jobExplorer, JobLauncher jobLauncher,
ListableJobLocator jobRegistry, JobRepository jobRepository)
throws Exception {
throws Exception {
SimpleJobOperator factory = new SimpleJobOperator();
factory.setJobExplorer(jobExplorer);
factory.setJobLauncher(jobLauncher);

@ -230,7 +230,7 @@ final class BeanTypeRegistry implements SmartInitializingSingleton {
private Class<?> doGetFactoryBeanGeneric(ConfigurableListableBeanFactory beanFactory,
BeanDefinition definition)
throws Exception, ClassNotFoundException, LinkageError {
throws Exception, ClassNotFoundException, LinkageError {
if (StringUtils.hasLength(definition.getFactoryBeanName())
&& StringUtils.hasLength(definition.getFactoryMethodName())) {
return getConfigurationClassFactoryBeanGeneric(beanFactory, definition);
@ -243,7 +243,7 @@ final class BeanTypeRegistry implements SmartInitializingSingleton {
private Class<?> getConfigurationClassFactoryBeanGeneric(
ConfigurableListableBeanFactory beanFactory, BeanDefinition definition)
throws Exception {
throws Exception {
Method method = getFactoryMethod(beanFactory, definition);
Class<?> generic = ResolvableType.forMethodReturnType(method)
.as(FactoryBean.class).resolveGeneric();
@ -305,7 +305,7 @@ final class BeanTypeRegistry implements SmartInitializingSingleton {
private Class<?> getDirectFactoryBeanGeneric(
ConfigurableListableBeanFactory beanFactory, BeanDefinition definition)
throws ClassNotFoundException, LinkageError {
throws ClassNotFoundException, LinkageError {
Class<?> factoryBeanClass = ClassUtils.forName(definition.getBeanClassName(),
beanFactory.getBeanClassLoader());
Class<?> generic = ResolvableType.forClass(factoryBeanClass).as(FactoryBean.class)

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -248,7 +248,7 @@ class OnBeanCondition extends SpringBootCondition implements ConfigurationCondit
private Collection<String> getBeanNamesForType(ListableBeanFactory beanFactory,
String type, ClassLoader classLoader, boolean considerHierarchy)
throws LinkageError {
throws LinkageError {
try {
Set<String> result = new LinkedHashSet<>();
collectBeanNamesForType(result, beanFactory,

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -106,7 +106,7 @@ class OnPropertyCondition extends SpringBootCondition {
ConditionMessage.forCondition(ConditionalOnProperty.class, spec)
.found("different value in property",
"different value in properties")
.items(Style.QUOTE, nonMatchingProperties));
.items(Style.QUOTE, nonMatchingProperties));
}
return ConditionOutcome.match(ConditionMessage
.forCondition(ConditionalOnProperty.class, spec).because("matched"));

@ -165,9 +165,8 @@ public class FlywayAutoConfiguration {
Assert.state(locations.length != 0,
"Migration script locations not configured");
boolean exists = hasAtLeastOneLocation(locations);
Assert.state(exists,
() -> "Cannot find migrations location in: " + Arrays.asList(
locations)
Assert.state(exists, () -> "Cannot find migrations location in: "
+ Arrays.asList(locations)
+ " (please add migrations or check your Flyway configuration)");
}
}

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -86,7 +86,7 @@ class ActiveMQConnectionFactoryFactory {
private <T extends ActiveMQConnectionFactory> T createConnectionFactoryInstance(
Class<T> factoryClass) throws InstantiationException, IllegalAccessException,
InvocationTargetException, NoSuchMethodException {
InvocationTargetException, NoSuchMethodException {
String brokerUrl = determineBrokerUrl();
String user = this.properties.getUser();
String password = this.properties.getPassword();

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -47,7 +47,7 @@ class ArtemisXAConnectionFactoryConfiguration {
@Bean(name = { "jmsConnectionFactory", "xaJmsConnectionFactory" })
public ConnectionFactory jmsConnectionFactory(ListableBeanFactory beanFactory,
ArtemisProperties properties, XAConnectionFactoryWrapper wrapper)
throws Exception {
throws Exception {
return wrapper.wrapConnectionFactory(
new ArtemisConnectionFactoryFactory(beanFactory, properties)
.createConnectionFactory(ActiveMQXAConnectionFactory.class));

@ -292,13 +292,13 @@ public class JpaProperties {
private void applyNamingStrategies(Map<String, Object> properties,
ImplicitNamingStrategy implicitStrategyBean,
PhysicalNamingStrategy physicalStrategyBean) {
applyNamingStrategy(properties,
"hibernate.implicit_naming_strategy", implicitStrategyBean != null
? implicitStrategyBean : this.implicitStrategy,
applyNamingStrategy(properties, "hibernate.implicit_naming_strategy",
implicitStrategyBean != null ? implicitStrategyBean
: this.implicitStrategy,
DEFAULT_IMPLICIT_STRATEGY);
applyNamingStrategy(properties,
"hibernate.physical_naming_strategy", physicalStrategyBean != null
? physicalStrategyBean : this.physicalStrategy,
applyNamingStrategy(properties, "hibernate.physical_naming_strategy",
physicalStrategyBean != null ? physicalStrategyBean
: this.physicalStrategy,
DEFAULT_PHYSICAL_STRATEGY);
}

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -24,9 +24,9 @@ import org.springframework.security.web.server.WebFilterChainProxy;
/**
* Switches on {@link EnableWebFluxSecurity} for a reactive web application if this
* annotation has not been added by the user. It delegates
* to Spring Security's content-negotiation mechanism for authentication. This configuration also
* backs off if a bean of type {@link WebFilterChainProxy} has been configured in any other way.
* annotation has not been added by the user. It delegates to Spring Security's
* content-negotiation mechanism for authentication. This configuration also backs off if
* a bean of type {@link WebFilterChainProxy} has been configured in any other way.
*
* @author Madhura Bhave
*/

@ -69,10 +69,8 @@ public class UserDetailsServiceAutoConfiguration {
ObjectProvider<PasswordEncoder> passwordEncoder) throws Exception {
SecurityProperties.User user = properties.getUser();
List<String> roles = user.getRoles();
return new InMemoryUserDetailsManager(
User.withUsername(user.getName())
.password(getOrDeducePassword(user,
passwordEncoder.getIfAvailable()))
return new InMemoryUserDetailsManager(User.withUsername(user.getName())
.password(getOrDeducePassword(user, passwordEncoder.getIfAvailable()))
.roles(roles.toArray(new String[roles.size()])).build());
}

@ -191,10 +191,10 @@ public abstract class AbstractErrorWebExceptionHandler
StringBuilder builder = new StringBuilder();
Object message = error.get("message");
Date timestamp = (Date) error.get("timestamp");
builder.append("<html><body><h1>Whitelabel Error Page</h1>")
.append("<p>This application has no configured error view, so you are seeing this as a fallback.</p>")
.append("<div id='created'>").append(timestamp)
.append("</div>").append("<div>There was an unexpected error (type=")
builder.append("<html><body><h1>Whitelabel Error Page</h1>").append(
"<p>This application has no configured error view, so you are seeing this as a fallback.</p>")
.append("<div id='created'>").append(timestamp).append("</div>")
.append("<div>There was an unexpected error (type=")
.append(htmlEscape(error.get("error"))).append(", status=")
.append(htmlEscape(error.get("status"))).append(").</div>");
if (message != null) {

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -43,7 +43,7 @@ public class WebClientCodecCustomizer implements WebClientCustomizer {
.exchangeStrategies(ExchangeStrategies.builder()
.codecs((codecs) -> this.codecCustomizers
.forEach((customizer) -> customizer.customize(codecs)))
.build());
.build());
}
}

@ -321,10 +321,9 @@ public class WebMvcAutoConfiguration {
CacheControl cacheControl = this.resourceProperties.getCache()
.getCachecontrol().toHttpCacheControl();
if (!registry.hasMappingForPattern("/webjars/**")) {
customizeResourceHandlerRegistration(
registry.addResourceHandler("/webjars/**")
.addResourceLocations(
"classpath:/META-INF/resources/webjars/")
customizeResourceHandlerRegistration(registry
.addResourceHandler("/webjars/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/")
.setCachePeriod(getSeconds(cachePeriod))
.setCacheControl(cacheControl));
}
@ -334,8 +333,8 @@ public class WebMvcAutoConfiguration {
registry.addResourceHandler(staticPathPattern)
.addResourceLocations(getResourceLocations(
this.resourceProperties.getStaticLocations()))
.setCachePeriod(getSeconds(cachePeriod))
.setCacheControl(cacheControl));
.setCachePeriod(getSeconds(cachePeriod))
.setCacheControl(cacheControl));
}
}

@ -765,9 +765,9 @@ public class CacheAutoConfigurationTests {
"spring.cache.cacheNames[0]=foo",
"spring.cache.cacheNames[1]=bar")
.run((context) ->
// see customizer
assertThat(getCacheManager(context, JCacheCacheManager.class)
.getCacheNames()).containsOnly("foo", "custom1"));
// see customizer
assertThat(getCacheManager(context, JCacheCacheManager.class).getCacheNames())
.containsOnly("foo", "custom1"));
}
finally {
Caching.getCachingProvider(cachingProviderClassName).close();

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -66,8 +66,8 @@ public class ElasticsearchAutoConfigurationTests {
public void createTransportClient() {
this.context = new AnnotationConfigApplicationContext();
new ElasticsearchNodeTemplate().doWithNode((node) -> {
TestPropertyValues
.of("spring.data.elasticsearch.cluster-nodes:localhost:"
TestPropertyValues.of(
"spring.data.elasticsearch.cluster-nodes:localhost:"
+ node.getTcpPort(),
"spring.data.elasticsearch.properties.path.home:target/es/client")
.applyTo(this.context);

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -194,15 +194,17 @@ public class NoSuchBeanDefinitionFailureAnalyzerTests {
}
private void assertActionMissingType(FailureAnalysis analysis, Class<?> type) {
assertThat(analysis.getAction()).startsWith(String
.format("Consider revisiting the conditions above or defining a bean of type '%s' "
+ "in your configuration.", type.getName()));
assertThat(analysis.getAction()).startsWith(String.format(
"Consider revisiting the conditions above or defining a bean of type '%s' "
+ "in your configuration.",
type.getName()));
}
private void assertActionMissingName(FailureAnalysis analysis, String name) {
assertThat(analysis.getAction()).startsWith(String
.format("Consider revisiting the conditions above or defining a bean named '%s' "
+ "in your configuration.", name));
assertThat(analysis.getAction()).startsWith(String.format(
"Consider revisiting the conditions above or defining a bean named '%s' "
+ "in your configuration.",
name));
}
private void assertBeanMethodDisabled(FailureAnalysis analysis, String description,

@ -89,9 +89,8 @@ public class FreeMarkerAutoConfigurationReactiveIntegrationTests {
@Test
public void customTemplateLoaderPath() {
this.contextRunner
.withPropertyValues(
"spring.freemarker.templateLoaderPath:classpath:/custom-templates/")
this.contextRunner.withPropertyValues(
"spring.freemarker.templateLoaderPath:classpath:/custom-templates/")
.run((context) -> {
MockServerWebExchange exchange = render(context, "custom");
String result = exchange.getResponse().getBodyAsString().block();

@ -78,9 +78,8 @@ public class FreeMarkerAutoConfigurationTests {
@Test
public void nonExistentLocationAndEmptyLocation() {
new File("target/test-classes/templates/empty-directory").mkdir();
this.contextRunner
.withPropertyValues("spring.freemarker.templateLoaderPath:"
+ "classpath:/does-not-exist/,classpath:/templates/empty-directory/")
this.contextRunner.withPropertyValues("spring.freemarker.templateLoaderPath:"
+ "classpath:/does-not-exist/,classpath:/templates/empty-directory/")
.run((context) -> {
});
}

@ -51,9 +51,8 @@ public class ProjectInfoAutoConfigurationTests {
@Test
public void gitPropertiesWithNoData() {
this.contextRunner
.withPropertyValues("spring.info.git.location="
+ "classpath:/org/springframework/boot/autoconfigure/info/git-no-data.properties")
this.contextRunner.withPropertyValues("spring.info.git.location="
+ "classpath:/org/springframework/boot/autoconfigure/info/git-no-data.properties")
.run((context) -> {
GitProperties gitProperties = context.getBean(GitProperties.class);
assertThat(gitProperties.getBranch()).isNull();
@ -87,9 +86,8 @@ public class ProjectInfoAutoConfigurationTests {
@Test
public void buildPropertiesCustomLocation() {
this.contextRunner
.withPropertyValues("spring.info.build.location="
+ "classpath:/org/springframework/boot/autoconfigure/info/build-info.properties")
this.contextRunner.withPropertyValues("spring.info.build.location="
+ "classpath:/org/springframework/boot/autoconfigure/info/build-info.properties")
.run((context) -> {
BuildProperties buildProperties = context
.getBean(BuildProperties.class);

@ -139,9 +139,8 @@ public class JacksonAutoConfigurationTests {
@Test
public void customDateFormatClass() {
this.contextRunner
.withPropertyValues(
"spring.jackson.date-format:org.springframework.boot.autoconfigure.jackson.JacksonAutoConfigurationTests.MyDateFormat")
this.contextRunner.withPropertyValues(
"spring.jackson.date-format:org.springframework.boot.autoconfigure.jackson.JacksonAutoConfigurationTests.MyDateFormat")
.run((context) -> {
ObjectMapper mapper = context.getBean(ObjectMapper.class);
assertThat(mapper.getDateFormat()).isInstanceOf(MyDateFormat.class);
@ -169,9 +168,8 @@ public class JacksonAutoConfigurationTests {
@Test
public void customPropertyNamingStrategyClass() {
this.contextRunner
.withPropertyValues(
"spring.jackson.property-naming-strategy:com.fasterxml.jackson.databind.PropertyNamingStrategy.SnakeCaseStrategy")
this.contextRunner.withPropertyValues(
"spring.jackson.property-naming-strategy:com.fasterxml.jackson.databind.PropertyNamingStrategy.SnakeCaseStrategy")
.run((context) -> {
ObjectMapper mapper = context.getBean(ObjectMapper.class);
assertThat(mapper.getPropertyNamingStrategy())

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -130,21 +130,20 @@ public class JmsAutoConfigurationTests {
@Test
public void testEnableJmsCreateDefaultContainerFactory() {
this.contextRunner.withUserConfiguration(EnableJmsConfiguration.class)
.run((context) -> assertThat(context)
.getBean("jmsListenerContainerFactory",
JmsListenerContainerFactory.class)
.run((context) -> assertThat(context).getBean(
"jmsListenerContainerFactory", JmsListenerContainerFactory.class)
.isExactlyInstanceOf(DefaultJmsListenerContainerFactory.class));
}
@Test
public void testJmsListenerContainerFactoryBackOff() {
this.contextRunner
.withUserConfiguration(TestConfiguration6.class,
EnableJmsConfiguration.class)
.run((context) -> assertThat(context)
.getBean("jmsListenerContainerFactory",
JmsListenerContainerFactory.class)
.isExactlyInstanceOf(SimpleJmsListenerContainerFactory.class));
this.contextRunner.withUserConfiguration(TestConfiguration6.class,
EnableJmsConfiguration.class).run(
(context) -> assertThat(context)
.getBean("jmsListenerContainerFactory",
JmsListenerContainerFactory.class)
.isExactlyInstanceOf(
SimpleJmsListenerContainerFactory.class));
}
@Test
@ -414,9 +413,8 @@ public class JmsAutoConfigurationTests {
@Test
public void enableJmsAutomatically() {
this.contextRunner.withUserConfiguration(NoEnableJmsConfiguration.class)
.run((context) -> assertThat(context)
.hasBean(
JmsListenerConfigUtils.JMS_LISTENER_ANNOTATION_PROCESSOR_BEAN_NAME)
.run((context) -> assertThat(context).hasBean(
JmsListenerConfigUtils.JMS_LISTENER_ANNOTATION_PROCESSOR_BEAN_NAME)
.hasBean(
JmsListenerConfigUtils.JMS_LISTENER_ENDPOINT_REGISTRY_BEAN_NAME));
}

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -214,9 +214,8 @@ public class ArtemisAutoConfigurationTests {
@Test
public void embeddedServiceWithCustomArtemisConfiguration() {
this.contextRunner.withUserConfiguration(CustomArtemisConfiguration.class)
.run((context) -> assertThat(context
.getBean(
org.apache.activemq.artemis.core.config.Configuration.class)
.run((context) -> assertThat(context.getBean(
org.apache.activemq.artemis.core.config.Configuration.class)
.getName()).isEqualTo("customFooBar"));
}
@ -250,19 +249,22 @@ public class ArtemisAutoConfigurationTests {
this.contextRunner
.withPropertyValues("spring.artemis.embedded.queues=Queue2")
.run((second) -> {
ArtemisProperties firstProperties = first
.getBean(ArtemisProperties.class);
ArtemisProperties secondProperties = second
.getBean(ArtemisProperties.class);
assertThat(firstProperties.getEmbedded().getServerId())
.isLessThan(secondProperties.getEmbedded().getServerId());
DestinationChecker firstChecker = new DestinationChecker(first);
firstChecker.checkQueue("Queue1", true);
firstChecker.checkQueue("Queue2", true);
DestinationChecker secondChecker = new DestinationChecker(second);
secondChecker.checkQueue("Queue2", true);
secondChecker.checkQueue("Queue1", true);
});
ArtemisProperties firstProperties = first
.getBean(ArtemisProperties.class);
ArtemisProperties secondProperties = second
.getBean(ArtemisProperties.class);
assertThat(firstProperties.getEmbedded().getServerId())
.isLessThan(secondProperties.getEmbedded()
.getServerId());
DestinationChecker firstChecker = new DestinationChecker(
first);
firstChecker.checkQueue("Queue1", true);
firstChecker.checkQueue("Queue2", true);
DestinationChecker secondChecker = new DestinationChecker(
second);
secondChecker.checkQueue("Queue2", true);
secondChecker.checkQueue("Queue1", true);
});
});
}
@ -279,12 +281,13 @@ public class ArtemisAutoConfigurationTests {
// Do not start a specific one
"spring.artemis.embedded.enabled=false")
.run((secondContext) -> {
DestinationChecker firstChecker = new DestinationChecker(first);
firstChecker.checkQueue("Queue1", true);
DestinationChecker secondChecker = new DestinationChecker(
secondContext);
secondChecker.checkQueue("Queue1", true);
});
DestinationChecker firstChecker = new DestinationChecker(
first);
firstChecker.checkQueue("Queue1", true);
DestinationChecker secondChecker = new DestinationChecker(
secondContext);
secondChecker.checkQueue("Queue1", true);
});
});
}

@ -77,12 +77,11 @@ public class LdapAutoConfigurationTests {
@Test
public void contextSourceWithExtraCustomization() {
this.contextRunner
.withPropertyValues("spring.ldap.urls:ldap://localhost:123",
"spring.ldap.username:root", "spring.ldap.password:secret",
"spring.ldap.anonymous-read-only:true",
"spring.ldap.base:cn=SpringDevelopers",
"spring.ldap.baseEnvironment.java.naming.security.authentication:DIGEST-MD5")
this.contextRunner.withPropertyValues("spring.ldap.urls:ldap://localhost:123",
"spring.ldap.username:root", "spring.ldap.password:secret",
"spring.ldap.anonymous-read-only:true",
"spring.ldap.base:cn=SpringDevelopers",
"spring.ldap.baseEnvironment.java.naming.security.authentication:DIGEST-MD5")
.run((context) -> {
LdapContextSource contextSource = context
.getBean(LdapContextSource.class);

@ -102,9 +102,8 @@ public class MongoReactiveAutoConfigurationTests {
@Test
public void customizerOverridesAutoConfig() {
this.contextRunner
.withPropertyValues(
"spring.data.mongodb.uri:mongodb://localhost/test?appname=auto-config")
this.contextRunner.withPropertyValues(
"spring.data.mongodb.uri:mongodb://localhost/test?appname=auto-config")
.withUserConfiguration(SimpleCustomizerConfig.class).run((context) -> {
assertThat(context).hasSingleBean(MongoClient.class);
MongoClient client = context.getBean(MongoClient.class);

@ -63,10 +63,9 @@ public class CustomHibernateJpaAutoConfigurationTests {
@Test
public void namingStrategyDelegatorTakesPrecedence() {
this.contextRunner
.withPropertyValues(
"spring.jpa.properties.hibernate.ejb.naming_strategy_delegator:"
+ "org.hibernate.cfg.naming.ImprovedNamingStrategyDelegator")
this.contextRunner.withPropertyValues(
"spring.jpa.properties.hibernate.ejb.naming_strategy_delegator:"
+ "org.hibernate.cfg.naming.ImprovedNamingStrategyDelegator")
.run((context) -> {
JpaProperties bean = context.getBean(JpaProperties.class);
Map<String, Object> hibernateProperties = bean.getHibernateProperties(

@ -131,10 +131,9 @@ public class HibernateJpaAutoConfigurationTests
@Test
public void testLiquibasePlusValidation() {
contextRunner()
.withPropertyValues("spring.datasource.initialization-mode:never",
"spring.liquibase.changeLog:classpath:db/changelog/db.changelog-city.yaml",
"spring.jpa.hibernate.ddl-auto:validate")
contextRunner().withPropertyValues("spring.datasource.initialization-mode:never",
"spring.liquibase.changeLog:classpath:db/changelog/db.changelog-city.yaml",
"spring.jpa.hibernate.ddl-auto:validate")
.withConfiguration(
AutoConfigurations.of(LiquibaseAutoConfiguration.class))
.run((context) -> assertThat(context).hasNotFailed());
@ -224,11 +223,10 @@ public class HibernateJpaAutoConfigurationTests
@Test
public void providerDisablesAutoCommitIsNotConfiguredIfPropertyIsSet() {
contextRunner()
.withPropertyValues(
"spring.datasource.type:" + HikariDataSource.class.getName(),
"spring.datasource.hikari.auto-commit:false",
"spring.jpa.properties.hibernate.connection.provider_disables_autocommit=false")
contextRunner().withPropertyValues(
"spring.datasource.type:" + HikariDataSource.class.getName(),
"spring.datasource.hikari.auto-commit:false",
"spring.jpa.properties.hibernate.connection.provider_disables_autocommit=false")
.run((context) -> {
Map<String, Object> jpaProperties = context
.getBean(LocalContainerEntityManagerFactoryBean.class)

@ -74,10 +74,9 @@ public class JpaPropertiesTests {
@Test
public void hibernate5CustomNamingStrategies() {
this.contextRunner
.withPropertyValues(
"spring.jpa.hibernate.naming.implicit-strategy:com.example.Implicit",
"spring.jpa.hibernate.naming.physical-strategy:com.example.Physical")
this.contextRunner.withPropertyValues(
"spring.jpa.hibernate.naming.implicit-strategy:com.example.Implicit",
"spring.jpa.hibernate.naming.physical-strategy:com.example.Physical")
.run(assertJpaProperties((properties) -> {
Map<String, Object> hibernateProperties = properties
.getHibernateProperties(
@ -111,10 +110,9 @@ public class JpaPropertiesTests {
@Test
public void namingStrategyInstancesTakePrecedenceOverNamingStrategyProperties() {
this.contextRunner
.withPropertyValues(
"spring.jpa.hibernate.naming.implicit-strategy:com.example.Implicit",
"spring.jpa.hibernate.naming.physical-strategy:com.example.Physical")
this.contextRunner.withPropertyValues(
"spring.jpa.hibernate.naming.implicit-strategy:com.example.Implicit",
"spring.jpa.hibernate.naming.physical-strategy:com.example.Physical")
.run(assertJpaProperties((properties) -> {
ImplicitNamingStrategy implicitStrategy = mock(
ImplicitNamingStrategy.class);
@ -136,10 +134,9 @@ public class JpaPropertiesTests {
@Test
public void hibernatePropertiesCustomizerTakePrecedenceOverStrategyInstancesAndNamingStrategyProperties() {
this.contextRunner
.withPropertyValues(
"spring.jpa.hibernate.naming.implicit-strategy:com.example.Implicit",
"spring.jpa.hibernate.naming.physical-strategy:com.example.Physical")
this.contextRunner.withPropertyValues(
"spring.jpa.hibernate.naming.implicit-strategy:com.example.Implicit",
"spring.jpa.hibernate.naming.physical-strategy:com.example.Physical")
.run(assertJpaProperties((properties) -> {
ImplicitNamingStrategy implicitStrategy = mock(
ImplicitNamingStrategy.class);
@ -174,10 +171,9 @@ public class JpaPropertiesTests {
@Test
public void hibernate5CustomNamingStrategiesViaJpaProperties() {
this.contextRunner
.withPropertyValues(
"spring.jpa.properties.hibernate.implicit_naming_strategy:com.example.Implicit",
"spring.jpa.properties.hibernate.physical_naming_strategy:com.example.Physical")
this.contextRunner.withPropertyValues(
"spring.jpa.properties.hibernate.implicit_naming_strategy:com.example.Implicit",
"spring.jpa.properties.hibernate.physical_naming_strategy:com.example.Physical")
.run(assertJpaProperties((properties) -> {
Map<String, Object> hibernateProperties = properties
.getHibernateProperties(

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -187,9 +187,8 @@ public class OAuth2WebSecurityConfigurationTests {
private ClientRegistration getClientRegistration(String id, String userInfoUri) {
ClientRegistration.Builder builder = ClientRegistration
.withRegistrationId(id);
builder.clientName("foo").clientId("foo")
.clientAuthenticationMethod(
org.springframework.security.oauth2.core.ClientAuthenticationMethod.BASIC)
builder.clientName("foo").clientId("foo").clientAuthenticationMethod(
org.springframework.security.oauth2.core.ClientAuthenticationMethod.BASIC)
.authorizationGrantType(AuthorizationGrantType.AUTHORIZATION_CODE)
.scope("read").clientSecret("secret")
.redirectUriTemplate("http://redirect-uri.com")

@ -46,8 +46,8 @@ import static org.mockito.Mockito.mock;
public class ReactiveUserDetailsServiceAutoConfigurationTests {
private final ReactiveWebApplicationContextRunner contextRunner = new ReactiveWebApplicationContextRunner()
.withConfiguration(
AutoConfigurations.of(ReactiveUserDetailsServiceAutoConfiguration.class));
.withConfiguration(AutoConfigurations
.of(ReactiveUserDetailsServiceAutoConfiguration.class));
@Test
public void configuresADefaultUser() {
@ -62,7 +62,8 @@ public class ReactiveUserDetailsServiceAutoConfigurationTests {
@Test
public void doesNotConfigureDefaultUserIfUserDetailsServiceAvailable() {
this.contextRunner.withUserConfiguration(UserConfig.class, TestSecurityConfiguration.class)
this.contextRunner
.withUserConfiguration(UserConfig.class, TestSecurityConfiguration.class)
.run((context) -> {
ReactiveUserDetailsService userDetailsService = context
.getBean(ReactiveUserDetailsService.class);
@ -88,8 +89,7 @@ public class ReactiveUserDetailsServiceAutoConfigurationTests {
@Test
public void userDetailsServiceWhenPasswordEncoderAbsentAndDefaultPassword() {
this.contextRunner
.withUserConfiguration(TestSecurityConfiguration.class)
this.contextRunner.withUserConfiguration(TestSecurityConfiguration.class)
.run(((context) -> {
MapReactiveUserDetailsService userDetailsService = context
.getBean(MapReactiveUserDetailsService.class);
@ -117,8 +117,7 @@ public class ReactiveUserDetailsServiceAutoConfigurationTests {
private void testPasswordEncoding(Class<?> configClass, String providedPassword,
String expectedPassword) {
this.contextRunner
.withUserConfiguration(configClass)
this.contextRunner.withUserConfiguration(configClass)
.withPropertyValues("spring.security.user.password=" + providedPassword)
.run(((context) -> {
MapReactiveUserDetailsService userDetailsService = context

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -38,8 +38,11 @@ public class WebFluxSecurityConfigurationTests {
@Test
public void backsOffWhenWebFilterChainProxyBeanPresent() {
this.contextRunner.withUserConfiguration(WebFilterChainProxyConfiguration.class, WebFluxSecurityConfiguration.class)
.run(context -> assertThat(context).doesNotHaveBean(WebFluxSecurityConfiguration.class));
this.contextRunner
.withUserConfiguration(WebFilterChainProxyConfiguration.class,
WebFluxSecurityConfiguration.class)
.run(context -> assertThat(context)
.doesNotHaveBean(WebFluxSecurityConfiguration.class));
}
@Test

@ -78,14 +78,15 @@ public class SecurityAutoConfigurationTests {
@Test
public void testDefaultFilterOrderWithSecurityAdapter() {
this.contextRunner.withConfiguration(AutoConfigurations.of(WebSecurity.class,
SecurityFilterAutoConfiguration.class)).run(
(context) -> assertThat(context
.getBean("securityFilterChainRegistration",
DelegatingFilterProxyRegistrationBean.class)
.getOrder()).isEqualTo(
FilterRegistrationBean.REQUEST_WRAPPER_FILTER_MAX_ORDER
- 100));
this.contextRunner
.withConfiguration(AutoConfigurations.of(WebSecurity.class,
SecurityFilterAutoConfiguration.class))
.run((context) -> assertThat(context
.getBean("securityFilterChainRegistration",
DelegatingFilterProxyRegistrationBean.class)
.getOrder()).isEqualTo(
FilterRegistrationBean.REQUEST_WRAPPER_FILTER_MAX_ORDER
- 100));
}
@Test
@ -118,14 +119,15 @@ public class SecurityAutoConfigurationTests {
@Test
public void testDefaultFilterOrder() {
this.contextRunner.withConfiguration(
AutoConfigurations.of(SecurityFilterAutoConfiguration.class)).run(
(context) -> assertThat(context
.getBean("securityFilterChainRegistration",
DelegatingFilterProxyRegistrationBean.class)
.getOrder()).isEqualTo(
FilterRegistrationBean.REQUEST_WRAPPER_FILTER_MAX_ORDER
- 100));
this.contextRunner
.withConfiguration(
AutoConfigurations.of(SecurityFilterAutoConfiguration.class))
.run((context) -> assertThat(context
.getBean("securityFilterChainRegistration",
DelegatingFilterProxyRegistrationBean.class)
.getOrder()).isEqualTo(
FilterRegistrationBean.REQUEST_WRAPPER_FILTER_MAX_ORDER
- 100));
}
@Test
@ -137,7 +139,7 @@ public class SecurityAutoConfigurationTests {
(context) -> assertThat(context
.getBean("securityFilterChainRegistration",
DelegatingFilterProxyRegistrationBean.class)
.getOrder()).isEqualTo(12345));
.getOrder()).isEqualTo(12345));
}
@Test

@ -52,8 +52,8 @@ import static org.mockito.Mockito.mock;
public class UserDetailsServiceAutoConfigurationTests {
private final ApplicationContextRunner contextRunner = new ApplicationContextRunner()
.withUserConfiguration(TestSecurityConfiguration.class)
.withConfiguration(AutoConfigurations.of(UserDetailsServiceAutoConfiguration.class));
.withUserConfiguration(TestSecurityConfiguration.class).withConfiguration(
AutoConfigurations.of(UserDetailsServiceAutoConfiguration.class));
@Rule
public OutputCapture outputCapture = new OutputCapture();
@ -115,7 +115,8 @@ public class UserDetailsServiceAutoConfigurationTests {
@Test
public void userDetailsServiceWhenPasswordEncoderAbsentAndDefaultPassword() {
this.contextRunner.withUserConfiguration(TestSecurityConfiguration.class).run(((context) -> {
this.contextRunner.withUserConfiguration(TestSecurityConfiguration.class)
.run(((context) -> {
InMemoryUserDetailsManager userDetailsService = context
.getBean(InMemoryUserDetailsManager.class);
String password = userDetailsService.loadUserByUsername("user")
@ -150,8 +151,7 @@ public class UserDetailsServiceAutoConfigurationTests {
private void testPasswordEncoding(Class<?> configClass, String providedPassword,
String expectedPassword) {
this.contextRunner
.withUserConfiguration(configClass)
this.contextRunner.withUserConfiguration(configClass)
.withPropertyValues("spring.security.user.password=" + providedPassword)
.run(((context) -> {
InMemoryUserDetailsManager userDetailsService = context

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -117,10 +117,9 @@ public class SessionAutoConfigurationJdbcTests
@Test
public void customTableName() {
this.contextRunner
.withPropertyValues("spring.session.store-type=jdbc",
"spring.session.jdbc.table-name=FOO_BAR",
"spring.session.jdbc.schema=classpath:session/custom-schema-h2.sql")
this.contextRunner.withPropertyValues("spring.session.store-type=jdbc",
"spring.session.jdbc.table-name=FOO_BAR",
"spring.session.jdbc.schema=classpath:session/custom-schema-h2.sql")
.run((context) -> {
JdbcOperationsSessionRepository repository = validateSessionRepository(
context, JdbcOperationsSessionRepository.class);

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -202,11 +202,9 @@ public class MultipartAutoConfigurationTests {
private void verify404() throws Exception {
HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory();
ClientHttpRequest request = requestFactory
.createRequest(
new URI("http://localhost:"
+ this.context.getWebServer().getPort() + "/"),
HttpMethod.GET);
ClientHttpRequest request = requestFactory.createRequest(new URI(
"http://localhost:" + this.context.getWebServer().getPort() + "/"),
HttpMethod.GET);
ClientHttpResponse response = request.execute();
assertThat(response.getStatusCode()).isEqualTo(HttpStatus.NOT_FOUND);
}

@ -880,7 +880,7 @@ public class WebMvcAutoConfigurationTests {
@Override
protected void renderMergedOutputModel(Map<String, Object> model,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
throws Exception {
response.getOutputStream().write("Hello World".getBytes());
}

@ -205,7 +205,7 @@ public class WelcomePageHandlerMappingTests {
@Override
protected void renderMergedOutputModel(Map<String, Object> model,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
throws Exception {
response.getWriter().print(name + " template");
}

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -259,7 +259,7 @@ public class BasicErrorControllerIntegrationTests {
@Override
protected void renderMergedOutputModel(Map<String, Object> model,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
throws Exception {
response.getWriter().write("ERROR_BEAN");
}
};

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -153,7 +153,7 @@ public class BasicErrorControllerMockMvcTests {
@Override
protected void renderMergedOutputModel(Map<String, Object> model,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
throws Exception {
response.getWriter().write("ERROR_BEAN");
}
};

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -183,7 +183,7 @@ abstract class ArchiveCommand extends OptionParsingCommand {
private void writeJar(File file, Class<?>[] compiledClasses,
List<MatchedResource> classpathEntries, List<URL> dependencies)
throws FileNotFoundException, IOException, URISyntaxException {
throws FileNotFoundException, IOException, URISyntaxException {
final List<Library> libraries;
try (JarWriter writer = new JarWriter(file)) {
addManifest(writer, compiledClasses);

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -89,7 +89,7 @@ public abstract class CompilerAutoConfiguration {
*/
public void apply(GroovyClassLoader loader, GroovyCompilerConfiguration configuration,
GeneratorContext generatorContext, SourceUnit source, ClassNode classNode)
throws CompilationFailedException {
throws CompilationFailedException {
}
}

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -38,9 +38,8 @@ public class SpringSecurityCompilerAutoConfiguration extends CompilerAutoConfigu
@Override
public void applyDependencies(DependencyCustomizer dependencies) {
dependencies
.ifAnyMissingClasses(
"org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity")
dependencies.ifAnyMissingClasses(
"org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity")
.add("spring-boot-starter-security");
}

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -53,7 +53,7 @@ public class SpringTestCompilerAutoConfiguration extends CompilerAutoConfigurati
@Override
public void apply(GroovyClassLoader loader, GroovyCompilerConfiguration configuration,
GeneratorContext generatorContext, SourceUnit source, ClassNode classNode)
throws CompilationFailedException {
throws CompilationFailedException {
if (!AstUtils.hasAtLeastOneAnnotation(classNode, "RunWith")) {
AnnotationNode runWith = new AnnotationNode(ClassHelper.make("RunWith"));
runWith.addMember("value",

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -38,9 +38,8 @@ public class SpringWebsocketCompilerAutoConfiguration extends CompilerAutoConfig
@Override
public void applyDependencies(DependencyCustomizer dependencies) {
dependencies
.ifAnyMissingClasses(
"org.springframework.web.socket.config.annotation.EnableWebSocket")
dependencies.ifAnyMissingClasses(
"org.springframework.web.socket.config.annotation.EnableWebSocket")
.add("spring-boot-starter-websocket").add("spring-messaging");
}

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -93,9 +93,8 @@ public class AetherGrapeEngine implements GrapeEngine {
private ProgressReporter getProgressReporter(DefaultRepositorySystemSession session,
boolean quiet) {
String progressReporter = (quiet ? "none"
: System.getProperty(
"org.springframework.boot.cli.compiler.grape.ProgressReporter"));
String progressReporter = (quiet ? "none" : System.getProperty(
"org.springframework.boot.cli.compiler.grape.ProgressReporter"));
if ("detail".equals(progressReporter)
|| Boolean.getBoolean("groovy.grape.report.downloads")) {
return new DetailedProgressReporter(session, System.out);

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -105,9 +105,8 @@ public class DependencyResolutionContext {
aetherDependency);
}
this.dependencyManagement = this.dependencyManagement == null
? dependencyManagement
: new CompositeDependencyManagement(dependencyManagement,
this.dependencyManagement);
? dependencyManagement : new CompositeDependencyManagement(
dependencyManagement, this.dependencyManagement);
this.artifactCoordinatesResolver = new DependencyManagementArtifactCoordinatesResolver(
this.dependencyManagement);
}

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -47,8 +47,8 @@ public abstract class GroovyTemplate {
}
public static String template(TemplateEngine engine, String name,
Map<String, ?> model) throws IOException, CompilationFailedException,
ClassNotFoundException {
Map<String, ?> model)
throws IOException, CompilationFailedException, ClassNotFoundException {
Writable writable = getTemplate(engine, name).make(model);
StringWriter result = new StringWriter();
writable.writeTo(result);

@ -60,8 +60,8 @@ public class RepositoryConfigurationFactoryTests {
@Test
public void activeByDefaultProfileRepositories() {
TestPropertyValues
.of("user.home:src/test/resources/maven-settings/active-profile-repositories")
TestPropertyValues.of(
"user.home:src/test/resources/maven-settings/active-profile-repositories")
.applyToSystemProperties(() -> {
List<RepositoryConfiguration> repositoryConfiguration = RepositoryConfigurationFactory
.createDefaultRepositoryConfiguration();
@ -74,10 +74,9 @@ public class RepositoryConfigurationFactoryTests {
@Test
public void activeByPropertyProfileRepositories() {
TestPropertyValues
.of("user.home:src/test/resources/maven-settings/active-profile-repositories",
"foo:bar")
.applyToSystemProperties(() -> {
TestPropertyValues.of(
"user.home:src/test/resources/maven-settings/active-profile-repositories",
"foo:bar").applyToSystemProperties(() -> {
List<RepositoryConfiguration> repositoryConfiguration = RepositoryConfigurationFactory
.createDefaultRepositoryConfiguration();
assertRepositoryConfiguration(repositoryConfiguration, "central",
@ -89,10 +88,9 @@ public class RepositoryConfigurationFactoryTests {
@Test
public void interpolationProfileRepositories() {
TestPropertyValues
.of("user.home:src/test/resources/maven-settings/active-profile-repositories",
"interpolate:true")
.applyToSystemProperties(() -> {
TestPropertyValues.of(
"user.home:src/test/resources/maven-settings/active-profile-repositories",
"interpolate:true").applyToSystemProperties(() -> {
List<RepositoryConfiguration> repositoryConfiguration = RepositoryConfigurationFactory
.createDefaultRepositoryConfiguration();
assertRepositoryConfiguration(repositoryConfiguration, "central",

@ -165,8 +165,7 @@ public class LocalDevToolsAutoConfiguration {
private final OptionalLiveReloadServer liveReloadServer;
LiveReloadServerEventListener(
OptionalLiveReloadServer liveReloadServer) {
LiveReloadServerEventListener(OptionalLiveReloadServer liveReloadServer) {
this.liveReloadServer = liveReloadServer;
}

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -50,7 +50,7 @@ public class RestTemplateProxyCustomizationExample {
@Override
public HttpHost determineProxy(HttpHost target,
HttpRequest request, HttpContext context)
throws HttpException {
throws HttpException {
if (target.getHostName().equals("192.168.0.5")) {
return null;
}

@ -35,7 +35,7 @@ public class UserServiceAutoConfigurationTests {
// tag::runner[]
private final ApplicationContextRunner contextRunner = new ApplicationContextRunner()
.withConfiguration(AutoConfigurations.of(UserServiceAutoConfiguration.class));
// end::runner[]
// end::runner[]
// tag::test-env[]
@Test

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -93,7 +93,7 @@ public abstract class AnnotationCustomizableTypeExcludeFilter extends TypeExclud
@SuppressWarnings("unchecked")
protected final boolean isTypeOrAnnotated(MetadataReader metadataReader,
MetadataReaderFactory metadataReaderFactory, Class<?> type)
throws IOException {
throws IOException {
AnnotationTypeFilter annotationFilter = new AnnotationTypeFilter(
(Class<? extends Annotation>) type);
AssignableTypeFilter typeFilter = new AssignableTypeFilter(type);

@ -43,9 +43,8 @@ class RestDocsRestAssuredBuilderCustomizer implements InitializingBean {
public void afterPropertiesSet() throws Exception {
PropertyMapper map = PropertyMapper.get();
String host = this.properties.getUriHost();
map.from(this.properties::getUriScheme)
.when((scheme) -> StringUtils.hasText(scheme)
&& StringUtils.hasText(host))
map.from(this.properties::getUriScheme).when(
(scheme) -> StringUtils.hasText(scheme) && StringUtils.hasText(host))
.to((scheme) -> this.delegate.baseUri(scheme + "://" + host));
map.from(this.properties::getUriPort).whenNonNull().to(this.delegate::port);
}

@ -30,7 +30,8 @@ import org.springframework.context.annotation.Import;
*/
@Configuration
@ConditionalOnProperty(prefix = "spring.test.mockmvc", name = "secure", havingValue = "true", matchIfMissing = true)
@Import({ SecurityAutoConfiguration.class, UserDetailsServiceAutoConfiguration.class, MockMvcSecurityConfiguration.class })
@Import({ SecurityAutoConfiguration.class, UserDetailsServiceAutoConfiguration.class,
MockMvcSecurityConfiguration.class })
public class MockMvcSecurityAutoConfiguration {
}

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -58,13 +58,13 @@ public class TestDatabaseAutoConfigurationTests {
this.contextRunner
.withUserConfiguration(ExistingDataSourceConfiguration.class)
.run((secondContext) -> {
DataSource anotherDatasource = secondContext
.getBean(DataSource.class);
JdbcTemplate anotherJdbcTemplate = new JdbcTemplate(
anotherDatasource);
anotherJdbcTemplate
.execute("create table example (id int, name varchar);");
});
DataSource anotherDatasource = secondContext
.getBean(DataSource.class);
JdbcTemplate anotherJdbcTemplate = new JdbcTemplate(
anotherDatasource);
anotherJdbcTemplate.execute(
"create table example (id int, name varchar);");
});
});
}

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -53,7 +53,7 @@ public class ExampleJsonComponent {
@Override
protected ExampleCustomObject deserializeObject(JsonParser jsonParser,
DeserializationContext context, ObjectCodec codec, JsonNode tree)
throws IOException {
throws IOException {
return new ExampleCustomObject(
nullSafeValue(tree.get("value"), String.class));
}

@ -363,7 +363,7 @@ public class MockitoPostProcessor extends InstantiationAwareBeanPostProcessorAda
@Override
public PropertyValues postProcessPropertyValues(PropertyValues pvs,
PropertyDescriptor[] pds, final Object bean, String beanName)
throws BeansException {
throws BeansException {
ReflectionUtils.doWithFields(bean.getClass(),
(field) -> postProcessField(bean, field));
return pvs;

@ -500,7 +500,7 @@ public class TestRestTemplate {
*/
public <T> ResponseEntity<T> postForEntity(String url, Object request,
Class<T> responseType, Map<String, ?> urlVariables)
throws RestClientException {
throws RestClientException {
return this.restTemplate.postForEntity(url, request, responseType, urlVariables);
}
@ -743,7 +743,7 @@ public class TestRestTemplate {
*/
public <T> ResponseEntity<T> exchange(String url, HttpMethod method,
HttpEntity<?> requestEntity, Class<T> responseType, Object... urlVariables)
throws RestClientException {
throws RestClientException {
return this.restTemplate.exchange(url, method, requestEntity, responseType,
urlVariables);
}
@ -788,7 +788,7 @@ public class TestRestTemplate {
*/
public <T> ResponseEntity<T> exchange(URI url, HttpMethod method,
HttpEntity<?> requestEntity, Class<T> responseType)
throws RestClientException {
throws RestClientException {
return this.restTemplate.exchange(applyRootUriIfNecessary(url), method,
requestEntity, responseType);
}
@ -871,7 +871,7 @@ public class TestRestTemplate {
*/
public <T> ResponseEntity<T> exchange(URI url, HttpMethod method,
HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType)
throws RestClientException {
throws RestClientException {
return this.restTemplate.exchange(applyRootUriIfNecessary(url), method,
requestEntity, responseType);
}
@ -939,7 +939,7 @@ public class TestRestTemplate {
*/
public <T> T execute(String url, HttpMethod method, RequestCallback requestCallback,
ResponseExtractor<T> responseExtractor, Object... urlVariables)
throws RestClientException {
throws RestClientException {
return this.restTemplate.execute(url, method, requestCallback, responseExtractor,
urlVariables);
}
@ -963,7 +963,7 @@ public class TestRestTemplate {
*/
public <T> T execute(String url, HttpMethod method, RequestCallback requestCallback,
ResponseExtractor<T> responseExtractor, Map<String, ?> urlVariables)
throws RestClientException {
throws RestClientException {
return this.restTemplate.execute(url, method, requestCallback, responseExtractor,
urlVariables);
}

@ -52,8 +52,8 @@ import java.util.List;
* Each stringer may be used to encode a single top level value. Instances of this class
* are not thread safe. Although this class is nonfinal, it was not designed for
* inheritance and should not be subclassed. In particular, self-use by overrideable
* methods is not specified. See <i>Effective Java</i> Item 17,
* "Design and Document or inheritance or else prohibit it" for further information.
* methods is not specified. See <i>Effective Java</i> Item 17, "Design and Document or
* inheritance or else prohibit it" for further information.
*/
public class JSONStringer {

@ -54,8 +54,8 @@ package org.springframework.boot.configurationprocessor.json;
* Each tokener may be used to parse a single JSON string. Instances of this class are not
* thread safe. Although this class is nonfinal, it was not designed for inheritance and
* should not be subclassed. In particular, self-use by overrideable methods is not
* specified. See <i>Effective Java</i> Item 17,
* "Design and Document or inheritance or else prohibit it" for further information.
* specified. See <i>Effective Java</i> Item 17, "Design and Document or inheritance or
* else prohibit it" for further information.
*/
public class JSONTokener {

@ -349,10 +349,10 @@ public class ConfigurationMetadataAnnotationProcessorTests {
.fromSource(
org.springframework.boot.configurationsample.method.DeprecatedClassMethodConfig.Foo.class)
.withDeprecation(null, null));
assertThat(metadata).has(
Metadata.withProperty("foo.flag", Boolean.class).withDefaultValue(false)
.fromSource(
org.springframework.boot.configurationsample.method.DeprecatedClassMethodConfig.Foo.class)
assertThat(metadata).has(Metadata.withProperty("foo.flag", Boolean.class)
.withDefaultValue(false)
.fromSource(
org.springframework.boot.configurationsample.method.DeprecatedClassMethodConfig.Foo.class)
.withDeprecation(null, null));
}
@ -419,18 +419,14 @@ public class ConfigurationMetadataAnnotationProcessorTests {
ConfigurationMetadata metadata = compile(ClassWithNestedProperties.class);
assertThat(metadata).has(Metadata.withGroup("nestedChildProps")
.fromSource(ClassWithNestedProperties.NestedChildClass.class));
assertThat(metadata)
.has(Metadata
.withProperty("nestedChildProps.child-class-property",
Integer.class)
.fromSource(ClassWithNestedProperties.NestedChildClass.class)
.withDefaultValue(20));
assertThat(metadata)
.has(Metadata
.withProperty("nestedChildProps.parent-class-property",
Integer.class)
.fromSource(ClassWithNestedProperties.NestedChildClass.class)
.withDefaultValue(10));
assertThat(metadata).has(Metadata
.withProperty("nestedChildProps.child-class-property", Integer.class)
.fromSource(ClassWithNestedProperties.NestedChildClass.class)
.withDefaultValue(20));
assertThat(metadata).has(Metadata
.withProperty("nestedChildProps.parent-class-property", Integer.class)
.fromSource(ClassWithNestedProperties.NestedChildClass.class)
.withDefaultValue(10));
}
@Test
@ -830,14 +826,11 @@ public class ConfigurationMetadataAnnotationProcessorTests {
@Test
public void mergingOfHintWithProvider() throws Exception {
writeAdditionalHints(
new ItemHint("simple.theName",
Collections
.emptyList(),
Arrays.asList(
new ItemHint.ValueProvider("first",
Collections.singletonMap("target", "org.foo")),
new ItemHint.ValueProvider("second", null))));
writeAdditionalHints(new ItemHint("simple.theName", Collections.emptyList(),
Arrays.asList(
new ItemHint.ValueProvider("first",
Collections.singletonMap("target", "org.foo")),
new ItemHint.ValueProvider("second", null))));
ConfigurationMetadata metadata = compile(SimpleProperties.class);
assertThat(metadata).has(Metadata.withProperty("simple.the-name", String.class)
.fromSource(SimpleProperties.class)

@ -32,7 +32,7 @@ public class EnabledEndpoint {
}
@ReadOperation
public String retrieve(String parameter, Integer anotherParameter) {
public String retrieve(String parameter, Integer anotherParameter) {
return "not a main read operation";
}

@ -177,8 +177,8 @@ final class JavaPluginAction implements PluginApplicationAction {
SourceSet sourceSet) {
String locations = StringUtils
.collectionToCommaDelimitedString(sourceSet.getResources().getSrcDirs());
compile.getOptions().getCompilerArgs()
.add("-Aorg.springframework.boot.configurationprocessor.additionalMetadataLocations="
compile.getOptions().getCompilerArgs().add(
"-Aorg.springframework.boot.configurationprocessor.additionalMetadataLocations="
+ locations);
}

@ -57,7 +57,8 @@ public class BuildInfo extends ConventionTask {
new File(getDestinationDir(), "build-info.properties"))
.writeBuildProperties(new ProjectDetails(
this.properties.getGroup(),
this.properties.getArtifact() == null ? "unspecified"
this.properties.getArtifact() == null
? "unspecified"
: this.properties.getArtifact(),
this.properties.getVersion(),
this.properties.getName(), coerceToStringValues(

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -50,8 +50,8 @@ public class BootWar extends War implements BootArchive {
*/
public BootWar() {
getWebInf().into("lib-provided",
(copySpec) -> copySpec
.from((Callable<Iterable<File>>) () -> this.providedClasspath == null
(copySpec) -> copySpec.from(
(Callable<Iterable<File>>) () -> this.providedClasspath == null
? Collections.emptyList() : this.providedClasspath));
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save