Add missing @Nullable annotations on parameters

Issue: SPR-15540
This commit is contained in:
Sebastien Deleuze
2017-05-31 12:37:54 +02:00
parent ad2c0f8410
commit b47d713e14
380 changed files with 1085 additions and 732 deletions

View File

@@ -170,7 +170,7 @@ public abstract class AbstractMessageConverter implements SmartMessageConverter
}
@Override
public final Object fromMessage(Message<?> message, Class<?> targetClass, Object conversionHint) {
public final Object fromMessage(Message<?> message, Class<?> targetClass, @Nullable Object conversionHint) {
if (!canConvertFrom(message, targetClass)) {
return null;
}
@@ -182,12 +182,12 @@ public abstract class AbstractMessageConverter implements SmartMessageConverter
}
@Override
public final Message<?> toMessage(Object payload, MessageHeaders headers) {
public final Message<?> toMessage(Object payload, @Nullable MessageHeaders headers) {
return toMessage(payload, headers, null);
}
@Override
public final Message<?> toMessage(Object payload, MessageHeaders headers, Object conversionHint) {
public final Message<?> toMessage(Object payload, @Nullable MessageHeaders headers, @Nullable Object conversionHint) {
if (!canConvertTo(payload, headers)) {
return null;
}

View File

@@ -16,6 +16,7 @@
package org.springframework.messaging.converter;
import org.springframework.lang.Nullable;
import org.springframework.messaging.Message;
import org.springframework.messaging.MessageHeaders;
import org.springframework.util.MimeTypeUtils;
@@ -40,12 +41,14 @@ public class ByteArrayMessageConverter extends AbstractMessageConverter {
}
@Override
protected Object convertFromInternal(Message<?> message, Class<?> targetClass, Object conversionHint) {
@Nullable
protected Object convertFromInternal(Message<?> message, Class<?> targetClass, @Nullable Object conversionHint) {
return message.getPayload();
}
@Override
protected Object convertToInternal(Object payload, MessageHeaders headers, Object conversionHint) {
@Nullable
protected Object convertToInternal(Object payload, @Nullable MessageHeaders headers, @Nullable Object conversionHint) {
return payload;
}

View File

@@ -20,6 +20,7 @@ import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import org.springframework.lang.Nullable;
import org.springframework.messaging.Message;
import org.springframework.messaging.MessageHeaders;
import org.springframework.util.Assert;
@@ -61,7 +62,7 @@ public class CompositeMessageConverter implements SmartMessageConverter {
}
@Override
public Object fromMessage(Message<?> message, Class<?> targetClass, Object conversionHint) {
public Object fromMessage(Message<?> message, Class<?> targetClass, @Nullable Object conversionHint) {
for (MessageConverter converter : getConverters()) {
Object result = (converter instanceof SmartMessageConverter ?
((SmartMessageConverter) converter).fromMessage(message, targetClass, conversionHint) :
@@ -74,7 +75,7 @@ public class CompositeMessageConverter implements SmartMessageConverter {
}
@Override
public Message<?> toMessage(Object payload, MessageHeaders headers) {
public Message<?> toMessage(Object payload, @Nullable MessageHeaders headers) {
for (MessageConverter converter : getConverters()) {
Message<?> result = converter.toMessage(payload, headers);
if (result != null) {
@@ -85,7 +86,7 @@ public class CompositeMessageConverter implements SmartMessageConverter {
}
@Override
public Message<?> toMessage(Object payload, MessageHeaders headers, Object conversionHint) {
public Message<?> toMessage(Object payload, @Nullable MessageHeaders headers, @Nullable Object conversionHint) {
for (MessageConverter converter : getConverters()) {
Message<?> result = (converter instanceof SmartMessageConverter ?
((SmartMessageConverter) converter).toMessage(payload, headers, conversionHint) :

View File

@@ -199,7 +199,7 @@ public class MappingJackson2MessageConverter extends AbstractMessageConverter {
}
@Override
protected Object convertFromInternal(Message<?> message, Class<?> targetClass, Object conversionHint) {
protected Object convertFromInternal(Message<?> message, Class<?> targetClass, @Nullable Object conversionHint) {
JavaType javaType = this.objectMapper.constructType(targetClass);
Object payload = message.getPayload();
Class<?> view = getSerializationView(conversionHint);
@@ -228,7 +228,8 @@ public class MappingJackson2MessageConverter extends AbstractMessageConverter {
}
@Override
protected Object convertToInternal(Object payload, MessageHeaders headers, Object conversionHint) {
@Nullable
protected Object convertToInternal(Object payload, @Nullable MessageHeaders headers, @Nullable Object conversionHint) {
try {
Class<?> view = getSerializationView(conversionHint);
if (byte[].class == getSerializedPayloadClass()) {

View File

@@ -28,6 +28,7 @@ import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import org.springframework.beans.TypeMismatchException;
import org.springframework.lang.Nullable;
import org.springframework.messaging.Message;
import org.springframework.messaging.MessageHeaders;
import org.springframework.oxm.Marshaller;
@@ -134,7 +135,8 @@ public class MarshallingMessageConverter extends AbstractMessageConverter {
}
@Override
protected Object convertFromInternal(Message<?> message, Class<?> targetClass, Object conversionHint) {
@Nullable
protected Object convertFromInternal(Message<?> message, Class<?> targetClass, @Nullable Object conversionHint) {
Assert.notNull(this.unmarshaller, "Property 'unmarshaller' is required");
try {
Source source = getSource(message.getPayload());
@@ -159,7 +161,8 @@ public class MarshallingMessageConverter extends AbstractMessageConverter {
}
@Override
protected Object convertToInternal(Object payload, MessageHeaders headers, Object conversionHint) {
@Nullable
protected Object convertToInternal(Object payload, @Nullable MessageHeaders headers, @Nullable Object conversionHint) {
Assert.notNull(this.marshaller, "Property 'marshaller' is required");
try {
if (byte[].class == getSerializedPayloadClass()) {

View File

@@ -16,6 +16,7 @@
package org.springframework.messaging.converter;
import org.springframework.lang.Nullable;
import org.springframework.messaging.Message;
import org.springframework.messaging.MessageHeaders;
import org.springframework.messaging.support.MessageBuilder;
@@ -44,7 +45,7 @@ public class SimpleMessageConverter implements MessageConverter {
}
@Override
public Message<?> toMessage(Object payload, MessageHeaders headers) {
public Message<?> toMessage(Object payload, @Nullable MessageHeaders headers) {
if (payload == null) {
return null;
}

View File

@@ -19,6 +19,7 @@ package org.springframework.messaging.converter;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
import org.springframework.lang.Nullable;
import org.springframework.messaging.Message;
import org.springframework.messaging.MessageHeaders;
import org.springframework.util.MimeType;
@@ -51,14 +52,14 @@ public class StringMessageConverter extends AbstractMessageConverter {
}
@Override
protected Object convertFromInternal(Message<?> message, Class<?> targetClass, Object conversionHint) {
protected Object convertFromInternal(Message<?> message, Class<?> targetClass, @Nullable Object conversionHint) {
Charset charset = getContentTypeCharset(getMimeType(message.getHeaders()));
Object payload = message.getPayload();
return (payload instanceof String ? payload : new String((byte[]) payload, charset));
}
@Override
protected Object convertToInternal(Object payload, MessageHeaders headers, Object conversionHint) {
protected Object convertToInternal(Object payload, @Nullable MessageHeaders headers, @Nullable Object conversionHint) {
if (byte[].class == getSerializedPayloadClass()) {
Charset charset = getContentTypeCharset(getMimeType(headers));
payload = ((String) payload).getBytes(charset);

View File

@@ -18,6 +18,7 @@ package org.springframework.messaging.simp;
import java.util.Map;
import org.springframework.lang.Nullable;
import org.springframework.messaging.Message;
import org.springframework.messaging.MessageChannel;
import org.springframework.messaging.MessageDeliveryException;
@@ -202,22 +203,22 @@ public class SimpMessagingTemplate extends AbstractMessageSendingTemplate<String
}
@Override
public void convertAndSendToUser(String user, String destination, Object payload,
Map<String, Object> headers) throws MessagingException {
public void convertAndSendToUser(String user, String destination, @Nullable Object payload,
@Nullable Map<String, Object> headers) throws MessagingException {
convertAndSendToUser(user, destination, payload, headers, null);
}
@Override
public void convertAndSendToUser(String user, String destination, Object payload,
public void convertAndSendToUser(String user, String destination, @Nullable Object payload,
MessagePostProcessor postProcessor) throws MessagingException {
convertAndSendToUser(user, destination, payload, null, postProcessor);
}
@Override
public void convertAndSendToUser(String user, String destination, Object payload, Map<String, Object> headers,
MessagePostProcessor postProcessor) throws MessagingException {
public void convertAndSendToUser(String user, String destination, Object payload, @Nullable Map<String, Object> headers,
@Nullable MessagePostProcessor postProcessor) throws MessagingException {
Assert.notNull(user, "User must not be null");
user = StringUtils.replace(user, "/", "%2F");
@@ -238,7 +239,7 @@ public class SimpMessagingTemplate extends AbstractMessageSendingTemplate<String
* instance is also returned without changes.
*/
@Override
protected Map<String, Object> processHeadersToSend(Map<String, Object> headers) {
protected Map<String, Object> processHeadersToSend(@Nullable Map<String, Object> headers) {
if (headers == null) {
SimpMessageHeaderAccessor headerAccessor = SimpMessageHeaderAccessor.create(SimpMessageType.MESSAGE);
initHeaders(headerAccessor);

View File

@@ -436,7 +436,7 @@ public abstract class AbstractMessageBrokerConfiguration implements ApplicationC
return false;
}
@Override
public void validate(Object target, Errors errors) {
public void validate(@Nullable Object target, Errors errors) {
}
};
}

View File

@@ -18,6 +18,8 @@ package org.springframework.messaging.simp.stomp;
import java.lang.reflect.Type;
import org.springframework.lang.Nullable;
/**
* Abstract adapter class for {@link StompSessionHandler} with mostly empty
* implementation methods except for {@link #getPayloadType} which returns String
@@ -48,7 +50,7 @@ public abstract class StompSessionHandlerAdapter implements StompSessionHandler
* This implementation is empty.
*/
@Override
public void handleFrame(StompHeaders headers, Object payload) {
public void handleFrame(StompHeaders headers, @Nullable Object payload) {
}
/**