Browse Source

Simplify CodecConfigurer related type names

Essentially drop "Configurer" suffix from nested interfaces.
pull/1310/merge
Rossen Stoyanchev 9 years ago
parent
commit
1328c8f46e
  1. 37
      spring-web/src/main/java/org/springframework/http/codec/AbstractCodecConfigurer.java
  2. 16
      spring-web/src/main/java/org/springframework/http/codec/ClientCodecConfigurer.java
  3. 17
      spring-web/src/main/java/org/springframework/http/codec/CodecConfigurer.java
  4. 29
      spring-web/src/main/java/org/springframework/http/codec/DefaultClientCodecConfigurer.java
  5. 18
      spring-web/src/main/java/org/springframework/http/codec/DefaultServerCodecConfigurer.java
  6. 8
      spring-web/src/main/java/org/springframework/http/codec/ServerCodecConfigurer.java
  7. 19
      spring-web/src/test/java/org/springframework/http/codec/CodecConfigurerTests.java
  8. 5
      spring-webflux/src/main/java/org/springframework/web/reactive/function/client/DefaultExchangeStrategiesBuilder.java
  9. 5
      spring-webflux/src/main/java/org/springframework/web/reactive/function/client/ExchangeStrategies.java
  10. 4
      spring-webflux/src/main/java/org/springframework/web/reactive/function/server/DefaultHandlerStrategiesBuilder.java
  11. 5
      spring-webflux/src/main/java/org/springframework/web/reactive/function/server/HandlerStrategies.java

37
spring-web/src/main/java/org/springframework/http/codec/DefaultCodecConfigurer.java → spring-web/src/main/java/org/springframework/http/codec/AbstractCodecConfigurer.java

