parent
d8f7347000
commit
acbb2544bf
|
|
@ -77,7 +77,7 @@ public class AnnotationDrivenEventListenerTests {
|
|||
|
||||
private EventCollector eventCollector;
|
||||
|
||||
private CountDownLatch countDownLatch; // 1 call by default
|
||||
private CountDownLatch countDownLatch; // 1 call by default
|
||||
|
||||
|
||||
@After
|
||||
|
|
@ -93,16 +93,23 @@ public class AnnotationDrivenEventListenerTests {
|
|||
load(TestEventListener.class);
|
||||
TestEvent event = new TestEvent(this, "test");
|
||||
TestEventListener listener = this.context.getBean(TestEventListener.class);
|
||||
|
||||
this.eventCollector.assertNoEventReceived(listener);
|
||||
this.context.publishEvent(event);
|
||||
this.eventCollector.assertEvent(listener, event);
|
||||
this.eventCollector.assertTotalEventsCount(1);
|
||||
|
||||
this.eventCollector.clear();
|
||||
this.context.publishEvent(event);
|
||||
this.eventCollector.assertEvent(listener, event);
|
||||
this.eventCollector.assertTotalEventsCount(1);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void simpleEventXmlConfig() {
|
||||
this.context = new ClassPathXmlApplicationContext(
|
||||
"org/springframework/context/event/simple-event-configuration.xml");
|
||||
|
||||
TestEvent event = new TestEvent(this, "test");
|
||||
TestEventListener listener = this.context.getBean(TestEventListener.class);
|
||||
this.eventCollector = getEventCollector(this.context);
|
||||
|
|
@ -116,7 +123,6 @@ public class AnnotationDrivenEventListenerTests {
|
|||
@Test
|
||||
public void metaAnnotationIsDiscovered() {
|
||||
load(MetaAnnotationListenerTestBean.class);
|
||||
|
||||
MetaAnnotationListenerTestBean bean = this.context.getBean(MetaAnnotationListenerTestBean.class);
|
||||
this.eventCollector.assertNoEventReceived(bean);
|
||||
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@ import static org.junit.Assert.*;
|
|||
* Test utility to collect and assert events.
|
||||
*
|
||||
* @author Stephane Nicoll
|
||||
* @author Juergen Hoeller
|
||||
*/
|
||||
@Component
|
||||
public class EventCollector {
|
||||
|
|
@ -73,7 +74,7 @@ public class EventCollector {
|
|||
*/
|
||||
public void assertEvent(String listenerId, Object... events) {
|
||||
List<Object> actual = this.content.getOrDefault(listenerId, Collections.emptyList());
|
||||
assertEquals("wrong number of events", events.length, actual.size());
|
||||
assertEquals("Wrong number of events", events.length, actual.size());
|
||||
for (int i = 0; i < events.length; i++) {
|
||||
assertEquals("Wrong event at index " + i, events[i], actual.get(i));
|
||||
}
|
||||
|
|
@ -97,8 +98,15 @@ public class EventCollector {
|
|||
for (Map.Entry<String, List<Object>> entry : this.content.entrySet()) {
|
||||
actual += entry.getValue().size();
|
||||
}
|
||||
assertEquals("Wrong number of total events (" + this.content.size() + ") " +
|
||||
"registered listener(s)", number, actual);
|
||||
assertEquals("Wrong number of total events (" + this.content.size() +
|
||||
") registered listener(s)", number, actual);
|
||||
}
|
||||
|
||||
/**
|
||||
* Clear the collected events, allowing for reuse of the collector.
|
||||
*/
|
||||
public void clear() {
|
||||
this.content.clear();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -31,9 +31,6 @@ import org.springframework.util.Assert;
|
|||
import org.springframework.util.ObjectUtils;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import static java.lang.String.*;
|
||||
import static org.springframework.util.StringUtils.*;
|
||||
|
||||
/**
|
||||
* Abstract base class for {@link Environment} implementations. Supports the notion of
|
||||
* reserved default profile names and enables specifying active and default profiles
|
||||
|
|
@ -124,7 +121,7 @@ public abstract class AbstractEnvironment implements ConfigurableEnvironment {
|
|||
public AbstractEnvironment() {
|
||||
customizePropertySources(this.propertySources);
|
||||
if (this.logger.isDebugEnabled()) {
|
||||
this.logger.debug(format(
|
||||
this.logger.debug(String.format(
|
||||
"Initialized %s with PropertySources %s", getClass().getSimpleName(), this.propertySources));
|
||||
}
|
||||
}
|
||||
|
|
@ -242,7 +239,8 @@ public abstract class AbstractEnvironment implements ConfigurableEnvironment {
|
|||
if (this.activeProfiles.isEmpty()) {
|
||||
String profiles = getProperty(ACTIVE_PROFILES_PROPERTY_NAME);
|
||||
if (StringUtils.hasText(profiles)) {
|
||||
setActiveProfiles(commaDelimitedListToStringArray(trimAllWhitespace(profiles)));
|
||||
setActiveProfiles(StringUtils.commaDelimitedListToStringArray(
|
||||
StringUtils.trimAllWhitespace(profiles)));
|
||||
}
|
||||
}
|
||||
return this.activeProfiles;
|
||||
|
|
@ -264,7 +262,7 @@ public abstract class AbstractEnvironment implements ConfigurableEnvironment {
|
|||
@Override
|
||||
public void addActiveProfile(String profile) {
|
||||
if (this.logger.isDebugEnabled()) {
|
||||
this.logger.debug(format("Activating profile '%s'", profile));
|
||||
this.logger.debug(String.format("Activating profile '%s'", profile));
|
||||
}
|
||||
validateProfile(profile);
|
||||
doGetActiveProfiles();
|
||||
|
|
@ -296,7 +294,8 @@ public abstract class AbstractEnvironment implements ConfigurableEnvironment {
|
|||
if (this.defaultProfiles.equals(getReservedDefaultProfiles())) {
|
||||
String profiles = getProperty(DEFAULT_PROFILES_PROPERTY_NAME);
|
||||
if (StringUtils.hasText(profiles)) {
|
||||
setDefaultProfiles(commaDelimitedListToStringArray(trimAllWhitespace(profiles)));
|
||||
setDefaultProfiles(StringUtils.commaDelimitedListToStringArray(
|
||||
StringUtils.trimAllWhitespace(profiles)));
|
||||
}
|
||||
}
|
||||
return this.defaultProfiles;
|
||||
|
|
@ -393,7 +392,7 @@ public abstract class AbstractEnvironment implements ConfigurableEnvironment {
|
|||
}
|
||||
catch (AccessControlException ex) {
|
||||
if (logger.isInfoEnabled()) {
|
||||
logger.info(format("Caught AccessControlException when accessing system " +
|
||||
logger.info(String.format("Caught AccessControlException when accessing system " +
|
||||
"environment variable [%s]; its value will be returned [null]. Reason: %s",
|
||||
attributeName, ex.getMessage()));
|
||||
}
|
||||
|
|
@ -434,7 +433,7 @@ public abstract class AbstractEnvironment implements ConfigurableEnvironment {
|
|||
}
|
||||
catch (AccessControlException ex) {
|
||||
if (logger.isInfoEnabled()) {
|
||||
logger.info(format("Caught AccessControlException when accessing system " +
|
||||
logger.info(String.format("Caught AccessControlException when accessing system " +
|
||||
"property [%s]; its value will be returned [null]. Reason: %s",
|
||||
attributeName, ex.getMessage()));
|
||||
}
|
||||
|
|
@ -575,7 +574,7 @@ public abstract class AbstractEnvironment implements ConfigurableEnvironment {
|
|||
|
||||
@Override
|
||||
public String toString() {
|
||||
return format("%s {activeProfiles=%s, defaultProfiles=%s, propertySources=%s}",
|
||||
return String.format("%s {activeProfiles=%s, defaultProfiles=%s, propertySources=%s}",
|
||||
getClass().getSimpleName(), this.activeProfiles, this.defaultProfiles,
|
||||
this.propertySources);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2002-2012 the original author or authors.
|
||||
* Copyright 2002-2016 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.
|
||||
|
|
@ -61,6 +61,7 @@ public class HttpPutFormContentFilter extends OncePerRequestFilter {
|
|||
|
||||
private final FormHttpMessageConverter formConverter = new AllEncompassingFormHttpMessageConverter();
|
||||
|
||||
|
||||
/**
|
||||
* The default character set to use for reading form data.
|
||||
*/
|
||||
|
|
@ -68,6 +69,7 @@ public class HttpPutFormContentFilter extends OncePerRequestFilter {
|
|||
this.formConverter.setCharset(charset);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected void doFilterInternal(final HttpServletRequest request, HttpServletResponse response,
|
||||
FilterChain filterChain) throws ServletException, IOException {
|
||||
|
|
@ -104,29 +106,30 @@ public class HttpPutFormContentFilter extends OncePerRequestFilter {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
private static class HttpPutFormContentRequestWrapper extends HttpServletRequestWrapper {
|
||||
|
||||
private MultiValueMap<String, String> formParameters;
|
||||
|
||||
public HttpPutFormContentRequestWrapper(HttpServletRequest request, MultiValueMap<String, String> parameters) {
|
||||
super(request);
|
||||
this.formParameters = (parameters != null) ? parameters : new LinkedMultiValueMap<String, String>();
|
||||
this.formParameters = (parameters != null ? parameters : new LinkedMultiValueMap<String, String>());
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getParameter(String name) {
|
||||
String queryStringValue = super.getParameter(name);
|
||||
String formValue = this.formParameters.getFirst(name);
|
||||
return (queryStringValue != null) ? queryStringValue : formValue;
|
||||
return (queryStringValue != null ? queryStringValue : formValue);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, String[]> getParameterMap() {
|
||||
Map<String, String[]> result = new LinkedHashMap<String, String[]>();
|
||||
Enumeration<String> names = this.getParameterNames();
|
||||
Enumeration<String> names = getParameterNames();
|
||||
while (names.hasMoreElements()) {
|
||||
String name = names.nextElement();
|
||||
result.put(name, this.getParameterValues(name));
|
||||
result.put(name, getParameterValues(name));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
|
@ -150,7 +153,7 @@ public class HttpPutFormContentFilter extends OncePerRequestFilter {
|
|||
return formValues.toArray(new String[formValues.size()]);
|
||||
}
|
||||
else {
|
||||
List<String> result = new ArrayList<String>();
|
||||
List<String> result = new ArrayList<String>(queryStringValues.length + formValues.size());
|
||||
result.addAll(Arrays.asList(queryStringValues));
|
||||
result.addAll(formValues);
|
||||
return result.toArray(new String[result.size()]);
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2002-2014 the original author or authors.
|
||||
* Copyright 2002-2016 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.
|
||||
|
|
@ -107,8 +107,7 @@ public class ServerEndpointRegistration extends ServerEndpointConfig.Configurato
|
|||
|
||||
@Override
|
||||
public Class<? extends Endpoint> getEndpointClass() {
|
||||
return (this.endpoint != null) ?
|
||||
this.endpoint.getClass() : ((Class<? extends Endpoint>) this.endpointProvider.getHandlerType());
|
||||
return (this.endpoint != null ? this.endpoint.getClass() : this.endpointProvider.getHandlerType());
|
||||
}
|
||||
|
||||
public Endpoint getEndpoint() {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2002-2015 the original author or authors.
|
||||
* Copyright 2002-2016 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.
|
||||
|
|
@ -17,7 +17,6 @@
|
|||
package org.springframework.web.socket.server.standard;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
|
@ -65,7 +64,7 @@ public class TomcatRequestUpgradeStrategy extends AbstractStandardUpgradeStrateg
|
|||
Map<String, String> pathParams = Collections.<String, String> emptyMap();
|
||||
|
||||
ServerEndpointRegistration endpointConfig = new ServerEndpointRegistration(path, endpoint);
|
||||
endpointConfig.setSubprotocols(Arrays.asList(selectedProtocol));
|
||||
endpointConfig.setSubprotocols(Collections.singletonList(selectedProtocol));
|
||||
endpointConfig.setExtensions(selectedExtensions);
|
||||
|
||||
try {
|
||||
|
|
|
|||
Loading…
Reference in New Issue