Merge branch '1.1.x'
This commit is contained in:
@@ -75,15 +75,7 @@ public class HttpMessageConverters implements Iterable<HttpMessageConverter<?>>
|
||||
public HttpMessageConverters(Collection<HttpMessageConverter<?>> additionalConverters) {
|
||||
List<HttpMessageConverter<?>> converters = new ArrayList<HttpMessageConverter<?>>();
|
||||
List<HttpMessageConverter<?>> defaultConverters = getDefaultConverters();
|
||||
for (HttpMessageConverter<?> converter : additionalConverters) {
|
||||
int defaultConverterIndex = indexOfItemClass(defaultConverters, converter);
|
||||
if (defaultConverterIndex == -1) {
|
||||
converters.add(converter);
|
||||
}
|
||||
else {
|
||||
defaultConverters.set(defaultConverterIndex, converter);
|
||||
}
|
||||
}
|
||||
converters.addAll(additionalConverters);
|
||||
converters.addAll(defaultConverters);
|
||||
this.converters = Collections.unmodifiableList(converters);
|
||||
}
|
||||
@@ -120,16 +112,6 @@ public class HttpMessageConverters implements Iterable<HttpMessageConverter<?>>
|
||||
converters.addAll(xml);
|
||||
}
|
||||
|
||||
private <E> int indexOfItemClass(List<E> list, E item) {
|
||||
Class<? extends Object> itemClass = item.getClass();
|
||||
for (int i = 0; i < list.size(); i++) {
|
||||
if (list.get(i).getClass().isAssignableFrom(itemClass)) {
|
||||
return i;
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Iterator<HttpMessageConverter<?>> iterator() {
|
||||
return getConverters().iterator();
|
||||
|
||||
@@ -69,6 +69,15 @@ public class HttpMessageConvertersTests {
|
||||
MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
|
||||
HttpMessageConverters converters = new HttpMessageConverters(converter);
|
||||
assertTrue(converters.getConverters().contains(converter));
|
||||
int count = 0;
|
||||
for (HttpMessageConverter<?> httpMessageConverter : converters) {
|
||||
if (httpMessageConverter instanceof MappingJackson2HttpMessageConverter) {
|
||||
count++;
|
||||
}
|
||||
}
|
||||
// The existing converter is still there, but with a lower priority
|
||||
assertEquals(2, count);
|
||||
assertEquals(0, converters.getConverters().indexOf(converter));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -118,7 +118,7 @@
|
||||
<plugin>
|
||||
<groupId>pl.project13.maven</groupId>
|
||||
<artifactId>git-commit-id-plugin</artifactId>
|
||||
<version>2.1.7</version>
|
||||
<version>2.1.10</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
@@ -130,7 +130,7 @@
|
||||
<verbose>true</verbose>
|
||||
<dateFormat>yyyy-MM-dd'T'HH:mm:ssZ</dateFormat>
|
||||
<generateGitPropertiesFile>true</generateGitPropertiesFile>
|
||||
<generateGitPropertiesFilename>${basedir}/src/main/resources/git.properties</generateGitPropertiesFilename>
|
||||
<generateGitPropertiesFilename>${basedir}/target/classes/git.properties</generateGitPropertiesFilename>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<!-- Support our own plugin -->
|
||||
|
||||
Reference in New Issue
Block a user