@ -45,36 +45,34 @@ import org.springframework.util.ClassUtils; @@ -45,36 +45,34 @@ import org.springframework.util.ClassUtils;
* @author Rossen Stoyanchev
* @since 5.0
*/
class DefaultCodecConfigurer implements CodecConfigurer {
abstract class AbstractCodecConfigurer implements CodecConfigurer {
static final boolean jackson2Present =
protected static final boolean jackson2Present =
ClassUtils.isPresent("com.fasterxml.jackson.databind.ObjectMapper",
org.springframework.http.codec.DefaultCodecConfigurer.class.getClassLoader()) &&
AbstractCodecConfigurer.class.getClassLoader()) &&
ClassUtils.isPresent("com.fasterxml.jackson.core.JsonGenerator",
org.springframework.http.codec.DefaultCodecConfigurer.class
.getClassLoader());
AbstractCodecConfigurer.class.getClassLoader());
static final boolean jaxb2Present =
ClassUtils.isPresent("javax.xml.bind.Binder",
org.springframework.http.codec.DefaultCodecConfigurer.class.getClassLoader());
protected static final boolean jaxb2Present = ClassUtils.isPresent("javax.xml.bind.Binder",
AbstractCodecConfigurer.class.getClassLoader());
private final AbstractDefaultCodecsConfigurer defaultCodecs;
private final AbstractDefaultCodecs defaultCodecs;
private final CustomCodecConfigurer customCodecs = new CustomCodecConfigurer();
private final DefaultCustomCodecs customCodecs = new DefaultCustomCodecs();
/**
* Protected constructor with the configurer for default readers and writers.
*/
DefaultCodecConfigurer(AbstractDefaultCodecsConfigurer defaultCodecConfigurer) {
Assert.notNull(defaultCodecConfigurer, "DefaultCodecConfigurer is required.");
this.defaultCodecs = defaultCodecConfigurer;
protected AbstractCodecConfigurer(AbstractDefaultCodecs defaultCodecs) {
Assert.notNull(defaultCodecs, "'defaultCodecs' is required.");
this.defaultCodecs = defaultCodecs;
}
@Override
public DefaultCodecsConfigurer defaultCodecs() {
public DefaultCodecs defaultCodecs() {
return this.defaultCodecs;
}
@ -84,7 +82,7 @@ class DefaultCodecConfigurer implements CodecConfigurer { @@ -84,7 +82,7 @@ class DefaultCodecConfigurer implements CodecConfigurer {
}
@Override
public CustomCodecsConfigurer customCodecs() {
public CustomCodecs customCodecs() {
return this.customCodecs;
}
@ -125,10 +123,9 @@ class DefaultCodecConfigurer implements CodecConfigurer { @@ -125,10 +123,9 @@ class DefaultCodecConfigurer implements CodecConfigurer {
/**
* Default implementation for {@link CodecConfigurer.DefaultCodecsConfigurer}.
* Default implementation for {@link DefaultCodecs}.
*/
abstract static class AbstractDefaultCodecsConfigurer
implements CodecConfigurer.DefaultCodecsConfigurer {
abstract static class AbstractDefaultCodecs implements DefaultCodecs {
private boolean suppressed = false;
@ -270,9 +267,9 @@ class DefaultCodecConfigurer implements CodecConfigurer { @@ -270,9 +267,9 @@ class DefaultCodecConfigurer implements CodecConfigurer {
/**
* Default implementation of CustomCodecsConfigurer.
* Default implementation of CustomCodecs.
*/
private static class CustomCodecConfigurer implements CodecConfigurer.CustomCodecsConfigurer {
private static class DefaultCustomCodecs implements CustomCodecs {
private final List<HttpMessageReader<?>> typedReaders = new ArrayList<>();

16
spring-web/src/main/java/org/springframework/http/codec/ClientCodecConfigurer.java

@ -37,10 +37,10 @@ public interface ClientCodecConfigurer extends CodecConfigurer { @@ -37,10 +37,10 @@ public interface ClientCodecConfigurer extends CodecConfigurer {
/**
* {@inheritDoc}
* <p>Overriden to return {@link ClientDefaultCodecsConfigurer}.
* <p>Overriden to return {@link ClientDefaultCodecs}.
*/
@Override
ClientDefaultCodecsConfigurer defaultCodecs();
ClientDefaultCodecs defaultCodecs();
/**
@ -52,16 +52,16 @@ public interface ClientCodecConfigurer extends CodecConfigurer { @@ -52,16 +52,16 @@ public interface ClientCodecConfigurer extends CodecConfigurer {
}
/**
* Extension of {@link DefaultCodecConfigurer} with extra client options.
* Extension of {@link AbstractCodecConfigurer} with extra client options.
*/
interface ClientDefaultCodecsConfigurer extends DefaultCodecsConfigurer {
interface ClientDefaultCodecs extends DefaultCodecs {
/**
* Configure encoders or writers for use with
* {@link org.springframework.http.codec.multipart.MultipartHttpMessageWriter
* MultipartHttpMessageWriter}.
*/
MultipartCodecsConfigurer multipartCodecs();
MultipartCodecs multipartCodecs();
/**
* Configure the {@code Decoder} to use for Server-Sent Events.
@ -74,14 +74,14 @@ public interface ClientCodecConfigurer extends CodecConfigurer { @@ -74,14 +74,14 @@ public interface ClientCodecConfigurer extends CodecConfigurer {
/**
* Registry and container for multipart HTTP message writers.
*/
interface MultipartCodecsConfigurer {
interface MultipartCodecs {
/**
* Add a Part {@code Encoder}, internally wrapped with
* {@link EncoderHttpMessageWriter}.
* @param encoder the encoder to add
*/
MultipartCodecsConfigurer encoder(Encoder<?> encoder);
MultipartCodecs encoder(Encoder<?> encoder);
/**
* Add a Part {@link HttpMessageWriter}. For writers of type
@ -89,7 +89,7 @@ public interface ClientCodecConfigurer extends CodecConfigurer { @@ -89,7 +89,7 @@ public interface ClientCodecConfigurer extends CodecConfigurer {
* {@link #encoder(Encoder)} instead.
* @param writer the writer to add
*/
MultipartCodecsConfigurer writer(HttpMessageWriter<?> writer);
MultipartCodecs writer(HttpMessageWriter<?> writer);
}
}

17
spring-web/src/main/java/org/springframework/http/codec/CodecConfigurer.java

@ -24,7 +24,10 @@ import org.springframework.http.codec.json.Jackson2JsonDecoder; @@ -24,7 +24,10 @@ import org.springframework.http.codec.json.Jackson2JsonDecoder;
import org.springframework.http.codec.json.Jackson2JsonEncoder;
/**
* Defines the interface for client or server HTTP message reader and writer configurers.
* Defines a common interface for configuring either client or server HTTP
* message readers and writers. To obtain an instance use either
* {@link ClientCodecConfigurer#create()} or
* {@link ServerCodecConfigurer#create()}.
*
* @author Rossen Stoyanchev
* @since 5.0
@ -34,7 +37,7 @@ public interface CodecConfigurer { @@ -34,7 +37,7 @@ public interface CodecConfigurer {
/**
* Provide overrides for built-in HTTP message readers or writers.
*/
DefaultCodecsConfigurer defaultCodecs();
DefaultCodecs defaultCodecs();
/**
* Whether to make default HTTP message reader and writer registrations.
@ -45,7 +48,7 @@ public interface CodecConfigurer { @@ -45,7 +48,7 @@ public interface CodecConfigurer {
/**
* Register a custom encoder or decoder.
*/
CustomCodecsConfigurer customCodecs();
CustomCodecs customCodecs();
/**
* Prepare a list of HTTP message readers.
@ -60,10 +63,10 @@ public interface CodecConfigurer { @@ -60,10 +63,10 @@ public interface CodecConfigurer {
/**
* Registry and container for built-in HTTP message readers and writers.
* @see ClientCodecConfigurer.ClientDefaultCodecsConfigurer
* @see ServerCodecConfigurer.ServerDefaultCodecsConfigurer
* @see ClientCodecConfigurer.ClientDefaultCodecs
* @see ServerCodecConfigurer.ServerDefaultCodecs
*/
interface DefaultCodecsConfigurer {
interface DefaultCodecs {
/**
* Override the default Jackson {@code Decoder}.
@ -83,7 +86,7 @@ public interface CodecConfigurer { @@ -83,7 +86,7 @@ public interface CodecConfigurer {
/**
* Registry and container for custom HTTP message readers and writers.
*/
interface CustomCodecsConfigurer {
interface CustomCodecs {
/**
* Add a custom {@code Decoder} internally wrapped with

29
spring-web/src/main/java/org/springframework/http/codec/DefaultClientCodecConfigurer.java

@ -31,32 +31,33 @@ import org.springframework.http.codec.multipart.MultipartHttpMessageWriter; @@ -31,32 +31,33 @@ import org.springframework.http.codec.multipart.MultipartHttpMessageWriter;
* @author Rossen Stoyanchev
* @since 5.0
*/
class DefaultClientCodecConfigurer extends DefaultCodecConfigurer implements ClientCodecConfigurer {
class DefaultClientCodecConfigurer extends AbstractCodecConfigurer implements ClientCodecConfigurer {
public DefaultClientCodecConfigurer() {
super(new DefaultClientDefaultCodecsConfigurer());
super(new ClientDefaultCodecsImpl());
}
@Override
public ClientDefaultCodecsConfigurer defaultCodecs() {
return (ClientDefaultCodecsConfigurer) super.defaultCodecs();
public ClientDefaultCodecs defaultCodecs() {
return (ClientDefaultCodecs) super.defaultCodecs();
}
/**
* Default implementation of {@link ClientCodecConfigurer.ClientDefaultCodecsConfigurer}.
* Default implementation of {@link ClientDefaultCodecs}.
*/
private static class DefaultClientDefaultCodecsConfigurer
extends AbstractDefaultCodecsConfigurer
implements ClientCodecConfigurer.ClientDefaultCodecsConfigurer {
private static class ClientDefaultCodecsImpl extends AbstractDefaultCodecs
implements ClientDefaultCodecs {
private DefaultMultipartCodecsConfigurer multipartCodecs;
private DefaultMultipartCodecs multipartCodecs;
@Override
public MultipartCodecsConfigurer multipartCodecs() {
public MultipartCodecs multipartCodecs() {
if (this.multipartCodecs == null) {
this.multipartCodecs = new DefaultMultipartCodecsConfigurer();
this.multipartCodecs = new DefaultMultipartCodecs();
}
return this.multipartCodecs;
}
@ -107,19 +108,19 @@ class DefaultClientCodecConfigurer extends DefaultCodecConfigurer implements Cli @@ -107,19 +108,19 @@ class DefaultClientCodecConfigurer extends DefaultCodecConfigurer implements Cli
}
}
private static class DefaultMultipartCodecsConfigurer implements MultipartCodecsConfigurer {
private static class DefaultMultipartCodecs implements MultipartCodecs {
private final List<HttpMessageWriter<?>> writers = new ArrayList<>();
@Override
public MultipartCodecsConfigurer encoder(Encoder<?> encoder) {
public MultipartCodecs encoder(Encoder<?> encoder) {
writer(new EncoderHttpMessageWriter<>(encoder));
return this;
}
@Override
public MultipartCodecsConfigurer writer(HttpMessageWriter<?> writer) {
public MultipartCodecs writer(HttpMessageWriter<?> writer) {
this.writers.add(writer);
return this;
}

18
spring-web/src/main/java/org/springframework/http/codec/DefaultServerCodecConfigurer.java

@ -31,29 +31,29 @@ import org.springframework.util.ClassUtils; @@ -31,29 +31,29 @@ import org.springframework.util.ClassUtils;
* @author Rossen Stoyanchev
* @since 5.0
*/
class DefaultServerCodecConfigurer extends DefaultCodecConfigurer implements ServerCodecConfigurer {
class DefaultServerCodecConfigurer extends AbstractCodecConfigurer implements ServerCodecConfigurer {
static final boolean synchronossMultipartPresent =
ClassUtils.isPresent("org.synchronoss.cloud.nio.multipart.NioMultipartParser",
org.springframework.http.codec.DefaultCodecConfigurer.class.getClassLoader());
AbstractCodecConfigurer.class.getClassLoader());
public DefaultServerCodecConfigurer() {
super(new DefaultServerDefaultCodecsConfigurer());
super(new ServerDefaultCodecsImpl());
}
@Override
public ServerDefaultCodecsConfigurer defaultCodecs() {
return (ServerDefaultCodecsConfigurer) super.defaultCodecs();
public ServerDefaultCodecs defaultCodecs() {
return (ServerDefaultCodecs) super.defaultCodecs();
}
/**
* Default implementation of {@link ServerCodecConfigurer.ServerDefaultCodecsConfigurer}.
* Default implementation of {@link ServerDefaultCodecs}.
*/
private static class DefaultServerDefaultCodecsConfigurer
extends AbstractDefaultCodecsConfigurer
implements ServerCodecConfigurer.ServerDefaultCodecsConfigurer {
private static class ServerDefaultCodecsImpl extends AbstractDefaultCodecs
implements ServerDefaultCodecs {
@Override
public void serverSentEventEncoder(Encoder<?> encoder) {

8
spring-web/src/main/java/org/springframework/http/codec/ServerCodecConfigurer.java

@ -36,10 +36,10 @@ public interface ServerCodecConfigurer extends CodecConfigurer { @@ -36,10 +36,10 @@ public interface ServerCodecConfigurer extends CodecConfigurer {
/**
* {@inheritDoc}
* <p>Overriden to return {@link ServerDefaultCodecsConfigurer}.
* <p>Overriden to return {@link ServerDefaultCodecs}.
*/
@Override
ServerDefaultCodecsConfigurer defaultCodecs();
ServerDefaultCodecs defaultCodecs();
/**
@ -52,9 +52,9 @@ public interface ServerCodecConfigurer extends CodecConfigurer { @@ -52,9 +52,9 @@ public interface ServerCodecConfigurer extends CodecConfigurer {
/**
* Extension of {@link DefaultCodecConfigurer} with extra server options.
* Extension of {@link AbstractCodecConfigurer} with extra server options.
*/
interface ServerDefaultCodecsConfigurer extends DefaultCodecsConfigurer {
interface ServerDefaultCodecs extends DefaultCodecs {
/**
* Configure the {@code Encoder} to use for Server-Sent Events.

19
spring-web/src/test/java/org/springframework/http/codec/CodecConfigurerTests.java

@ -39,17 +39,20 @@ import org.springframework.http.codec.xml.Jaxb2XmlDecoder; @@ -39,17 +39,20 @@ import org.springframework.http.codec.xml.Jaxb2XmlDecoder;
import org.springframework.http.codec.xml.Jaxb2XmlEncoder;
import org.springframework.util.MimeTypeUtils;
import static org.junit.Assert.*;
import static org.mockito.Mockito.*;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import static org.springframework.core.ResolvableType.forClass;
/**
* Unit tests for {@link org.springframework.http.codec.DefaultCodecConfigurer.AbstractDefaultCodecsConfigurer}.
* Unit tests for {@link AbstractCodecConfigurer.AbstractDefaultCodecs}.
* @author Rossen Stoyanchev
*/
public class CodecConfigurerTests {
private final CodecConfigurer configurer = new DefaultCodecConfigurer(new TestDefaultCodecConfigurer());
private final CodecConfigurer configurer = new TestCodecConfigurer();
private final AtomicInteger index = new AtomicInteger(0);
@ -277,8 +280,13 @@ public class CodecConfigurerTests { @@ -277,8 +280,13 @@ public class CodecConfigurerTests {
private static class TestCodecConfigurer extends AbstractCodecConfigurer {
private static class TestDefaultCodecConfigurer extends DefaultCodecConfigurer.AbstractDefaultCodecsConfigurer {
TestCodecConfigurer() {
super(new TestDefaultCodecs());
}
private static class TestDefaultCodecs extends AbstractDefaultCodecs {
@Override
protected void addStringReaderTextOnlyTo(List<HttpMessageReader<?>> result) {
@ -290,5 +298,6 @@ public class CodecConfigurerTests { @@ -290,5 +298,6 @@ public class CodecConfigurerTests {
addReaderTo(result, () -> new DecoderHttpMessageReader<>(StringDecoder.allMimeTypes(true)));
}
}
}
}

5
spring-webflux/src/main/java/org/springframework/web/reactive/function/client/DefaultExchangeStrategiesBuilder.java

@ -22,6 +22,7 @@ import java.util.List; @@ -22,6 +22,7 @@ import java.util.List;
import java.util.function.Consumer;
import org.springframework.http.codec.ClientCodecConfigurer;
import org.springframework.http.codec.CodecConfigurer;
import org.springframework.http.codec.HttpMessageReader;
import org.springframework.http.codec.HttpMessageWriter;
import org.springframework.util.Assert;
@ -47,7 +48,7 @@ class DefaultExchangeStrategiesBuilder implements ExchangeStrategies.Builder { @@ -47,7 +48,7 @@ class DefaultExchangeStrategiesBuilder implements ExchangeStrategies.Builder {
@Override
public ExchangeStrategies.Builder defaultCodecs(
Consumer<ClientCodecConfigurer.ClientDefaultCodecsConfigurer> consumer) {
Consumer<ClientCodecConfigurer.ClientDefaultCodecs> consumer) {
Assert.notNull(consumer, "'consumer' must not be null");
consumer.accept(this.codecConfigurer.defaultCodecs());
return this;
@ -55,7 +56,7 @@ class DefaultExchangeStrategiesBuilder implements ExchangeStrategies.Builder { @@ -55,7 +56,7 @@ class DefaultExchangeStrategiesBuilder implements ExchangeStrategies.Builder {
@Override
public ExchangeStrategies.Builder customCodecs(
Consumer<ClientCodecConfigurer.CustomCodecsConfigurer> consumer) {
Consumer<CodecConfigurer.CustomCodecs> consumer) {
Assert.notNull(consumer, "'consumer' must not be null");
consumer.accept(this.codecConfigurer.customCodecs());
return this;

5
spring-webflux/src/main/java/org/springframework/web/reactive/function/client/ExchangeStrategies.java

@ -20,6 +20,7 @@ import java.util.List; @@ -20,6 +20,7 @@ import java.util.List;
import java.util.function.Consumer;
import org.springframework.http.codec.ClientCodecConfigurer;
import org.springframework.http.codec.CodecConfigurer;
import org.springframework.http.codec.HttpMessageReader;
import org.springframework.http.codec.HttpMessageWriter;
@ -92,7 +93,7 @@ public interface ExchangeStrategies { @@ -92,7 +93,7 @@ public interface ExchangeStrategies {
* @return this builder
* @see #customCodecs(Consumer)
*/
Builder defaultCodecs(Consumer<ClientCodecConfigurer.ClientDefaultCodecsConfigurer> consumer);
Builder defaultCodecs(Consumer<ClientCodecConfigurer.ClientDefaultCodecs> consumer);
/**
* Customize the list of custom client-side HTTP message readers and writers.
@ -100,7 +101,7 @@ public interface ExchangeStrategies { @@ -100,7 +101,7 @@ public interface ExchangeStrategies {
* @return this builder
* @see #defaultCodecs(Consumer)
*/
Builder customCodecs(Consumer<ClientCodecConfigurer.CustomCodecsConfigurer> consumer);
Builder customCodecs(Consumer<CodecConfigurer.CustomCodecs> consumer);
/**
* Builds the {@link ExchangeStrategies}.

4
spring-webflux/src/main/java/org/springframework/web/reactive/function/server/DefaultHandlerStrategiesBuilder.java

@ -59,7 +59,7 @@ class DefaultHandlerStrategiesBuilder implements HandlerStrategies.Builder { @@ -59,7 +59,7 @@ class DefaultHandlerStrategiesBuilder implements HandlerStrategies.Builder {
@Override
public HandlerStrategies.Builder defaultCodecs(
Consumer<ServerCodecConfigurer.ServerDefaultCodecsConfigurer> consumer) {
Consumer<ServerCodecConfigurer.ServerDefaultCodecs> consumer) {
Assert.notNull(consumer, "'consumer' must not be null");
consumer.accept(this.codecConfigurer.defaultCodecs());
return this;
@ -67,7 +67,7 @@ class DefaultHandlerStrategiesBuilder implements HandlerStrategies.Builder { @@ -67,7 +67,7 @@ class DefaultHandlerStrategiesBuilder implements HandlerStrategies.Builder {
@Override
public HandlerStrategies.Builder customCodecs(
Consumer<CodecConfigurer.CustomCodecsConfigurer> consumer) {
Consumer<CodecConfigurer.CustomCodecs> consumer) {
Assert.notNull(consumer, "'consumer' must not be null");
consumer.accept(this.codecConfigurer.customCodecs());
return this;

5
spring-webflux/src/main/java/org/springframework/web/reactive/function/server/HandlerStrategies.java

@ -19,6 +19,7 @@ package org.springframework.web.reactive.function.server; @@ -19,6 +19,7 @@ package org.springframework.web.reactive.function.server;
import java.util.List;
import java.util.function.Consumer;
import org.springframework.http.codec.CodecConfigurer;
import org.springframework.http.codec.HttpMessageReader;
import org.springframework.http.codec.HttpMessageWriter;
import org.springframework.http.codec.ServerCodecConfigurer;
@ -114,7 +115,7 @@ public interface HandlerStrategies { @@ -114,7 +115,7 @@ public interface HandlerStrategies {
* @return this builder
* @see #customCodecs(Consumer)
*/
Builder defaultCodecs(Consumer<ServerCodecConfigurer.ServerDefaultCodecsConfigurer> consumer);
Builder defaultCodecs(Consumer<ServerCodecConfigurer.ServerDefaultCodecs> consumer);
/**
* Customize the list of custom server-side HTTP message readers and writers.
@ -122,7 +123,7 @@ public interface HandlerStrategies { @@ -122,7 +123,7 @@ public interface HandlerStrategies {
* @return this builder
* @see #defaultCodecs(Consumer)
*/
Builder customCodecs(Consumer<ServerCodecConfigurer.CustomCodecsConfigurer> consumer);
Builder customCodecs(Consumer<CodecConfigurer.CustomCodecs> consumer);
/**
* Add the given view resolver to this builder.

Loading…
Cancel
Save