From 1022683d1c122de07816346c980b25e174564c5a Mon Sep 17 00:00:00 2001 From: Rossen Stoyanchev Date: Wed, 13 Jul 2016 17:39:11 -0400 Subject: [PATCH] Fix compiler warnings --- .../core/codec/CodecException.java | 1 + .../MonoToCompletableFutureConverter.java | 8 ++--- .../support/ReactorToRxJava1Converter.java | 12 +++---- .../http/codec/SseEventEncoder.java | 32 ++++++++++--------- .../http/codec/xml/XmlEventDecoder.java | 7 ++-- .../reactive/ServletHttpHandlerAdapter.java | 1 + .../web/client/reactive/ClientWebRequest.java | 8 ++--- .../DefaultClientWebRequestBuilder.java | 2 +- .../client/reactive/ResponseExtractors.java | 6 ++-- .../web/client/reactive/WebClient.java | 2 +- .../client/reactive/WebClientException.java | 1 + .../support/RxJava1ResponseExtractors.java | 15 ++++----- ...ontentNegotiatingResultHandlerSupport.java | 3 +- .../RequestMappingInfoHandlerMapping.java | 2 +- .../view/ViewResolutionResultHandler.java | 2 +- .../MediaTypeNotSupportedStatusException.java | 1 + .../web/server/MethodNotAllowedException.java | 1 + .../server/NotAcceptableStatusException.java | 1 + .../web/server/ResponseStatusException.java | 1 + .../web/server/ServerErrorException.java | 1 + .../web/server/ServerWebInputException.java | 1 + .../UnsupportedMediaTypeStatusException.java | 1 + .../web/server/session/DefaultWebSession.java | 3 ++ .../http/codec/xml/Jaxb2DecoderTests.java | 6 ++++ .../reactive/ServerHttpRequestTests.java | 2 +- 25 files changed, 70 insertions(+), 50 deletions(-) diff --git a/spring-web-reactive/src/main/java/org/springframework/core/codec/CodecException.java b/spring-web-reactive/src/main/java/org/springframework/core/codec/CodecException.java index 51718cddd0..059da2fc05 100644 --- a/spring-web-reactive/src/main/java/org/springframework/core/codec/CodecException.java +++ b/spring-web-reactive/src/main/java/org/springframework/core/codec/CodecException.java @@ -23,6 +23,7 @@ import org.springframework.core.NestedRuntimeException; * * @author Sebastien Deleuze */ +@SuppressWarnings("serial") public class CodecException extends NestedRuntimeException { public CodecException(String msg, Throwable cause) { diff --git a/spring-web-reactive/src/main/java/org/springframework/core/convert/support/MonoToCompletableFutureConverter.java b/spring-web-reactive/src/main/java/org/springframework/core/convert/support/MonoToCompletableFutureConverter.java index 5e4e4453f4..bee310548f 100644 --- a/spring-web-reactive/src/main/java/org/springframework/core/convert/support/MonoToCompletableFutureConverter.java +++ b/spring-web-reactive/src/main/java/org/springframework/core/convert/support/MonoToCompletableFutureConverter.java @@ -32,8 +32,8 @@ import org.springframework.core.convert.converter.GenericConverter; public class MonoToCompletableFutureConverter implements GenericConverter { @Override - public Set getConvertibleTypes() { - Set pairs = new LinkedHashSet<>(); + public Set getConvertibleTypes() { + Set pairs = new LinkedHashSet<>(2); pairs.add(new GenericConverter.ConvertiblePair(Mono.class, CompletableFuture.class)); pairs.add(new GenericConverter.ConvertiblePair(CompletableFuture.class, Mono.class)); return pairs; @@ -45,10 +45,10 @@ public class MonoToCompletableFutureConverter implements GenericConverter { return null; } else if (CompletableFuture.class.isAssignableFrom(sourceType.getType())) { - return Mono.fromFuture((CompletableFuture) source); + return Mono.fromFuture((CompletableFuture) source); } else if (CompletableFuture.class.isAssignableFrom(targetType.getType())) { - return Mono.from((Publisher) source).toFuture(); + return Mono.from((Publisher) source).toFuture(); } return null; } diff --git a/spring-web-reactive/src/main/java/org/springframework/core/convert/support/ReactorToRxJava1Converter.java b/spring-web-reactive/src/main/java/org/springframework/core/convert/support/ReactorToRxJava1Converter.java index 42b9d9d809..8dbf966799 100644 --- a/spring-web-reactive/src/main/java/org/springframework/core/convert/support/ReactorToRxJava1Converter.java +++ b/spring-web-reactive/src/main/java/org/springframework/core/convert/support/ReactorToRxJava1Converter.java @@ -40,7 +40,7 @@ public final class ReactorToRxJava1Converter implements GenericConverter { @Override public Set getConvertibleTypes() { - Set pairs = new LinkedHashSet<>(); + Set pairs = new LinkedHashSet<>(6); pairs.add(new GenericConverter.ConvertiblePair(Flux.class, Observable.class)); pairs.add(new GenericConverter.ConvertiblePair(Observable.class, Flux.class)); pairs.add(new GenericConverter.ConvertiblePair(Mono.class, Single.class)); @@ -56,22 +56,22 @@ public final class ReactorToRxJava1Converter implements GenericConverter { return null; } if (Observable.class.isAssignableFrom(sourceType.getType())) { - return RxJava1ObservableConverter.toPublisher((Observable) source); + return RxJava1ObservableConverter.toPublisher((Observable) source); } else if (Observable.class.isAssignableFrom(targetType.getType())) { - return RxJava1ObservableConverter.fromPublisher((Publisher) source); + return RxJava1ObservableConverter.fromPublisher((Publisher) source); } else if (Single.class.isAssignableFrom(sourceType.getType())) { - return RxJava1SingleConverter.toPublisher((Single) source); + return RxJava1SingleConverter.toPublisher((Single) source); } else if (Single.class.isAssignableFrom(targetType.getType())) { - return RxJava1SingleConverter.fromPublisher((Publisher) source); + return RxJava1SingleConverter.fromPublisher((Publisher) source); } else if (Completable.class.isAssignableFrom(sourceType.getType())) { return RxJava1CompletableConverter.toPublisher((Completable) source); } else if (Completable.class.isAssignableFrom(targetType.getType())) { - return RxJava1CompletableConverter.fromPublisher((Publisher) source); + return RxJava1CompletableConverter.fromPublisher((Publisher) source); } return null; } diff --git a/spring-web-reactive/src/main/java/org/springframework/http/codec/SseEventEncoder.java b/spring-web-reactive/src/main/java/org/springframework/http/codec/SseEventEncoder.java index f5dfa2f9b1..5384b6f861 100644 --- a/spring-web-reactive/src/main/java/org/springframework/http/codec/SseEventEncoder.java +++ b/spring-web-reactive/src/main/java/org/springframework/http/codec/SseEventEncoder.java @@ -25,9 +25,9 @@ import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; import org.springframework.core.ResolvableType; +import org.springframework.core.codec.AbstractEncoder; import org.springframework.core.codec.CodecException; import org.springframework.core.codec.Encoder; -import org.springframework.core.codec.AbstractEncoder; import org.springframework.core.io.buffer.DataBuffer; import org.springframework.core.io.buffer.DataBufferFactory; import org.springframework.core.io.buffer.FlushingDataBuffer; @@ -96,20 +96,7 @@ public class SseEventEncoder extends AbstractEncoder { sb.append(((String)data).replaceAll("\\n", "\ndata:")).append("\n"); } else { - Optional> encoder = dataEncoders - .stream() - .filter(e -> e.canEncode(ResolvableType.forClass(data.getClass()), mediaType)) - .findFirst(); - - if (encoder.isPresent()) { - dataBuffer = ((Encoder)encoder.get()) - .encode(Mono.just(data), bufferFactory, - ResolvableType.forClass(data.getClass()), mediaType) - .concatWith(encodeString("\n", bufferFactory)); - } - else { - throw new CodecException("No suitable encoder found!"); - } + dataBuffer = applyEncoder(data, mediaType, bufferFactory); } } @@ -126,6 +113,21 @@ public class SseEventEncoder extends AbstractEncoder { } + @SuppressWarnings("unchecked") + private Flux applyEncoder(Object data, MediaType mediaType, DataBufferFactory bufferFactory) { + ResolvableType elementType = ResolvableType.forClass(data.getClass()); + Optional> encoder = dataEncoders + .stream() + .filter(e -> e.canEncode(elementType, mediaType)) + .findFirst(); + if (!encoder.isPresent()) { + return Flux.error(new CodecException("No suitable encoder found!")); + } + return ((Encoder) encoder.get()) + .encode(Mono.just((T) data), bufferFactory, elementType, mediaType) + .concatWith(encodeString("\n", bufferFactory)); + } + private Mono encodeString(String str, DataBufferFactory bufferFactory) { byte[] bytes = str.getBytes(StandardCharsets.UTF_8); DataBuffer buffer = bufferFactory.allocateBuffer(bytes.length).write(bytes); diff --git a/spring-web-reactive/src/main/java/org/springframework/http/codec/xml/XmlEventDecoder.java b/spring-web-reactive/src/main/java/org/springframework/http/codec/xml/XmlEventDecoder.java index 7009a00b12..a468549246 100644 --- a/spring-web-reactive/src/main/java/org/springframework/http/codec/xml/XmlEventDecoder.java +++ b/spring-web-reactive/src/main/java/org/springframework/http/codec/xml/XmlEventDecoder.java @@ -84,6 +84,7 @@ public class XmlEventDecoder extends AbstractDecoder { } @Override + @SuppressWarnings("unchecked") public Flux decode(Publisher inputStream, ResolvableType elementType, MimeType mimeType, Object... hints) { Flux flux = Flux.from(inputStream); @@ -96,10 +97,8 @@ public class XmlEventDecoder extends AbstractDecoder { flatMap(dataBuffer -> { try { InputStream is = dataBuffer.asInputStream(); - XMLEventReader eventReader = - inputFactory.createXMLEventReader(is); - return Flux - .fromIterable((Iterable) () -> eventReader); + XMLEventReader eventReader = inputFactory.createXMLEventReader(is); + return Flux.fromIterable((Iterable) () -> eventReader); } catch (XMLStreamException ex) { return Mono.error(ex); diff --git a/spring-web-reactive/src/main/java/org/springframework/http/server/reactive/ServletHttpHandlerAdapter.java b/spring-web-reactive/src/main/java/org/springframework/http/server/reactive/ServletHttpHandlerAdapter.java index e25a03cc5e..dada37607f 100644 --- a/spring-web-reactive/src/main/java/org/springframework/http/server/reactive/ServletHttpHandlerAdapter.java +++ b/spring-web-reactive/src/main/java/org/springframework/http/server/reactive/ServletHttpHandlerAdapter.java @@ -38,6 +38,7 @@ import org.springframework.util.Assert; * @author Rossen Stoyanchev */ @WebServlet(asyncSupported = true) +@SuppressWarnings("serial") public class ServletHttpHandlerAdapter extends HttpServlet { private static final int DEFAULT_BUFFER_SIZE = 8192; diff --git a/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/ClientWebRequest.java b/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/ClientWebRequest.java index c16950f87c..02c5ba6576 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/ClientWebRequest.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/ClientWebRequest.java @@ -34,7 +34,7 @@ import org.springframework.util.MultiValueMap; * * @author Brian Clozel */ -public class ClientWebRequest { +public class ClientWebRequest { protected final HttpMethod httpMethod; @@ -44,7 +44,7 @@ public class ClientWebRequest { private MultiValueMap cookies; - protected Publisher body; + protected Publisher body; protected ResolvableType elementType; @@ -78,11 +78,11 @@ public class ClientWebRequest { this.cookies = cookies; } - public Publisher getBody() { + public Publisher getBody() { return body; } - public void setBody(Publisher body) { + public void setBody(Publisher body) { this.body = body; } diff --git a/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/DefaultClientWebRequestBuilder.java b/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/DefaultClientWebRequestBuilder.java index 4e399f65f1..f5b0cb49b4 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/DefaultClientWebRequestBuilder.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/DefaultClientWebRequestBuilder.java @@ -59,7 +59,7 @@ public class DefaultClientWebRequestBuilder implements ClientWebRequestBuilder { private final MultiValueMap cookies = new LinkedMultiValueMap<>(); - private Publisher body; + private Publisher body; private ResolvableType elementType; diff --git a/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/ResponseExtractors.java b/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/ResponseExtractors.java index 1e650ec91a..29c27c61fc 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/ResponseExtractors.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/ResponseExtractors.java @@ -43,8 +43,8 @@ public class ResponseExtractors { * Extract the response body and decode it, returning it as a {@code Mono} * @see ResolvableType#forClassWithGenerics(Class, Class[]) */ + @SuppressWarnings("unchecked") public static ResponseExtractor> body(ResolvableType bodyType) { - // noinspection unchecked return (clientResponse, messageConverters) -> (Mono) clientResponse .flatMap(resp -> decodeResponseBody(resp, bodyType, messageConverters)) @@ -81,6 +81,7 @@ public class ResponseExtractors { * a single type {@code T} * @see ResolvableType#forClassWithGenerics(Class, Class[]) */ + @SuppressWarnings("unchecked") public static ResponseExtractor>> response( ResolvableType bodyType) { return (clientResponse, messageConverters) -> clientResponse.then(response -> { @@ -92,7 +93,6 @@ public class ResponseExtractors { Mono.just(response.getStatusCode())); }).map(tuple -> { Object body = (tuple.getT1() != EMPTY_BODY ? tuple.getT1() : null); - // noinspection unchecked return new ResponseEntity<>((T) body, tuple.getT2(), tuple.getT3()); }); } @@ -138,6 +138,7 @@ public class ResponseExtractors { return (clientResponse, messageConverters) -> clientResponse.map(resp -> resp.getHeaders()); } + @SuppressWarnings("unchecked") protected static Flux decodeResponseBody(ClientHttpResponse response, ResolvableType responseType, List> messageConverters) { @@ -150,7 +151,6 @@ public class ResponseExtractors { "Could not decode response body of type '" + contentType + "' with target type '" + responseType.toString() + "'")); } - // noinspection unchecked return (Flux) converter.get().read(responseType, response); } diff --git a/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/WebClient.java b/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/WebClient.java index 94f4840c54..afb6f3ec95 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/WebClient.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/WebClient.java @@ -204,6 +204,7 @@ public final class WebClient { } } + @SuppressWarnings("unchecked") protected Mono writeRequestBody(Publisher content, ResolvableType requestType, ClientHttpRequest request, List> messageConverters) { @@ -215,7 +216,6 @@ public final class WebClient { "Could not encode request body of type '" + contentType + "' with target type '" + requestType.toString() + "'")); } - // noinspection unchecked return converter.get().write((Publisher) content, requestType, contentType, request); } diff --git a/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/WebClientException.java b/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/WebClientException.java index 4c4ce11fcb..094ea33599 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/WebClientException.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/WebClientException.java @@ -24,6 +24,7 @@ import org.springframework.core.NestedRuntimeException; * * @author Brian Clozel */ +@SuppressWarnings("serial") public class WebClientException extends NestedRuntimeException { public WebClientException(String msg) { diff --git a/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/support/RxJava1ResponseExtractors.java b/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/support/RxJava1ResponseExtractors.java index 96de49f9a0..4a6a4935ef 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/support/RxJava1ResponseExtractors.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/client/reactive/support/RxJava1ResponseExtractors.java @@ -40,15 +40,15 @@ import rx.Single; * * @author Brian Clozel */ -public class RxJava1ResponseExtractors { +public class RxJava1ResponseExtractors { /** * Extract the response body and decode it, returning it as a {@code Single} */ + @SuppressWarnings("unchecked") public static ResponseExtractor> body(Class sourceClass) { ResolvableType resolvableType = ResolvableType.forClass(sourceClass); - //noinspection unchecked return (clientResponse, messageConverters) -> (Single) RxJava1SingleConverter .fromPublisher(clientResponse .flatMap(resp -> decodeResponseBody(resp, resolvableType, messageConverters)).next()); @@ -69,20 +69,19 @@ public class RxJava1ResponseExtractors { * Extract the full response body as a {@code ResponseEntity} * with its body decoded as a single type {@code T} */ + @SuppressWarnings("unchecked") public static ResponseExtractor>> response(Class sourceClass) { ResolvableType resolvableType = ResolvableType.forClass(sourceClass); - return (clientResponse, messageConverters) -> (Single>) + return (clientResponse, messageConverters) -> RxJava1SingleConverter.fromPublisher(clientResponse .then(response -> Mono.when( decodeResponseBody(response, resolvableType, messageConverters).next(), Mono.just(response.getHeaders()), Mono.just(response.getStatusCode()))) - .map(tuple -> { - //noinspection unchecked - return new ResponseEntity<>((T) tuple.getT1(), tuple.getT2(), tuple.getT3()); - })); + .map(tuple -> + new ResponseEntity<>((T) tuple.getT1(), tuple.getT2(), tuple.getT3()))); } /** @@ -107,6 +106,7 @@ public class RxJava1ResponseExtractors { .fromPublisher(clientResponse.map(resp -> resp.getHeaders())); } + @SuppressWarnings("unchecked") protected static Flux decodeResponseBody(ClientHttpResponse response, ResolvableType responseType, List> messageConverters) { @@ -116,7 +116,6 @@ public class RxJava1ResponseExtractors { return Flux.error(new IllegalStateException("Could not decode response body of type '" + contentType + "' with target type '" + responseType.toString() + "'")); } - //noinspection unchecked return (Flux) converter.get().read(responseType, response); } diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/ContentNegotiatingResultHandlerSupport.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/ContentNegotiatingResultHandlerSupport.java index ecf9866a26..628be3720a 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/ContentNegotiatingResultHandlerSupport.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/ContentNegotiatingResultHandlerSupport.java @@ -130,8 +130,9 @@ public abstract class ContentNegotiatingResultHandlerSupport implements Ordered return (mediaTypes.isEmpty() ? Collections.singletonList(MediaType.ALL) : mediaTypes); } + @SuppressWarnings("unchecked") private List getProducibleTypes(ServerWebExchange exchange, List mediaTypes) { - Optional optional = exchange.getAttribute(HandlerMapping.PRODUCIBLE_MEDIA_TYPES_ATTRIBUTE); + Optional optional = exchange.getAttribute(HandlerMapping.PRODUCIBLE_MEDIA_TYPES_ATTRIBUTE); if (optional.isPresent()) { Set set = (Set) optional.get(); return new ArrayList<>(set); diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/method/RequestMappingInfoHandlerMapping.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/method/RequestMappingInfoHandlerMapping.java index 3a9dbd36d8..99bb119660 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/method/RequestMappingInfoHandlerMapping.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/method/RequestMappingInfoHandlerMapping.java @@ -313,7 +313,7 @@ public abstract class RequestMappingInfoHandlerMapping extends AbstractHandlerMe public Set getAllowedMethods() { return this.partialMatches.stream(). flatMap(m -> m.getInfo().getMethodsCondition().getMethods().stream()). - map(Enum::name). + map(requestMethod -> requestMethod.name()). collect(Collectors.toCollection(LinkedHashSet::new)); } diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/ViewResolutionResultHandler.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/ViewResolutionResultHandler.java index f46c142128..87be053915 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/ViewResolutionResultHandler.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/ViewResolutionResultHandler.java @@ -249,12 +249,12 @@ public class ViewResolutionResultHandler extends ContentNegotiatingResultHandler return StringUtils.stripFilenameExtension(path); } + @SuppressWarnings("unchecked") private Object updateModel(Object value, HandlerResult result) { if (value instanceof Model) { result.getModel().addAllAttributes(((Model) value).asMap()); } else if (value instanceof Map) { - //noinspection unchecked result.getModel().addAllAttributes((Map) value); } else { diff --git a/spring-web-reactive/src/main/java/org/springframework/web/server/MediaTypeNotSupportedStatusException.java b/spring-web-reactive/src/main/java/org/springframework/web/server/MediaTypeNotSupportedStatusException.java index 326fbb4395..2fd16c18f4 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/server/MediaTypeNotSupportedStatusException.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/server/MediaTypeNotSupportedStatusException.java @@ -26,6 +26,7 @@ import org.springframework.http.MediaType; * * @author Rossen Stoyanchev */ +@SuppressWarnings("serial") public class MediaTypeNotSupportedStatusException extends ResponseStatusException { private final List supportedMediaTypes; diff --git a/spring-web-reactive/src/main/java/org/springframework/web/server/MethodNotAllowedException.java b/spring-web-reactive/src/main/java/org/springframework/web/server/MethodNotAllowedException.java index 3759483a64..b4a5354a80 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/server/MethodNotAllowedException.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/server/MethodNotAllowedException.java @@ -28,6 +28,7 @@ import org.springframework.util.Assert; * * @author Rossen Stoyanchev */ +@SuppressWarnings("serial") public class MethodNotAllowedException extends ResponseStatusException { private String method; diff --git a/spring-web-reactive/src/main/java/org/springframework/web/server/NotAcceptableStatusException.java b/spring-web-reactive/src/main/java/org/springframework/web/server/NotAcceptableStatusException.java index fde57105b4..cd86dd6f94 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/server/NotAcceptableStatusException.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/server/NotAcceptableStatusException.java @@ -26,6 +26,7 @@ import org.springframework.http.MediaType; * * @author Rossen Stoyanchev */ +@SuppressWarnings("serial") public class NotAcceptableStatusException extends ResponseStatusException { private final List supportedMediaTypes; diff --git a/spring-web-reactive/src/main/java/org/springframework/web/server/ResponseStatusException.java b/spring-web-reactive/src/main/java/org/springframework/web/server/ResponseStatusException.java index 86cdd15d87..20e4493f4c 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/server/ResponseStatusException.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/server/ResponseStatusException.java @@ -24,6 +24,7 @@ import org.springframework.util.Assert; * * @author Rossen Stoyanchev */ +@SuppressWarnings("serial") public class ResponseStatusException extends NestedRuntimeException { private final HttpStatus status; diff --git a/spring-web-reactive/src/main/java/org/springframework/web/server/ServerErrorException.java b/spring-web-reactive/src/main/java/org/springframework/web/server/ServerErrorException.java index 9289c3c459..c50079813a 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/server/ServerErrorException.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/server/ServerErrorException.java @@ -27,6 +27,7 @@ import org.springframework.http.HttpStatus; * * @author Rossen Stoyanchev */ +@SuppressWarnings("serial") public class ServerErrorException extends ResponseStatusException { private final MethodParameter parameter; diff --git a/spring-web-reactive/src/main/java/org/springframework/web/server/ServerWebInputException.java b/spring-web-reactive/src/main/java/org/springframework/web/server/ServerWebInputException.java index 26af9f6a95..e527281c5a 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/server/ServerWebInputException.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/server/ServerWebInputException.java @@ -27,6 +27,7 @@ import org.springframework.http.HttpStatus; * * @author Rossen Stoyanchev */ +@SuppressWarnings("serial") public class ServerWebInputException extends ResponseStatusException { private final MethodParameter parameter; diff --git a/spring-web-reactive/src/main/java/org/springframework/web/server/UnsupportedMediaTypeStatusException.java b/spring-web-reactive/src/main/java/org/springframework/web/server/UnsupportedMediaTypeStatusException.java index 456913655c..46bf59dad1 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/server/UnsupportedMediaTypeStatusException.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/server/UnsupportedMediaTypeStatusException.java @@ -27,6 +27,7 @@ import org.springframework.http.MediaType; * * @author Rossen Stoyanchev */ +@SuppressWarnings("serial") public class UnsupportedMediaTypeStatusException extends ResponseStatusException { private final MediaType contentType; diff --git a/spring-web-reactive/src/main/java/org/springframework/web/server/session/DefaultWebSession.java b/spring-web-reactive/src/main/java/org/springframework/web/server/session/DefaultWebSession.java index 146c4e0a8e..77059bedba 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/server/session/DefaultWebSession.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/server/session/DefaultWebSession.java @@ -34,6 +34,9 @@ import org.springframework.util.Assert; */ public class DefaultWebSession implements ConfigurableWebSession, Serializable { + private static final long serialVersionUID = -3567697426432961630L; + + private final String id; private final Map attributes; diff --git a/spring-web-reactive/src/test/java/org/springframework/http/codec/xml/Jaxb2DecoderTests.java b/spring-web-reactive/src/test/java/org/springframework/http/codec/xml/Jaxb2DecoderTests.java index 5cfbe1945d..9584a8b87e 100644 --- a/spring-web-reactive/src/test/java/org/springframework/http/codec/xml/Jaxb2DecoderTests.java +++ b/spring-web-reactive/src/test/java/org/springframework/http/codec/xml/Jaxb2DecoderTests.java @@ -274,5 +274,11 @@ public class Jaxb2DecoderTests extends AbstractDataBufferAllocatingTestCase { return false; } + @Override + public int hashCode() { + int result = this.foo.hashCode(); + result = 31 * result + this.bar.hashCode(); + return result; + } } } diff --git a/spring-web-reactive/src/test/java/org/springframework/http/server/reactive/ServerHttpRequestTests.java b/spring-web-reactive/src/test/java/org/springframework/http/server/reactive/ServerHttpRequestTests.java index b6743cd77e..c48115abbc 100644 --- a/spring-web-reactive/src/test/java/org/springframework/http/server/reactive/ServerHttpRequestTests.java +++ b/spring-web-reactive/src/test/java/org/springframework/http/server/reactive/ServerHttpRequestTests.java @@ -23,7 +23,7 @@ import javax.servlet.http.HttpServletRequest; import org.junit.Test; import org.springframework.core.io.buffer.DefaultDataBufferFactory; -import org.springframework.mock.web.MockHttpServletRequest; +import org.springframework.mock.web.test.MockHttpServletRequest; import org.springframework.util.MultiValueMap; import static org.junit.Assert.assertEquals; -- GitLab