From a14e592bfab308555a338f6948ab384333ff0171 Mon Sep 17 00:00:00 2001 From: Oliver Drotbohm Date: Wed, 29 Jul 2020 09:48:50 +0200 Subject: [PATCH] =?UTF-8?q?#1322=20-=20Rename=20Links.and(boolean,=20?= =?UTF-8?q?=E2=80=A6)=20to=20=E2=80=A6.andIf(boolean,=20=E2=80=A6).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/springframework/hateoas/Links.java | 14 +++++--------- .../org/springframework/hateoas/LinksUnitTest.java | 4 ++-- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/src/main/java/org/springframework/hateoas/Links.java b/src/main/java/org/springframework/hateoas/Links.java index 83f2b59f..8930d617 100644 --- a/src/main/java/org/springframework/hateoas/Links.java +++ b/src/main/java/org/springframework/hateoas/Links.java @@ -142,7 +142,7 @@ public class Links implements Iterable { * links = links.and(…); * } * as - * links = link.and(a > 3, …); + * links = link.andIf(a > 3, …); * * * @param condition @@ -150,17 +150,13 @@ public class Links implements Iterable { * @return */ @SafeVarargs - public final Links and(boolean condition, Supplier... links) { + public final Links andIf(boolean condition, Supplier... links) { Assert.notNull(links, "Links must not be null!"); - if (!condition) { - return this; - } - - return and(Arrays.stream(links) // - .map(Supplier::get) // - .collect(Collectors.toList())); + return condition // + ? and(Arrays.stream(links).map(Supplier::get).collect(Collectors.toList())) // + : this; } /** diff --git a/src/test/java/org/springframework/hateoas/LinksUnitTest.java b/src/test/java/org/springframework/hateoas/LinksUnitTest.java index bdcc0885..313965e9 100755 --- a/src/test/java/org/springframework/hateoas/LinksUnitTest.java +++ b/src/test/java/org/springframework/hateoas/LinksUnitTest.java @@ -139,7 +139,7 @@ class LinksUnitTest { @Test // #1322 void conditionallyAddsLink() { - Links links = Links.NONE.and(true, () -> Link.of("/foo")); + Links links = Links.NONE.andIf(true, () -> Link.of("/foo")); assertThat(links.getRequiredLink(IanaLinkRelations.SELF).getHref()).isEqualTo("/foo"); } @@ -147,7 +147,7 @@ class LinksUnitTest { @Test // #1322 void doesNotEvaluateSupplierIfAddConditionIsFalse() { - assertThatCode(() -> Links.NONE.and(false, () -> { + assertThatCode(() -> Links.NONE.andIf(false, () -> { throw new IllegalStateException(); })).doesNotThrowAnyException(); }