From 01c5fae3f07d8ead0c63b15c652e5cc8534ad7a2 Mon Sep 17 00:00:00 2001 From: Oliver Drotbohm Date: Wed, 31 Mar 2021 15:44:54 +0200 Subject: [PATCH] =?UTF-8?q?#1505=20-=20Improve=20signatures=20of=20HalForm?= =?UTF-8?q?sOptions.inline(=E2=80=A6).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A bit of generics ♥️ for HalFormsOptions.inline(…) to avoid compiler warnings. --- .../hateoas/mediatype/hal/forms/HalFormsOptions.java | 11 ++++++----- .../hal/forms/HalFormsTemplateBuilderUnitTest.java | 2 +- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/springframework/hateoas/mediatype/hal/forms/HalFormsOptions.java b/src/main/java/org/springframework/hateoas/mediatype/hal/forms/HalFormsOptions.java index af76823c..2bb2f33f 100644 --- a/src/main/java/org/springframework/hateoas/mediatype/hal/forms/HalFormsOptions.java +++ b/src/main/java/org/springframework/hateoas/mediatype/hal/forms/HalFormsOptions.java @@ -43,7 +43,8 @@ public interface HalFormsOptions { * @param values must not be {@literal null}. * @return will never be {@literal null}. */ - public static Inline inline(Object... values) { + @SuppressWarnings("unchecked") + public static Inline inline(T... values) { Assert.notNull(values, "Values must not be null!"); @@ -56,7 +57,7 @@ public interface HalFormsOptions { * @param values must not be {@literal null}. * @return will never be {@literal null}. */ - public static Inline inline(Collection values) { + public static Inline inline(Collection values) { Assert.notNull(values, "Values must not be null!"); @@ -253,14 +254,14 @@ public interface HalFormsOptions { public static class Inline extends AbstractHalFormsOptions { - private final Collection inline; + private final Collection inline; /** * @param values * @param promptRef * @param valueRef */ - private Inline(Collection values, @Nullable String promptRef, @Nullable String valueRef, + private Inline(Collection values, @Nullable String promptRef, @Nullable String valueRef, @Nullable Long minItems, @Nullable Long maxItems) { super(promptRef, valueRef, minItems, maxItems); @@ -276,7 +277,7 @@ public interface HalFormsOptions { * @return */ @JsonProperty - public Collection getInline() { + public Collection getInline() { return inline; } diff --git a/src/test/java/org/springframework/hateoas/mediatype/hal/forms/HalFormsTemplateBuilderUnitTest.java b/src/test/java/org/springframework/hateoas/mediatype/hal/forms/HalFormsTemplateBuilderUnitTest.java index 981cfd95..c8ee13e5 100644 --- a/src/test/java/org/springframework/hateoas/mediatype/hal/forms/HalFormsTemplateBuilderUnitTest.java +++ b/src/test/java/org/springframework/hateoas/mediatype/hal/forms/HalFormsTemplateBuilderUnitTest.java @@ -160,7 +160,7 @@ class HalFormsTemplateBuilderUnitTest { @Test // #1483 void rendersRegisteredSuggest() { - List values = Arrays.asList("1234123412341234", "4321432143214321"); + List values = Arrays.asList("1234123412341234", "4321432143214321"); HalFormsConfiguration configuration = new HalFormsConfiguration() .withOptions(PatternExample.class, "number", metadata -> HalFormsOptions.inline(values));