diff options
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.java | 28 |
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 |