diff options
Diffstat (limited to 'java/com/google/gerrit/server/change/SubmitRequirementsJson.java')
-rw-r--r-- | java/com/google/gerrit/server/change/SubmitRequirementsJson.java | 31 |
1 files changed, 21 insertions, 10 deletions
diff --git a/java/com/google/gerrit/server/change/SubmitRequirementsJson.java b/java/com/google/gerrit/server/change/SubmitRequirementsJson.java index 8eeec62adb..96c863e79d 100644 --- a/java/com/google/gerrit/server/change/SubmitRequirementsJson.java +++ b/java/com/google/gerrit/server/change/SubmitRequirementsJson.java @@ -36,28 +36,39 @@ public class SubmitRequirementsJson { if (req.applicabilityExpression().isPresent()) { info.applicabilityExpressionResult = submitRequirementExpressionToInfo( - req.applicabilityExpression().get(), result.applicabilityExpressionResult().get()); + req.applicabilityExpression().get(), + result.applicabilityExpressionResult().get(), + /* hide= */ true); // Always hide applicability expressions on the API } - if (req.overrideExpression().isPresent()) { + if (req.overrideExpression().isPresent() && result.overrideExpressionResult().isPresent()) { info.overrideExpressionResult = submitRequirementExpressionToInfo( - req.overrideExpression().get(), result.overrideExpressionResult().get()); + req.overrideExpression().get(), + result.overrideExpressionResult().get(), + /* hide= */ false); + } + if (result.submittabilityExpressionResult().isPresent()) { + info.submittabilityExpressionResult = + submitRequirementExpressionToInfo( + req.submittabilityExpression(), + result.submittabilityExpressionResult().get(), + /* hide= */ false); } - info.submittabilityExpressionResult = - submitRequirementExpressionToInfo( - req.submittabilityExpression(), result.submittabilityExpressionResult()); info.status = SubmitRequirementResultInfo.Status.valueOf(result.status().toString()); info.isLegacy = result.isLegacy(); return info; } private static SubmitRequirementExpressionInfo submitRequirementExpressionToInfo( - SubmitRequirementExpression expression, SubmitRequirementExpressionResult result) { + SubmitRequirementExpression expression, + SubmitRequirementExpressionResult result, + boolean hide) { SubmitRequirementExpressionInfo info = new SubmitRequirementExpressionInfo(); - info.expression = expression.expressionString(); + info.expression = hide ? null : expression.expressionString(); info.fulfilled = result.status().equals(SubmitRequirementExpressionResult.Status.PASS); - info.passingAtoms = result.passingAtoms(); - info.failingAtoms = result.failingAtoms(); + info.passingAtoms = hide ? null : result.passingAtoms(); + info.failingAtoms = hide ? null : result.failingAtoms(); + info.errorMessage = result.errorMessage().isPresent() ? result.errorMessage().get() : null; return info; } } |