diff options
Diffstat (limited to 'engine-d/src/main/java/org/onap/holmes/engine/dmaap')
-rw-r--r-- | engine-d/src/main/java/org/onap/holmes/engine/dmaap/DMaaPAlarmPolling.java | 2 | ||||
-rw-r--r-- | engine-d/src/main/java/org/onap/holmes/engine/dmaap/SubscriberAction.java | 11 |
2 files changed, 9 insertions, 4 deletions
diff --git a/engine-d/src/main/java/org/onap/holmes/engine/dmaap/DMaaPAlarmPolling.java b/engine-d/src/main/java/org/onap/holmes/engine/dmaap/DMaaPAlarmPolling.java index 99ba3d7..e2ad89c 100644 --- a/engine-d/src/main/java/org/onap/holmes/engine/dmaap/DMaaPAlarmPolling.java +++ b/engine-d/src/main/java/org/onap/holmes/engine/dmaap/DMaaPAlarmPolling.java @@ -44,7 +44,7 @@ public class DMaaPAlarmPolling implements Runnable { public void run() { while (isAlive) { - List<VesAlarm> vesAlarmList = new ArrayList<>(); + List<VesAlarm> vesAlarmList; try { vesAlarmList = subscriber.subscribe(); vesAlarmList.forEach(vesAlarm -> { diff --git a/engine-d/src/main/java/org/onap/holmes/engine/dmaap/SubscriberAction.java b/engine-d/src/main/java/org/onap/holmes/engine/dmaap/SubscriberAction.java index c96b813..1297f11 100644 --- a/engine-d/src/main/java/org/onap/holmes/engine/dmaap/SubscriberAction.java +++ b/engine-d/src/main/java/org/onap/holmes/engine/dmaap/SubscriberAction.java @@ -1,5 +1,5 @@ /* - * Copyright 2017 ZTE Corporation. + * Copyright 2017 - 2021 ZTE Corporation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,13 +39,18 @@ public class SubscriberAction { public synchronized void addSubscriber(Subscriber subscriber) { String topic = subscriber.getTopic(); - if (topic != null && !pollingTasks.containsKey(topic)) { + if (topic != null) { + if (pollingTasks.containsKey(topic)) { + removeSubscriber(subscriber); + } AlarmInfoDao alarmInfoDao = daoUtil.getJdbiDaoByOnDemand(AlarmInfoDao.class); DMaaPAlarmPolling pollingTask = new DMaaPAlarmPolling(subscriber, droolsEngine, alarmInfoDao); Thread thread = new Thread(pollingTask); thread.start(); pollingTasks.put(topic, pollingTask); - log.info("Subscribe to topic: " + subscriber.getUrl()); + log.info("Subscribed to topic: " + subscriber.getUrl()); + } else { + log.info("The topic is null. Operation aborted."); } } |