aboutsummaryrefslogtreecommitdiffstats
path: root/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/parameters/TopicParameterGroup.java
diff options
context:
space:
mode:
authorJorge Hernandez <jorge.hernandez-herrero@att.com>2019-07-30 13:57:35 +0000
committerGerrit Code Review <gerrit@onap.org>2019-07-30 13:57:35 +0000
commit32a6ceac730a392f18a15ca562b0545edbd8fec8 (patch)
tree7822df23ae26a4b1ea4a1d0358d71c61fc5d43a9 /policy-endpoints/src/main/java/org/onap/policy/common/endpoints/parameters/TopicParameterGroup.java
parentf14578b9c5d9a98cceb5342d69b0326289b1690c (diff)
parentef0641c47e0ffe212f2b850c90069ede7c16e1d7 (diff)
Merge "Passing the updated topic parameters to policy-endpoints"
Diffstat (limited to 'policy-endpoints/src/main/java/org/onap/policy/common/endpoints/parameters/TopicParameterGroup.java')
-rw-r--r--policy-endpoints/src/main/java/org/onap/policy/common/endpoints/parameters/TopicParameterGroup.java36
1 files changed, 26 insertions, 10 deletions
diff --git a/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/parameters/TopicParameterGroup.java b/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/parameters/TopicParameterGroup.java
index f633b0ef..eab9c12f 100644
--- a/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/parameters/TopicParameterGroup.java
+++ b/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/parameters/TopicParameterGroup.java
@@ -56,22 +56,38 @@ public class TopicParameterGroup extends ParameterGroupImpl {
@Override
public GroupValidationResult validate() {
GroupValidationResult result = super.validate();
- if (result.isValid() && (checkMissingMandatoryParams(topicSources)
- || checkMissingMandatoryParams(topicSinks))) {
- result.setResult(ValidationStatus.INVALID, "Mandatory parameters are missing. topic, servers "
- + "and topicCommInfrastructure must be specified.");
+ if (result.isValid()) {
+ StringBuilder errorMsg = new StringBuilder();
+ StringBuilder missingSourceParams = checkMissingMandatoryParams(topicSources);
+ if (missingSourceParams.length() > 0) {
+ errorMsg.append(missingSourceParams.append("missing in topicSources. "));
+ }
+ StringBuilder missingSinkParams = checkMissingMandatoryParams(topicSinks);
+ if (missingSinkParams.length() > 0) {
+ errorMsg.append(missingSinkParams.append("missing in topicSinks."));
+ }
+
+ if (errorMsg.length() > 0) {
+ errorMsg.insert(0, "Mandatory parameters are missing. ");
+ result.setResult(ValidationStatus.INVALID, errorMsg.toString());
+ }
}
return result;
}
- private boolean checkMissingMandatoryParams(List<TopicParameters> topicParametersList) {
+ private StringBuilder checkMissingMandatoryParams(List<TopicParameters> topicParametersList) {
+ StringBuilder missingParams = new StringBuilder();
for (TopicParameters topicParameters : topicParametersList) {
- if (StringUtils.isBlank(topicParameters.getTopic())
- || StringUtils.isBlank(topicParameters.getTopicCommInfrastructure())
- || topicParameters.getServers().isEmpty()) {
- return true;
+ if (StringUtils.isBlank(topicParameters.getTopic())) {
+ missingParams.append("topic, ");
+ }
+ if (StringUtils.isBlank(topicParameters.getTopicCommInfrastructure())) {
+ missingParams.append("topicCommInfrastructure, ");
+ }
+ if (null == topicParameters.getServers() || topicParameters.getServers().isEmpty()) {
+ missingParams.append("servers, ");
}
}
- return false;
+ return missingParams;
}
}