X-Git-Url: https://gerrit.onap.org/r/gitweb?p=aai%2Fdata-router.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fonap%2Faai%2Fdatarouter%2Fpolicy%2FSpikeAggregateGenericVnfProcessor.java;h=c723d2b7426afe8b39438e1c28fe3b137537d0d4;hp=b1a5a878209cf7b31dfe5f149bb4ffd42f177753;hb=6015c2cc7d1cd28e91b5a9cb5aed5366c6c29290;hpb=5deef237b9757f5419cc68e68aefd4b9e1c7e30c diff --git a/src/main/java/org/onap/aai/datarouter/policy/SpikeAggregateGenericVnfProcessor.java b/src/main/java/org/onap/aai/datarouter/policy/SpikeAggregateGenericVnfProcessor.java index b1a5a87..c723d2b 100644 --- a/src/main/java/org/onap/aai/datarouter/policy/SpikeAggregateGenericVnfProcessor.java +++ b/src/main/java/org/onap/aai/datarouter/policy/SpikeAggregateGenericVnfProcessor.java @@ -21,12 +21,16 @@ package org.onap.aai.datarouter.policy; import java.io.FileNotFoundException; +import java.util.ArrayList; import java.util.List; import org.apache.camel.Exchange; import org.onap.aai.datarouter.entity.SpikeAggregationEntity; import org.onap.aai.datarouter.entity.SpikeEventMeta; import org.onap.aai.datarouter.logging.EntityEventPolicyMsgs; +import org.onap.aai.util.EntityOxmReferenceHelper; +import org.onap.aai.util.Version; +import org.onap.aai.util.VersionedOxmEntities; import com.fasterxml.jackson.databind.JsonNode; @@ -45,25 +49,36 @@ public class SpikeAggregateGenericVnfProcessor extends AbstractSpikeEntityEventP // Create the indexes in the search service if they do not already exist. searchAgent.createSearchIndex(searchIndexName, searchIndexSchema, createIndexUrl); logger.info(EntityEventPolicyMsgs.ENTITY_EVENT_POLICY_REGISTERED); + } - + @Override public void process(Exchange exchange) throws Exception { long startTime = System.currentTimeMillis(); SpikeEventMeta meta = processSpikeEvent(exchange); - + if (meta == null) { return; } String oxmEntityType = getOxmEntityType(meta.getSpikeEventVertex().getType()); + + VersionedOxmEntities oxmEntities = + EntityOxmReferenceHelper.getInstance().getVersionedOxmEntities(Version.valueOf(oxmVersion.toLowerCase())); + + List suggestibleAttrInPayload = new ArrayList<>(); + List suggestibleAttrInOxm = extractSuggestableAttr(oxmEntities, meta.getSpikeEventVertex().getType()); + if (suggestibleAttrInOxm != null) { + for (String attr: suggestibleAttrInOxm){ + if (meta.getVertexProperties().has(attr)) { + suggestibleAttrInPayload.add(attr); + } + } + } - List searchableAttr = getSearchableAttibutes(meta.getOxmJaxbContext(), oxmEntityType, - meta.getSpikeEventVertex().getType(), meta.getEventEntity().toString(), exchange); - - if (searchableAttr == null) { + if (suggestibleAttrInPayload.isEmpty()) { return; }