summaryrefslogtreecommitdiffstats
path: root/dcae-analytics/dcae-analytics-tca-core/src/main/java/org/onap/dcae/analytics/tca/core/util/function/calculation/TcaEventNameFilter.java
diff options
context:
space:
mode:
Diffstat (limited to 'dcae-analytics/dcae-analytics-tca-core/src/main/java/org/onap/dcae/analytics/tca/core/util/function/calculation/TcaEventNameFilter.java')
-rw-r--r--dcae-analytics/dcae-analytics-tca-core/src/main/java/org/onap/dcae/analytics/tca/core/util/function/calculation/TcaEventNameFilter.java28
1 files changed, 18 insertions, 10 deletions
diff --git a/dcae-analytics/dcae-analytics-tca-core/src/main/java/org/onap/dcae/analytics/tca/core/util/function/calculation/TcaEventNameFilter.java b/dcae-analytics/dcae-analytics-tca-core/src/main/java/org/onap/dcae/analytics/tca/core/util/function/calculation/TcaEventNameFilter.java
index 574e9ba..e5f501e 100644
--- a/dcae-analytics/dcae-analytics-tca-core/src/main/java/org/onap/dcae/analytics/tca/core/util/function/calculation/TcaEventNameFilter.java
+++ b/dcae-analytics/dcae-analytics-tca-core/src/main/java/org/onap/dcae/analytics/tca/core/util/function/calculation/TcaEventNameFilter.java
@@ -1,6 +1,7 @@
/*
- * ================================================================================
+ * ==========LICENSE_START=========================================================
* Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+ * Copyright (c) 2022 Wipro Limited Intellectual Property. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -21,6 +22,7 @@ package org.onap.dcae.analytics.tca.core.util.function.calculation;
import java.util.Optional;
import java.util.Set;
+import java.util.List;
import java.util.stream.Collectors;
import org.onap.dcae.analytics.model.cef.CommonEventHeader;
@@ -56,17 +58,23 @@ public class TcaEventNameFilter implements TcaCalculationFunction {
// Get CEF Message Event name and Event names in tca policy
final String cefMessageEventName = eventNameOptional.get();
- final TcaPolicy tcaPolicy = tcaExecutionContext.getTcaPolicy();
- final Set<String> policyEventNames = tcaPolicy.getMetricsPerEventName().stream()
+ final List<TcaPolicy> tcaPolList = tcaExecutionContext.getTcaPolicy();
+ int count = 0;
+ int size = tcaPolList.size();
+ for( TcaPolicy tcaPol : tcaPolList){
+ final Set<String> policyEventNames = tcaPol.getMetricsPerEventName().stream()
.map(MetricsPerEventName::getEventName).collect(Collectors.toSet());
-
- // Check CEF Message Event name matches any Policy Event names
- if (!policyEventNames.contains(cefMessageEventName)) {
- final String earlyTerminationMessage = String.format(
- "CEF Message Event name does not match any Policy Event Names. " +
+ // Check CEF Message Event name matches any Policy Event names
+ if (!policyEventNames.contains(cefMessageEventName)) {
+ count++;
+ if(count >= size) {
+ final String earlyTerminationMessage = String.format(
+ "CEF Message Event name does not match any Policy Event Names. " +
"Message EventName: %s, Policy Event Names: %s", cefMessageEventName, policyEventNames);
- setTerminatingMessage(earlyTerminationMessage, tcaExecutionContext, false);
- return tcaExecutionContext;
+ setTerminatingMessage(earlyTerminationMessage, tcaExecutionContext, false);
+ return tcaExecutionContext;
+ }
+ }
}
// CEF Messages one of the the Policy Event names