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();
}