Browse Source

Polishing.

Reformat code, add contract annotation.

See #3452
Original pull request: #3454
pull/3460/head
Mark Paluch 1 month ago
parent
commit
e1fa89093c
No known key found for this signature in database
GPG Key ID: 55BC6374BAA9D973
  1. 18
      src/main/java/org/springframework/data/web/SlicedResourcesAssembler.java
  2. 4
      src/test/java/org/springframework/data/web/SlicedResourcesAssemblerUnitTest.java

18
src/main/java/org/springframework/data/web/SlicedResourcesAssembler.java

@ -39,6 +39,7 @@ import org.springframework.hateoas.UriTemplate; @@ -39,6 +39,7 @@ import org.springframework.hateoas.UriTemplate;
import org.springframework.hateoas.server.RepresentationModelAssembler;
import org.springframework.hateoas.server.core.EmbeddedWrapper;
import org.springframework.hateoas.server.core.EmbeddedWrappers;
import org.springframework.lang.CheckReturnValue;
import org.springframework.util.Assert;
import org.springframework.web.servlet.support.ServletUriComponentsBuilder;
import org.springframework.web.util.UriComponents;
@ -100,6 +101,7 @@ public class SlicedResourcesAssembler<T> @@ -100,6 +101,7 @@ public class SlicedResourcesAssembler<T>
* @return will never be {@literal null}.
* @since 3.1
*/
@CheckReturnValue
public SlicedResourcesAssembler<T> withParameter(@Nullable MethodParameter parameter) {
return new SlicedResourcesAssembler<>(pageableResolver, baseUri, parameter);
}
@ -116,7 +118,7 @@ public class SlicedResourcesAssembler<T> @@ -116,7 +118,7 @@ public class SlicedResourcesAssembler<T>
*
* @param slice must not be {@literal null}.
* @param selfLink must not be {@literal null}.
* @return
* @return a {@link SlicedModel}.
*/
public SlicedModel<EntityModel<T>> toModel(Slice<T> slice, Link selfLink) {
return toModel(slice, EntityModel::of, selfLink);
@ -128,7 +130,7 @@ public class SlicedResourcesAssembler<T> @@ -128,7 +130,7 @@ public class SlicedResourcesAssembler<T>
*
* @param slice must not be {@literal null}.
* @param assembler must not be {@literal null}.
* @return
* @return a {@link SlicedModel}.
*/
public <R extends RepresentationModel<?>> SlicedModel<R> toModel(Slice<T> slice,
RepresentationModelAssembler<T, R> assembler) {
@ -143,11 +145,13 @@ public class SlicedResourcesAssembler<T> @@ -143,11 +145,13 @@ public class SlicedResourcesAssembler<T>
* @param slice must not be {@literal null}.
* @param assembler must not be {@literal null}.
* @param link must not be {@literal null}.
* @return a {@link SlicedModel} must not be {@literal null}.
* @return a {@link SlicedModel}.
*/
public <R extends RepresentationModel<?>> SlicedModel<R> toModel(Slice<T> slice,
RepresentationModelAssembler<T, R> assembler, Link link) {
Assert.notNull(link, "Link must not be null");
return createModel(slice, assembler, link);
}
@ -156,7 +160,7 @@ public class SlicedResourcesAssembler<T> @@ -156,7 +160,7 @@ public class SlicedResourcesAssembler<T>
*
* @param slice must not be {@literal null}, content must be empty.
* @param type must not be {@literal null}.
* @return
* @return an empty {@link SlicedModel}.
*/
public SlicedModel<?> toEmptyModel(Slice<?> slice, Class<?> type) {
return toEmptyModel(slice, type, (Link) null);
@ -168,7 +172,7 @@ public class SlicedResourcesAssembler<T> @@ -168,7 +172,7 @@ public class SlicedResourcesAssembler<T>
* @param slice must not be {@literal null}, content must be empty.
* @param type must not be {@literal null}.
* @param link can be {@literal null}.
* @return a {@link SlicedModel} must not be {@literal null}.
* @return an empty {@link SlicedModel}.
*/
public SlicedModel<?> toEmptyModel(Slice<?> slice, Class<?> type, @Nullable Link link) {
@ -187,7 +191,6 @@ public class SlicedResourcesAssembler<T> @@ -187,7 +191,6 @@ public class SlicedResourcesAssembler<T>
@Deprecated
public SlicedModel<?> toEmptyModel(Slice<?> slice, Class<?> type, Optional<Link> link) {
Assert.notNull(link, "Link must not be null");
return toEmptyModel(slice, type, link.orElse(null));
}
@ -201,6 +204,7 @@ public class SlicedResourcesAssembler<T> @@ -201,6 +204,7 @@ public class SlicedResourcesAssembler<T>
*/
protected <R extends RepresentationModel<?>, S> SlicedModel<R> createSlicedModel(List<R> resources,
SliceMetadata metadata, Slice<S> slice) {
Assert.notNull(resources, "Content resources must not be null");
Assert.notNull(metadata, "SliceMetadata must not be null");
Assert.notNull(slice, "Slice must not be null");
@ -210,6 +214,7 @@ public class SlicedResourcesAssembler<T> @@ -210,6 +214,7 @@ public class SlicedResourcesAssembler<T>
private <S, R extends RepresentationModel<?>> SlicedModel<R> createModel(Slice<S> slice,
RepresentationModelAssembler<S, R> assembler, @Nullable Link link) {
Assert.notNull(slice, "Slice must not be null");
Assert.notNull(assembler, "ResourceAssembler must not be null");
@ -227,7 +232,6 @@ public class SlicedResourcesAssembler<T> @@ -227,7 +232,6 @@ public class SlicedResourcesAssembler<T>
private <R> SlicedModel<R> addPaginationLinks(SlicedModel<R> resources, Slice<?> slice, @Nullable Link link) {
UriTemplate base = getUriTemplate(link);
boolean isNavigable = slice.hasPrevious() || slice.hasNext();
if (isNavigable || forceFirstRel) {

4
src/test/java/org/springframework/data/web/SlicedResourcesAssemblerUnitTest.java

@ -22,10 +22,11 @@ import java.util.Collection; @@ -22,10 +22,11 @@ import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.data.domain.AbstractPageRequest;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
@ -46,7 +47,6 @@ import org.springframework.web.util.UriComponentsBuilder; @@ -46,7 +47,6 @@ import org.springframework.web.util.UriComponentsBuilder;
*
* @author Michael Schout
* @author Oliver Drotbohm
* @since 3.1
*/
class SlicedResourcesAssemblerUnitTest {

Loading…
Cancel
Save