You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@brooklyn.apache.org by GitBox <gi...@apache.org> on 2022/02/07 10:17:45 UTC
[GitHub] [brooklyn-server] jcabrerizo commented on a change in pull request #1297: New functionals to apply to an iterable: generic AllEqualsFunction an…
jcabrerizo commented on a change in pull request #1297:
URL: https://github.com/apache/brooklyn-server/pull/1297#discussion_r800503666
##########
File path: utils/common/src/main/java/org/apache/brooklyn/util/collections/CollectionFunctionals.java
##########
@@ -119,6 +115,35 @@ public T apply(Iterable<? extends T> input) {
@Override public String toString() { return "firstElementFunction"; }
}
+ public static class AllEqualsFunction implements Function<Iterable<?>, Comparable<?>> {
+ private final Comparable<?> value;
+
+ public AllEqualsFunction(Comparable<?> value) {
+ if (Objects.isNull(value)) {
+ throw new IllegalArgumentException("The value to compare all to must be defined");
+ }
+ this.value = value;
+ }
+
+ @Override
+ public Boolean apply(@Nullable Iterable<?> input) {
+ if (Objects.isNull(input) || Iterables.isEmpty(input)) return null;
Review comment:
I think it should return `false` if the input is empty or null unless the comparable is an empty iterable or a null value.
Not sure how functional is my logic about that
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: dev-unsubscribe@brooklyn.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org