diff options
author | 2020-03-22 19:37:21 -0500 | |
---|---|---|
committer | 2020-03-22 22:29:07 -0500 | |
commit | 97e19c931535a5b474d4942a9982f0b7a1cf7414 (patch) | |
tree | ea2f83efb976bf7bda159097dbff50c0b99e451a /feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/PolicyTypeNativeDroolsController.java | |
parent | cc69c5a3f56a3e90c17c4fdcf38dc93c37cf93f2 (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.java | 21 |
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()); } |