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