aboutsummaryrefslogtreecommitdiffstats
path: root/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/PolicyTypeNativeDroolsController.java
diff options
context:
space:
mode:
authorjhh <jorge.hernandez-herrero@att.com>2020-03-22 19:37:21 -0500
committerjhh <jorge.hernandez-herrero@att.com>2020-03-22 22:29:07 -0500
commit97e19c931535a5b474d4942a9982f0b7a1cf7414 (patch)
treeea2f83efb976bf7bda159097dbff50c0b99e451a /feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/PolicyTypeNativeDroolsController.java
parentcc69c5a3f56a3e90c17c4fdcf38dc93c37cf93f2 (diff)
Fix op policies distribution to controllers
Fix a bug when distributing a policy to the right controller plus additional junits to catch similar issues. Issue-ID: POLICY-2356 Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Change-Id: I25fefa64ad54c55e6516ae18c6895b6de9407419 Signed-off-by: jhh <jorge.hernandez-herrero@att.com>
Diffstat (limited to 'feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/PolicyTypeNativeDroolsController.java')
-rw-r--r--feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/PolicyTypeNativeDroolsController.java21
1 files changed, 19 insertions, 2 deletions
diff --git a/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/PolicyTypeNativeDroolsController.java b/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/PolicyTypeNativeDroolsController.java
index b0118fbe..2a417dcb 100644
--- a/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/PolicyTypeNativeDroolsController.java
+++ b/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/PolicyTypeNativeDroolsController.java
@@ -21,6 +21,7 @@
package org.onap.policy.drools.lifecycle;
import com.fasterxml.jackson.annotation.JsonIgnore;
+import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Properties;
@@ -142,6 +143,10 @@ public class PolicyTypeNativeDroolsController implements PolicyTypeController {
}
private boolean configControllerSources(ControllerProperties controllerConfig, Properties controllerProps) {
+ if (controllerConfig.getSourceTopics() == null) {
+ return true;
+ }
+
for (ControllerSourceTopic configSourceTopic : controllerConfig.getSourceTopics()) {
List<TopicSource> sources =
TopicEndpointManager.getManager().getTopicSources(List.of(configSourceTopic.getTopicName()));
@@ -161,6 +166,10 @@ public class PolicyTypeNativeDroolsController implements PolicyTypeController {
}
private boolean configControllerSinks(ControllerProperties controllerConfig, Properties controllerProps) {
+ if (controllerConfig.getSinkTopics() == null) {
+ return true;
+ }
+
for (ControllerSinkTopic configSinkTopic : controllerConfig.getSinkTopics()) {
List<TopicSink> sinks =
TopicEndpointManager.getManager().getTopicSinks(List.of(configSinkTopic.getTopicName()));
@@ -236,13 +245,21 @@ public class PolicyTypeNativeDroolsController implements PolicyTypeController {
}
private List<String> sourceTopics(List<ControllerSourceTopic> sourceTopics) {
+ if (sourceTopics == null) {
+ return Collections.EMPTY_LIST;
+ }
+
return sourceTopics.stream()
.map(ControllerSourceTopic::getTopicName)
.collect(Collectors.toList());
}
- private List<String> sinkTopics(List<ControllerSinkTopic> sourceTopics) {
- return sourceTopics.stream()
+ private List<String> sinkTopics(List<ControllerSinkTopic> sinkTopics) {
+ if (sinkTopics == null) {
+ return Collections.EMPTY_LIST;
+ }
+
+ return sinkTopics.stream()
.map(ControllerSinkTopic::getTopicName)
.collect(Collectors.toList());
}