Polish GenericHttpMessageConverter

Issue: SPR-13318
master
Sebastien Deleuze 9 years ago
parent 4338719d98
commit d53f0b995a
  1. 4
      spring-web/src/main/java/org/springframework/http/converter/AbstractGenericHttpMessageConverter.java
  2. 31
      spring-web/src/main/java/org/springframework/http/converter/GenericHttpMessageConverter.java
  3. 2
      spring-web/src/main/java/org/springframework/http/converter/xml/Jaxb2CollectionHttpMessageConverter.java

@ -64,8 +64,8 @@ public abstract class AbstractGenericHttpMessageConverter<T> extends AbstractHtt
} }
@Override @Override
public boolean canWrite(Type type, Class<?> contextClass, MediaType mediaType) { public boolean canWrite(Type type, Class<?> clazz, MediaType mediaType) {
return canWrite(contextClass, mediaType); return canWrite(clazz, mediaType);
} }
/** /**

@ -41,7 +41,7 @@ public interface GenericHttpMessageConverter<T> extends HttpMessageConverter<T>
* This method should perform the same checks than * This method should perform the same checks than
* {@link HttpMessageConverter#canRead(Class, MediaType)} with additional ones * {@link HttpMessageConverter#canRead(Class, MediaType)} with additional ones
* related to the generic type. * related to the generic type.
* @param type the type to test for readability * @param type the (potentially generic) type to test for readability
* @param contextClass a context class for the target type, for example a class * @param contextClass a context class for the target type, for example a class
* in which the target type appears in a method signature (can be {@code null}) * in which the target type appears in a method signature (can be {@code null})
* @param mediaType the media type to read, can be {@code null} if not specified. * @param mediaType the media type to read, can be {@code null} if not specified.
@ -52,8 +52,8 @@ public interface GenericHttpMessageConverter<T> extends HttpMessageConverter<T>
/** /**
* Read an object of the given type form the given input message, and returns it. * Read an object of the given type form the given input message, and returns it.
* @param type the type of object to return. This type must have previously * @param type the (potentially generic) type of object to return. This type must have
* been passed to the {@link #canRead canRead} method of this interface, * previously been passed to the {@link #canRead canRead} method of this interface,
* which must have returned {@code true}. * which must have returned {@code true}.
* @param contextClass a context class for the target type, for example a class * @param contextClass a context class for the target type, for example a class
* in which the target type appears in a method signature (can be {@code null}) * in which the target type appears in a method signature (can be {@code null})
@ -70,26 +70,29 @@ public interface GenericHttpMessageConverter<T> extends HttpMessageConverter<T>
* This method should perform the same checks than * This method should perform the same checks than
* {@link HttpMessageConverter#canWrite(Class, MediaType)} with additional ones * {@link HttpMessageConverter#canWrite(Class, MediaType)} with additional ones
* related to the generic type. * related to the generic type.
* @param type the type to test for writability, can be {@code null} if not specified. * @param type the (potentially generic) type to test for writability, can be
* @param contextClass the class to test for writability * {@code null} if not specified.
* @param clazz the source object class to test for writability
* @param mediaType the media type to write, can be {@code null} if not specified. * @param mediaType the media type to write, can be {@code null} if not specified.
* Typically the value of an {@code Accept} header. * Typically the value of an {@code Accept} header.
* @return {@code true} if writable; {@code false} otherwise * @return {@code true} if writable; {@code false} otherwise
* @since 4.2 * @since 4.2
*/ */
boolean canWrite(Type type, Class<?> contextClass, MediaType mediaType); boolean canWrite(Type type, Class<?> clazz, MediaType mediaType);
/** /**
* Write an given object to the given output message. * Write an given object to the given output message.
* @param t the object to write to the output message. The type of this object must have previously been * @param t the object to write to the output message. The type of this object must
* passed to the {@link #canWrite canWrite} method of this interface, which must have returned {@code true}. * have previously been passed to the {@link #canWrite canWrite} method of this
* @param type the type of object to write. This type must have previously * interface, which must have returned {@code true}.
* been passed to the {@link #canWrite canWrite} method of this interface, * @param type the (potentially generic) type of object to write. This type must have
* previously been passed to the {@link #canWrite canWrite} method of this interface,
* which must have returned {@code true}. Can be {@code null} if not specified. * which must have returned {@code true}. Can be {@code null} if not specified.
* @param contentType the content type to use when writing. May be {@code null} to indicate that the * @param contentType the content type to use when writing. May be {@code null} to
* default content type of the converter must be used. If not {@code null}, this media type must have * indicate that the default content type of the converter must be used. If not
* previously been passed to the {@link #canWrite canWrite} method of this interface, which must have * {@code null}, this media type must have previously been passed to the
* returned {@code true}. * {@link #canWrite canWrite} method of this interface, which must have returned
* {@code true}.
* @param outputMessage the message to write to * @param outputMessage the message to write to
* @throws IOException in case of I/O errors * @throws IOException in case of I/O errors
* @throws HttpMessageNotWritableException in case of conversion errors * @throws HttpMessageNotWritableException in case of conversion errors

@ -119,7 +119,7 @@ public class Jaxb2CollectionHttpMessageConverter<T extends Collection>
* does not convert collections to XML. * does not convert collections to XML.
*/ */
@Override @Override
public boolean canWrite(Type type, Class<?> contextClass, MediaType mediaType) { public boolean canWrite(Type type, Class<?> clazz, MediaType mediaType) {
return false; return false;
} }

Loading…
Cancel
Save