diff --git a/src/main/java/org/springframework/hateoas/Link.java b/src/main/java/org/springframework/hateoas/Link.java index fd18bd20..2e198e00 100755 --- a/src/main/java/org/springframework/hateoas/Link.java +++ b/src/main/java/org/springframework/hateoas/Link.java @@ -137,7 +137,7 @@ public class Link implements Serializable { this.template = template; this.href = template.toString(); this.rel = rel; - this.affordances = new ArrayList(); + this.affordances = new ArrayList<>(); } public Link(String href, String rel, List affordances) { @@ -153,7 +153,7 @@ public class Link implements Serializable { * Empty constructor required by the marshalling framework. */ protected Link() { - this.affordances = new ArrayList(); + this.affordances = new ArrayList<>(); } /** @@ -184,7 +184,7 @@ public class Link implements Serializable { Assert.notNull(affordance, "Affordance must not be null!"); - List newAffordances = new ArrayList(); + List newAffordances = new ArrayList<>(); newAffordances.addAll(this.affordances); newAffordances.add(affordance); @@ -241,7 +241,7 @@ public class Link implements Serializable { */ public Link andAffordances(List affordances) { - List newAffordances = new ArrayList(); + List newAffordances = new ArrayList<>(); newAffordances.addAll(this.affordances); newAffordances.addAll(affordances); @@ -437,7 +437,7 @@ public class Link implements Serializable { return Collections.emptyMap(); } - Map attributes = new HashMap(); + Map attributes = new HashMap<>(); Matcher matcher = KEY_AND_VALUE_PATTERN.matcher(source); while (matcher.find()) { diff --git a/src/main/java/org/springframework/hateoas/PagedResources.java b/src/main/java/org/springframework/hateoas/PagedResources.java index f353f9f8..96d7feb6 100644 --- a/src/main/java/org/springframework/hateoas/PagedResources.java +++ b/src/main/java/org/springframework/hateoas/PagedResources.java @@ -41,7 +41,7 @@ public class PagedResources extends Resources { * Default constructor to allow instantiation by reflection. */ protected PagedResources() { - this(new ArrayList(), null); + this(new ArrayList<>(), null); } /** @@ -88,13 +88,13 @@ public class PagedResources extends Resources { public static , S> PagedResources wrap(Iterable content, PageMetadata metadata) { Assert.notNull(content, "Content must not be null!"); - ArrayList resources = new ArrayList(); + ArrayList resources = new ArrayList<>(); for (S element : content) { - resources.add((T) new Resource(element)); + resources.add((T) new Resource<>(element)); } - return new PagedResources(resources, metadata); + return new PagedResources<>(resources, metadata); } /** diff --git a/src/main/java/org/springframework/hateoas/Resources.java b/src/main/java/org/springframework/hateoas/Resources.java index 362b1943..9b9882d6 100644 --- a/src/main/java/org/springframework/hateoas/Resources.java +++ b/src/main/java/org/springframework/hateoas/Resources.java @@ -39,7 +39,7 @@ public class Resources extends ResourceSupport implements Iterable { * Creates an empty {@link Resources} instance. */ protected Resources() { - this(new ArrayList()); + this(new ArrayList<>()); } /** @@ -62,7 +62,7 @@ public class Resources extends ResourceSupport implements Iterable { Assert.notNull(content, "Content must not be null!"); - this.content = new ArrayList(); + this.content = new ArrayList<>(); for (T element : content) { this.content.add(element); @@ -80,13 +80,13 @@ public class Resources extends ResourceSupport implements Iterable { public static , S> Resources wrap(Iterable content) { Assert.notNull(content, "Content must not be null!"); - ArrayList resources = new ArrayList(); + ArrayList resources = new ArrayList<>(); for (S element : content) { - resources.add((T) new Resource(element)); + resources.add((T) new Resource<>(element)); } - return new Resources(resources); + return new Resources<>(resources); } /** diff --git a/src/main/java/org/springframework/hateoas/VndErrors.java b/src/main/java/org/springframework/hateoas/VndErrors.java index c2996e72..d00ab1be 100644 --- a/src/main/java/org/springframework/hateoas/VndErrors.java +++ b/src/main/java/org/springframework/hateoas/VndErrors.java @@ -60,7 +60,7 @@ public class VndErrors implements Iterable { Assert.notNull(error, "Error must not be null"); - this.vndErrors = new ArrayList(errors.length + 1); + this.vndErrors = new ArrayList<>(errors.length + 1); this.vndErrors.add(error); this.vndErrors.addAll(Arrays.asList(errors)); } @@ -82,7 +82,7 @@ public class VndErrors implements Iterable { * Protected default constructor to allow JAXB marshalling. */ protected VndErrors() { - this.vndErrors = new ArrayList(); + this.vndErrors = new ArrayList<>(); } /** diff --git a/src/main/java/org/springframework/hateoas/client/Hop.java b/src/main/java/org/springframework/hateoas/client/Hop.java index 9f60827a..131170c7 100644 --- a/src/main/java/org/springframework/hateoas/client/Hop.java +++ b/src/main/java/org/springframework/hateoas/client/Hop.java @@ -129,7 +129,7 @@ public class Hop { Assert.notNull(globalParameters, "Global parameters must not be null!"); - Map mergedParameters = new HashMap(); + Map mergedParameters = new HashMap<>(); mergedParameters.putAll(globalParameters); mergedParameters.putAll(this.parameters); diff --git a/src/main/java/org/springframework/hateoas/collectionjson/Jackson2CollectionJsonModule.java b/src/main/java/org/springframework/hateoas/collectionjson/Jackson2CollectionJsonModule.java index 7b5ea37b..01ee6837 100644 --- a/src/main/java/org/springframework/hateoas/collectionjson/Jackson2CollectionJsonModule.java +++ b/src/main/java/org/springframework/hateoas/collectionjson/Jackson2CollectionJsonModule.java @@ -40,10 +40,8 @@ import org.springframework.hateoas.support.PropertyUtils; import org.springframework.http.HttpMethod; import org.springframework.util.ClassUtils; -import com.fasterxml.jackson.core.JsonGenerationException; import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.core.JsonParser; -import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.Version; import com.fasterxml.jackson.databind.*; import com.fasterxml.jackson.databind.cfg.HandlerInstantiator; @@ -624,7 +622,7 @@ public class Jackson2CollectionJsonModule extends SimpleModule { CollectionJsonDocument document = jp.getCodec().readValue(jp, wrappedType); - List contentList = new ArrayList(); + List contentList = new ArrayList<>(); if (document.getCollection().getItems() != null) { for (CollectionJsonItem item : document.getCollection().getItems()) { @@ -738,7 +736,7 @@ public class Jackson2CollectionJsonModule extends SimpleModule { public static class CollectionJsonHandlerInstantiator extends HandlerInstantiator { - private final Map, Object> instanceMap = new HashMap, Object>(); + private final Map, Object> instanceMap = new HashMap<>(); public CollectionJsonHandlerInstantiator(MessageSourceAccessor messageSource) { diff --git a/src/main/java/org/springframework/hateoas/core/AnnotationMappingDiscoverer.java b/src/main/java/org/springframework/hateoas/core/AnnotationMappingDiscoverer.java index 5e457b51..3bf77a02 100644 --- a/src/main/java/org/springframework/hateoas/core/AnnotationMappingDiscoverer.java +++ b/src/main/java/org/springframework/hateoas/core/AnnotationMappingDiscoverer.java @@ -131,7 +131,7 @@ public class AnnotationMappingDiscoverer implements MappingDiscoverer { RequestMethod[] requestMethods = (RequestMethod[]) value; - List requestMethodNames = new ArrayList(); + List requestMethodNames = new ArrayList<>(); for (RequestMethod requestMethod : requestMethods) { requestMethodNames.add(HttpMethod.valueOf(requestMethod.toString())); diff --git a/src/main/java/org/springframework/hateoas/core/ControllerEntityLinksFactoryBean.java b/src/main/java/org/springframework/hateoas/core/ControllerEntityLinksFactoryBean.java index 8311e130..f4305446 100644 --- a/src/main/java/org/springframework/hateoas/core/ControllerEntityLinksFactoryBean.java +++ b/src/main/java/org/springframework/hateoas/core/ControllerEntityLinksFactoryBean.java @@ -87,7 +87,7 @@ public class ControllerEntityLinksFactoryBean extends AbstractFactoryBean> controllerTypes = new HashSet>(); + Collection> controllerTypes = new HashSet<>(); for (Class controllerType : getBeanTypesWithAnnotation(annotation)) { if (AnnotationUtils.findAnnotation(controllerType, ExposesResourceFor.class) != null) { @@ -112,7 +112,7 @@ public class ControllerEntityLinksFactoryBean extends AbstractFactoryBean> getBeanTypesWithAnnotation(Class type) { - Set> annotatedTypes = new HashSet>(); + Set> annotatedTypes = new HashSet<>(); for (String beanName : context.getBeanDefinitionNames()) { diff --git a/src/main/java/org/springframework/hateoas/core/LinkBuilderSupport.java b/src/main/java/org/springframework/hateoas/core/LinkBuilderSupport.java index d68edaa8..fe4e7d40 100644 --- a/src/main/java/org/springframework/hateoas/core/LinkBuilderSupport.java +++ b/src/main/java/org/springframework/hateoas/core/LinkBuilderSupport.java @@ -59,7 +59,7 @@ public abstract class LinkBuilderSupport implements LinkB Assert.notNull(builder, "UriComponentsBuilder must not be null!"); this.uriComponents = builder.build(); - this.affordances = new ArrayList(); + this.affordances = new ArrayList<>(); } /** @@ -71,7 +71,7 @@ public abstract class LinkBuilderSupport implements LinkB Assert.notNull(uriComponents, "UriComponents must not be null!"); this.uriComponents = uriComponents; - this.affordances = new ArrayList(); + this.affordances = new ArrayList<>(); } /* diff --git a/src/main/java/org/springframework/hateoas/hal/HalEmbeddedBuilder.java b/src/main/java/org/springframework/hateoas/hal/HalEmbeddedBuilder.java index 5ae1dcbc..81e8d310 100644 --- a/src/main/java/org/springframework/hateoas/hal/HalEmbeddedBuilder.java +++ b/src/main/java/org/springframework/hateoas/hal/HalEmbeddedBuilder.java @@ -41,7 +41,7 @@ class HalEmbeddedBuilder { private static final String DEFAULT_REL = "content"; private static final String INVALID_EMBEDDED_WRAPPER = "Embedded wrapper %s returned null for both the static rel and the rel target type! Make sure one of the two returns a non-null value!"; - private final Map embeddeds = new HashMap(); + private final Map embeddeds = new HashMap<>(); private final RelProvider provider; private final CurieProvider curieProvider; private final EmbeddedWrappers wrappers; @@ -90,7 +90,7 @@ class HalEmbeddedBuilder { return; } - List list = new ArrayList(); + List list = new ArrayList<>(); list.addAll(asCollection(currentValue)); list.addAll(asCollection(wrapper.getValue())); diff --git a/src/main/java/org/springframework/hateoas/hal/Jackson2HalModule.java b/src/main/java/org/springframework/hateoas/hal/Jackson2HalModule.java index 70c58c99..8f102541 100644 --- a/src/main/java/org/springframework/hateoas/hal/Jackson2HalModule.java +++ b/src/main/java/org/springframework/hateoas/hal/Jackson2HalModule.java @@ -807,7 +807,7 @@ public class Jackson2HalModule extends SimpleModule { @Override public void serialize(Boolean value, JsonGenerator jgen, SerializerProvider provider) throws IOException { - jgen.writeBoolean(value.booleanValue()); + jgen.writeBoolean(value); } /* diff --git a/src/main/java/org/springframework/hateoas/hal/forms/HalFormsDeserializers.java b/src/main/java/org/springframework/hateoas/hal/forms/HalFormsDeserializers.java index e7d4a3b3..f12a2e44 100644 --- a/src/main/java/org/springframework/hateoas/hal/forms/HalFormsDeserializers.java +++ b/src/main/java/org/springframework/hateoas/hal/forms/HalFormsDeserializers.java @@ -60,7 +60,7 @@ class HalFormsDeserializers { @Override public List deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException { - List result = new ArrayList(); + List result = new ArrayList<>(); JsonDeserializer deser = ctxt.findRootValueDeserializer(contentType); Object object; diff --git a/src/main/java/org/springframework/hateoas/hal/forms/HalFormsDocument.java b/src/main/java/org/springframework/hateoas/hal/forms/HalFormsDocument.java index d1e5fdf4..e0246631 100644 --- a/src/main/java/org/springframework/hateoas/hal/forms/HalFormsDocument.java +++ b/src/main/java/org/springframework/hateoas/hal/forms/HalFormsDocument.java @@ -158,7 +158,7 @@ public class HalFormsDocument { List links = new ArrayList<>(this.links); links.add(link); - return new HalFormsDocument(resource, resources, embedded, pageMetadata, links, templates); + return new HalFormsDocument<>(resource, resources, embedded, pageMetadata, links, templates); } /** @@ -176,7 +176,7 @@ public class HalFormsDocument { Map templates = new HashMap<>(this.templates); templates.put(name, template); - return new HalFormsDocument(resource, resources, embedded, pageMetadata, links, templates); + return new HalFormsDocument<>(resource, resources, embedded, pageMetadata, links, templates); } /** @@ -191,9 +191,9 @@ public class HalFormsDocument { Assert.notNull(key, "Embedded key must not be null!"); Assert.notNull(value, "Embedded value must not be null!"); - Map embedded = new HashMap(this.embedded); + Map embedded = new HashMap<>(this.embedded); embedded.put(key, value); - return new HalFormsDocument(resource, resources, embedded, pageMetadata, links, templates); + return new HalFormsDocument<>(resource, resources, embedded, pageMetadata, links, templates); } } diff --git a/src/main/java/org/springframework/hateoas/hal/forms/Jackson2HalFormsModule.java b/src/main/java/org/springframework/hateoas/hal/forms/Jackson2HalFormsModule.java index c49e7c4a..1a829a93 100644 --- a/src/main/java/org/springframework/hateoas/hal/forms/Jackson2HalFormsModule.java +++ b/src/main/java/org/springframework/hateoas/hal/forms/Jackson2HalFormsModule.java @@ -113,7 +113,7 @@ public class Jackson2HalFormsModule extends SimpleModule { */ public static class HalFormsHandlerInstantiator extends HalHandlerInstantiator { - private final Map, Object> serializers = new HashMap, Object>(); + private final Map, Object> serializers = new HashMap<>(); public HalFormsHandlerInstantiator(RelProvider resolver, CurieProvider curieProvider, MessageSourceAccessor messageSource, boolean enforceEmbeddedCollections, diff --git a/src/main/java/org/springframework/hateoas/mvc/ControllerLinkBuilderFactory.java b/src/main/java/org/springframework/hateoas/mvc/ControllerLinkBuilderFactory.java index e29f686f..11806823 100644 --- a/src/main/java/org/springframework/hateoas/mvc/ControllerLinkBuilderFactory.java +++ b/src/main/java/org/springframework/hateoas/mvc/ControllerLinkBuilderFactory.java @@ -74,7 +74,7 @@ public class ControllerLinkBuilderFactory implements MethodLinkBuilderFactory uriComponentsContributors = new ArrayList(); + private List uriComponentsContributors = new ArrayList<>(); /** * Configures the {@link UriComponentsContributor} to be used when building {@link Link} instances from method @@ -142,7 +142,7 @@ public class ControllerLinkBuilderFactory implements MethodLinkBuilderFactory values = new HashMap(); + Map values = new HashMap<>(); Iterator names = template.getVariableNames().iterator(); while (classMappingParameters.hasNext()) { @@ -153,7 +153,7 @@ public class ControllerLinkBuilderFactory implements MethodLinkBuilderFactory optionalEmptyParameters = new ArrayList(); + List optionalEmptyParameters = new ArrayList<>(); for (BoundMethodParameter parameter : REQUEST_PARAM_ACCESSOR.getBoundParameters(invocation)) { diff --git a/src/main/java/org/springframework/hateoas/mvc/HeaderLinksResponseEntity.java b/src/main/java/org/springframework/hateoas/mvc/HeaderLinksResponseEntity.java index 07001685..e11b3f15 100644 --- a/src/main/java/org/springframework/hateoas/mvc/HeaderLinksResponseEntity.java +++ b/src/main/java/org/springframework/hateoas/mvc/HeaderLinksResponseEntity.java @@ -71,9 +71,9 @@ public class HeaderLinksResponseEntity extends Respon Assert.notNull(entity, "Given HttpEntity must not be null!"); if (entity instanceof ResponseEntity) { - return new HeaderLinksResponseEntity((ResponseEntity) entity); + return new HeaderLinksResponseEntity<>((ResponseEntity) entity); } else { - return new HeaderLinksResponseEntity(entity); + return new HeaderLinksResponseEntity<>(entity); } } diff --git a/src/main/java/org/springframework/hateoas/mvc/ResourceProcessorHandlerMethodReturnValueHandler.java b/src/main/java/org/springframework/hateoas/mvc/ResourceProcessorHandlerMethodReturnValueHandler.java index 4932473c..cf784dde 100644 --- a/src/main/java/org/springframework/hateoas/mvc/ResourceProcessorHandlerMethodReturnValueHandler.java +++ b/src/main/java/org/springframework/hateoas/mvc/ResourceProcessorHandlerMethodReturnValueHandler.java @@ -133,10 +133,10 @@ public class ResourceProcessorHandlerMethodReturnValueHandler implements Handler if (originalValue instanceof ResponseEntity) { ResponseEntity source = (ResponseEntity) originalValue; - entity = new ResponseEntity(newBody, source.getHeaders(), source.getStatusCode()); + entity = new ResponseEntity<>(newBody, source.getHeaders(), source.getStatusCode()); } else { HttpEntity source = (HttpEntity) originalValue; - entity = new HttpEntity(newBody, source.getHeaders()); + entity = new HttpEntity<>(newBody, source.getHeaders()); } return rootLinksAsHeaders ? HeaderLinksResponseEntity.wrap(entity) : entity; diff --git a/src/main/java/org/springframework/hateoas/mvc/ResourceProcessorInvoker.java b/src/main/java/org/springframework/hateoas/mvc/ResourceProcessorInvoker.java index e3003e3f..2ef87c6c 100644 --- a/src/main/java/org/springframework/hateoas/mvc/ResourceProcessorInvoker.java +++ b/src/main/java/org/springframework/hateoas/mvc/ResourceProcessorInvoker.java @@ -18,7 +18,6 @@ package org.springframework.hateoas.mvc; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; -import java.util.Collections; import java.util.List; import org.springframework.core.Ordered; @@ -54,7 +53,7 @@ public class ResourceProcessorInvoker { Assert.notNull(processors, "ResourceProcessors must not be null!"); - this.processors = new ArrayList(); + this.processors = new ArrayList<>(); for (ResourceProcessor processor : processors) { @@ -70,7 +69,7 @@ public class ResourceProcessorInvoker { } } - Collections.sort(this.processors, AnnotationAwareOrderComparator.INSTANCE); + this.processors.sort(AnnotationAwareOrderComparator.INSTANCE); } /** @@ -105,7 +104,7 @@ public class ResourceProcessorInvoker { Resources resources = (Resources) value; ResolvableType elementTargetType = ResolvableType.forClass(Resources.class, referenceType.getRawClass()) .getGeneric(0); - List result = new ArrayList(resources.getContent().size()); + List result = new ArrayList<>(resources.getContent().size()); for (Object element : resources) { diff --git a/src/main/java/org/springframework/hateoas/mvc/ResourceProcessorInvokingHandlerAdapter.java b/src/main/java/org/springframework/hateoas/mvc/ResourceProcessorInvokingHandlerAdapter.java index da396937..04648f4b 100644 --- a/src/main/java/org/springframework/hateoas/mvc/ResourceProcessorInvokingHandlerAdapter.java +++ b/src/main/java/org/springframework/hateoas/mvc/ResourceProcessorInvokingHandlerAdapter.java @@ -63,7 +63,7 @@ public class ResourceProcessorInvokingHandlerAdapter extends RequestMappingHandl HandlerMethodReturnValueHandlerComposite oldHandlers = getReturnValueHandlersComposite(); // Set up ResourceProcessingHandlerMethodResolver to delegate to originally configured ones - List newHandlers = new ArrayList(); + List newHandlers = new ArrayList<>(); newHandlers.add(new ResourceProcessorHandlerMethodReturnValueHandler(oldHandlers, invoker)); // Configure the new handler to be used diff --git a/src/main/java/org/springframework/hateoas/mvc/TypeReferences.java b/src/main/java/org/springframework/hateoas/mvc/TypeReferences.java index 44bdc109..bdfd957f 100644 --- a/src/main/java/org/springframework/hateoas/mvc/TypeReferences.java +++ b/src/main/java/org/springframework/hateoas/mvc/TypeReferences.java @@ -87,7 +87,7 @@ public class TypeReferences { Assert.isTrue(parameterizedType.getActualTypeArguments().length == 1, String.format("Type must have exactly one generic type argument but has %s.", parameterizedType.getActualTypeArguments().length)); Class resourceType = GenericTypeResolver.resolveType(parameterizedType.getActualTypeArguments()[0], - new HashMap()); + new HashMap<>()); this.type = new SyntheticParameterizedType(resourceType, domainType); } diff --git a/src/test/java/org/springframework/hateoas/alps/JacksonSerializationTest.java b/src/test/java/org/springframework/hateoas/alps/JacksonSerializationTest.java index 6edc8a44..565f846d 100755 --- a/src/test/java/org/springframework/hateoas/alps/JacksonSerializationTest.java +++ b/src/test/java/org/springframework/hateoas/alps/JacksonSerializationTest.java @@ -75,11 +75,8 @@ public class JacksonSerializationTest { private static String read(Resource resource) throws IOException { - Scanner scanner = null; + try (Scanner scanner = new Scanner(resource.getInputStream())) { - try { - - scanner = new Scanner(resource.getInputStream()); StringBuilder builder = new StringBuilder(); while (scanner.hasNextLine()) { @@ -92,11 +89,6 @@ public class JacksonSerializationTest { } return builder.toString(); - - } finally { - if (scanner != null) { - scanner.close(); - } } } } diff --git a/src/test/java/org/springframework/hateoas/collectionjson/Jackson2CollectionJsonIntegrationTest.java b/src/test/java/org/springframework/hateoas/collectionjson/Jackson2CollectionJsonIntegrationTest.java index 3df39021..178b0a5c 100644 --- a/src/test/java/org/springframework/hateoas/collectionjson/Jackson2CollectionJsonIntegrationTest.java +++ b/src/test/java/org/springframework/hateoas/collectionjson/Jackson2CollectionJsonIntegrationTest.java @@ -121,11 +121,11 @@ public class Jackson2CollectionJsonIntegrationTest extends AbstractJackson2Marsh @Test public void rendersSimpleResourcesAsEmbedded() throws Exception { - List content = new ArrayList(); + List content = new ArrayList<>(); content.add("first"); content.add("second"); - Resources resources = new Resources(content); + Resources resources = new Resources<>(content); resources.add(new Link("localhost")); assertThat(write(resources)).isEqualTo(MappingUtils.read(new ClassPathResource("resources.json", getClass()))); @@ -134,11 +134,11 @@ public class Jackson2CollectionJsonIntegrationTest extends AbstractJackson2Marsh @Test public void deserializesSimpleResourcesAsEmbedded() throws Exception { - List content = new ArrayList(); + List content = new ArrayList<>(); content.add("first"); content.add("second"); - Resources expected = new Resources(content); + Resources expected = new Resources<>(content); expected.add(new Link("localhost")); Resources result = mapper.readValue(MappingUtils.read(new ClassPathResource("resources.json", getClass())), @@ -151,7 +151,7 @@ public class Jackson2CollectionJsonIntegrationTest extends AbstractJackson2Marsh @Test public void renderResource() throws Exception { - Resource data = new Resource("first", new Link("localhost")); + Resource data = new Resource<>("first", new Link("localhost")); assertThat(write(data)).isEqualTo(MappingUtils.read(new ClassPathResource("resource.json", getClass()))); } @@ -170,11 +170,11 @@ public class Jackson2CollectionJsonIntegrationTest extends AbstractJackson2Marsh @Test public void renderComplexStructure() throws Exception { - List> data = new ArrayList>(); - data.add(new Resource("first", new Link("localhost"), new Link("orders").withRel("orders"))); - data.add(new Resource("second", new Link("remotehost"), new Link("order").withRel("orders"))); + List> data = new ArrayList<>(); + data.add(new Resource<>("first", new Link("localhost"), new Link("orders").withRel("orders"))); + data.add(new Resource<>("second", new Link("remotehost"), new Link("order").withRel("orders"))); - Resources> resources = new Resources>(data); + Resources> resources = new Resources<>(data); resources.add(new Link("localhost")); resources.add(new Link("/page/2").withRel("next")); @@ -184,11 +184,11 @@ public class Jackson2CollectionJsonIntegrationTest extends AbstractJackson2Marsh @Test public void deserializeResources() throws Exception { - List> data = new ArrayList>(); - data.add(new Resource("first", new Link("localhost"), new Link("orders").withRel("orders"))); - data.add(new Resource("second", new Link("remotehost"), new Link("order").withRel("orders"))); + List> data = new ArrayList<>(); + data.add(new Resource<>("first", new Link("localhost"), new Link("orders").withRel("orders"))); + data.add(new Resource<>("second", new Link("remotehost"), new Link("order").withRel("orders"))); - Resources expected = new Resources>(data); + Resources expected = new Resources<>(data); expected.add(new Link("localhost")); expected.add(new Link("/page/2").withRel("next")); @@ -203,11 +203,11 @@ public class Jackson2CollectionJsonIntegrationTest extends AbstractJackson2Marsh @Test public void renderSimplePojos() throws Exception { - List> data = new ArrayList>(); + List> data = new ArrayList<>(); data.add(new Resource<>(new SimplePojo("text", 1), new Link("localhost"), new Link("orders").withRel("orders"))); data.add(new Resource<>(new SimplePojo("text2", 2), new Link("localhost"))); - Resources> resources = new Resources>(data); + Resources> resources = new Resources<>(data); resources.add(new Link("localhost")); resources.add(new Link("/page/2").withRel("next")); @@ -233,7 +233,7 @@ public class Jackson2CollectionJsonIntegrationTest extends AbstractJackson2Marsh private static Resources> setupAnnotatedPagedResources() { - List> content = new ArrayList>(); + List> content = new ArrayList<>(); content.add(new Resource<>(new SimplePojo("test1", 1), new Link("localhost"))); content.add(new Resource<>(new SimplePojo("test2", 2), new Link("localhost"))); diff --git a/src/test/java/org/springframework/hateoas/config/EnableHypermediaSupportIntegrationTest.java b/src/test/java/org/springframework/hateoas/config/EnableHypermediaSupportIntegrationTest.java index 83c13aa6..b0436208 100755 --- a/src/test/java/org/springframework/hateoas/config/EnableHypermediaSupportIntegrationTest.java +++ b/src/test/java/org/springframework/hateoas/config/EnableHypermediaSupportIntegrationTest.java @@ -325,14 +325,8 @@ public class EnableHypermediaSupportIntegrationTest { @Test public void registersHalFormsHttpMessageConvertersForRestTemplate() { - withContext(HalFormsConfig.class, context -> { - - foo(context, RestTemplate.class, it -> it.getMessageConverters().get(0), converter -> { - - assertThat(converter.getSupportedMediaTypes()) // - .hasSize(1).contains(MediaTypes.HAL_FORMS_JSON); - }); - }); + withContext(HalFormsConfig.class, context -> foo(context, RestTemplate.class, it -> it.getMessageConverters().get(0), converter -> assertThat(converter.getSupportedMediaTypes()) // + .hasSize(1).contains(MediaTypes.HAL_FORMS_JSON))); } private static void foo(ApplicationContext context, Class beanType, Function extractor, @@ -356,7 +350,7 @@ public class EnableHypermediaSupportIntegrationTest { Optional result = adapter.getMessageConverters().stream()// .filter(it -> it.getSupportedMediaTypes().contains(mediaType)).findFirst() // .map(AbstractJackson2HttpMessageConverter.class::cast) // - .map(it -> it.getObjectMapper()); + .map(AbstractJackson2HttpMessageConverter::getObjectMapper); if (!result.isPresent()) { fail("Couldn't find ObjectMapper from HttpMessageConverter supporting " + mediaType); @@ -401,12 +395,7 @@ public class EnableHypermediaSupportIntegrationTest { @Test public void configuresDefaultObjectMapperForHalToIgnoreUnknownProperties() { - withContext(HalConfig.class, context -> { - - assertObjectMapper(context, MediaTypes.HAL_JSON, mapper -> { - assertThat(mapper.isEnabled(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES)).isFalse(); - }); - }); + withContext(HalConfig.class, context -> assertObjectMapper(context, MediaTypes.HAL_JSON, mapper -> assertThat(mapper.isEnabled(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES)).isFalse())); } /** @@ -415,34 +404,19 @@ public class EnableHypermediaSupportIntegrationTest { @Test public void configuresDefaultObjectMapperForHalFormsToIgnoreUnknownProperties() { - withContext(HalFormsConfig.class, context -> { - - assertObjectMapper(context, MediaTypes.HAL_FORMS_JSON, mapper -> { - assertThat(mapper.isEnabled(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES)).isFalse(); - }); - }); + withContext(HalFormsConfig.class, context -> assertObjectMapper(context, MediaTypes.HAL_FORMS_JSON, mapper -> assertThat(mapper.isEnabled(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES)).isFalse())); } @Test public void configuresDefaultObjectMapperForCollectionJsonToIgnoreUnknownProperties() { - withContext(CollectionJsonConfig.class, context -> { - - assertObjectMapper(context, MediaTypes.COLLECTION_JSON, mapper -> { - assertThat(mapper.isEnabled(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES)).isFalse(); - }); - }); + withContext(CollectionJsonConfig.class, context -> assertObjectMapper(context, MediaTypes.COLLECTION_JSON, mapper -> assertThat(mapper.isEnabled(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES)).isFalse())); } @Test public void configuresDefaultObjectMapperForUberToIgnoreUnknownProperties() { - withContext(UberConfig.class, context -> { - - assertObjectMapper(context, MediaTypes.UBER_JSON, mapper -> { - assertThat(mapper.isEnabled(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES)).isFalse(); - }); - }); + withContext(UberConfig.class, context -> assertObjectMapper(context, MediaTypes.UBER_JSON, mapper -> assertThat(mapper.isEnabled(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES)).isFalse())); } @Test @@ -474,18 +448,14 @@ public class EnableHypermediaSupportIntegrationTest { @Test public void verifyRenderSingleLinkAsArrayViaOverridingBean() { - withContext(RenderLinkAsSingleLinksConfig.class, context -> { + withContext(RenderLinkAsSingleLinksConfig.class, context -> assertObjectMapper(context, MediaTypes.HAL_JSON, mapper -> { - assertObjectMapper(context, MediaTypes.HAL_JSON, mapper -> { + ResourceSupport resourceSupport = new ResourceSupport(); + resourceSupport.add(new Link("localhost").withSelfRel()); - ResourceSupport resourceSupport = new ResourceSupport(); - resourceSupport.add(new Link("localhost").withSelfRel()); - - assertThat(mapper.writeValueAsString(resourceSupport)) - .isEqualTo("{\"_links\":{\"self\":[{\"href\":\"localhost\"}]}}"); - }); - - }); + assertThat(mapper.writeValueAsString(resourceSupport)) + .isEqualTo("{\"_links\":{\"self\":[{\"href\":\"localhost\"}]}}"); + })); } private static void withContext(Class configuration, diff --git a/src/test/java/org/springframework/hateoas/support/MappingUtils.java b/src/test/java/org/springframework/hateoas/support/MappingUtils.java index ac1fb2ac..8eed4775 100644 --- a/src/test/java/org/springframework/hateoas/support/MappingUtils.java +++ b/src/test/java/org/springframework/hateoas/support/MappingUtils.java @@ -38,11 +38,8 @@ public final class MappingUtils { */ public static String read(Resource resource) throws IOException { - Scanner scanner = null; + try (Scanner scanner = new Scanner(resource.getInputStream())) { - try { - - scanner = new Scanner(resource.getInputStream()); StringBuilder builder = new StringBuilder(); while (scanner.hasNextLine()) { @@ -55,11 +52,6 @@ public final class MappingUtils { } return builder.toString(); - - } finally { - if (scanner != null) { - scanner.close(); - } } } } \ No newline at end of file