diff options
Diffstat (limited to 'gerrit-server/src/main/java/com/google/gerrit/server/query/OperatorPredicate.java')
-rw-r--r-- | gerrit-server/src/main/java/com/google/gerrit/server/query/OperatorPredicate.java | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/query/OperatorPredicate.java b/gerrit-server/src/main/java/com/google/gerrit/server/query/OperatorPredicate.java index fbd6af1225..4c6e203f78 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/query/OperatorPredicate.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/query/OperatorPredicate.java @@ -14,9 +14,11 @@ package com.google.gerrit.server.query; +import java.util.Collection; + /** Predicate to filter a field by matching value. */ -public class OperatorPredicate extends Predicate { +public abstract class OperatorPredicate<T> extends Predicate<T> { private final String name; private final String value; @@ -34,6 +36,14 @@ public class OperatorPredicate extends Predicate { } @Override + public Predicate<T> copy(final Collection<? extends Predicate<T>> children) { + if (!children.isEmpty()) { + throw new IllegalArgumentException("Expected 0 children"); + } + return this; + } + + @Override public int hashCode() { return getOperator().hashCode() * 31 + getValue().hashCode(); } @@ -41,7 +51,7 @@ public class OperatorPredicate extends Predicate { @Override public boolean equals(final Object other) { if (getClass() == other.getClass()) { - final OperatorPredicate p = (OperatorPredicate) other; + final OperatorPredicate<?> p = (OperatorPredicate<?>) other; return getOperator().equals(p.getOperator()) && getValue().equals(p.getValue()); } |