diff options
Diffstat (limited to 'components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/dmaap/AaiEventNotificationCallback.java')
-rw-r--r-- | components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/dmaap/AaiEventNotificationCallback.java | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/dmaap/AaiEventNotificationCallback.java b/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/dmaap/AaiEventNotificationCallback.java index 9bff14a0..292cf6ae 100644 --- a/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/dmaap/AaiEventNotificationCallback.java +++ b/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/dmaap/AaiEventNotificationCallback.java @@ -95,7 +95,7 @@ public class AaiEventNotificationCallback implements NotificationCallback { private void handleMsgJsonObject(JsonObject jsonObject){ JsonObject header = jsonObject.get(EVENT_HEADER).getAsJsonObject(); - if (!header.has(ACTION) || !header.get(ACTION).getAsString().equals(aaiNotifTargetAction)){ + if (!header.has(ACTION) || !isValid(header, ACTION, aaiNotifTargetAction)){ return; } if (!header.has(ENTITY_TYPE) || !header.get(ENTITY_TYPE).getAsString().equals(aaiNotifTargetEntity)){ @@ -131,4 +131,15 @@ public class AaiEventNotificationCallback implements NotificationCallback { } return null; } + + // make sure dmaap mesg header is expected type and valid; + private boolean isValid(JsonObject header, String targetKey, String allowed){ + boolean valid = false; + String[] allowedArr = allowed.split("\\|"); + String targetVal= header.get(targetKey).getAsString(); + for (String al: allowedArr){ + valid |= targetVal.equals(al); + } + return valid; + } } |