From b654fd4bf72c9c112513d5983dbd275588f1c60b Mon Sep 17 00:00:00 2001 From: Robert von Burg Date: Tue, 21 May 2019 14:14:15 +0200 Subject: [PATCH] [New] Added new ExpressionsSupport.predicate() can be used as search.where(predicate(() -> someBool) --- .../src/main/java/li/strolch/search/ExpressionsSupport.java | 6 ++++++ .../src/main/java/li/strolch/search/SearchExpressions.java | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/li.strolch.agent/src/main/java/li/strolch/search/ExpressionsSupport.java b/li.strolch.agent/src/main/java/li/strolch/search/ExpressionsSupport.java index 67466823a..c5f8af3cf 100644 --- a/li.strolch.agent/src/main/java/li/strolch/search/ExpressionsSupport.java +++ b/li.strolch.agent/src/main/java/li/strolch/search/ExpressionsSupport.java @@ -1,5 +1,7 @@ package li.strolch.search; +import java.util.function.Supplier; + import li.strolch.model.*; import li.strolch.model.activity.Activity; import li.strolch.model.parameter.Parameter; @@ -14,6 +16,10 @@ public class ExpressionsSupport { return element -> !expression.matches(element); } + public static SearchExpression predicate(Supplier predicate) { + return element -> predicate.get(); + } + public static SearchExpression id(SearchPredicate predicate) { return element -> predicate.matches(element.getId()); } diff --git a/li.strolch.agent/src/main/java/li/strolch/search/SearchExpressions.java b/li.strolch.agent/src/main/java/li/strolch/search/SearchExpressions.java index 8fba1079d..499105688 100644 --- a/li.strolch.agent/src/main/java/li/strolch/search/SearchExpressions.java +++ b/li.strolch.agent/src/main/java/li/strolch/search/SearchExpressions.java @@ -1,5 +1,7 @@ package li.strolch.search; +import java.util.function.Supplier; + import li.strolch.model.StrolchRootElement; /** @@ -13,6 +15,10 @@ public interface SearchExpressions { return element -> !expression.matches(element); } + default SearchExpression predicate(Supplier predicate) { + return ExpressionsSupport.predicate(predicate); + } + default ExpressionBuilder id() { return ExpressionsSupport.id(); }