summaryrefslogtreecommitdiffstats
path: root/java/com/google/gerrit/extensions/common/SubmitRequirementExpressionInfo.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/google/gerrit/extensions/common/SubmitRequirementExpressionInfo.java')
-rw-r--r--java/com/google/gerrit/extensions/common/SubmitRequirementExpressionInfo.java28
1 files changed, 28 insertions, 0 deletions
diff --git a/java/com/google/gerrit/extensions/common/SubmitRequirementExpressionInfo.java b/java/com/google/gerrit/extensions/common/SubmitRequirementExpressionInfo.java
index 4d1fce2e3a..b4731f24a7 100644
--- a/java/com/google/gerrit/extensions/common/SubmitRequirementExpressionInfo.java
+++ b/java/com/google/gerrit/extensions/common/SubmitRequirementExpressionInfo.java
@@ -15,6 +15,7 @@
package com.google.gerrit.extensions.common;
import java.util.List;
+import java.util.Objects;
/** Result of evaluating a single submit requirement expression. */
public class SubmitRequirementExpressionInfo {
@@ -36,4 +37,31 @@ public class SubmitRequirementExpressionInfo {
* has two atoms: ["branch:refs/heads/foo", "project:bar"].
*/
public List<String> failingAtoms;
+
+ /**
+ * Optional error message. Contains an explanation of why the submit requirement expression failed
+ * during its evaluation.
+ */
+ public String errorMessage;
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (!(o instanceof SubmitRequirementExpressionInfo)) {
+ return false;
+ }
+ SubmitRequirementExpressionInfo that = (SubmitRequirementExpressionInfo) o;
+ return fulfilled == that.fulfilled
+ && Objects.equals(expression, that.expression)
+ && Objects.equals(passingAtoms, that.passingAtoms)
+ && Objects.equals(failingAtoms, that.failingAtoms)
+ && Objects.equals(errorMessage, that.errorMessage);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(expression, fulfilled, passingAtoms, failingAtoms, errorMessage);
+ }
}