X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=holmes-actions%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fholmes%2Fcommon%2Fdmaap%2FDmaapService.java;h=79c861b5fc8e0215e7b3e8fa14560ff1ac29f203;hb=c9ed775685b01f5622618216748eeac3000285c4;hp=9c3d19b930f7b99fd050da6ad8dafdb7e6351e7d;hpb=4eaf0290dd2572f40526da9cfd09a1ccee4da76d;p=holmes%2Fcommon.git diff --git a/holmes-actions/src/main/java/org/onap/holmes/common/dmaap/DmaapService.java b/holmes-actions/src/main/java/org/onap/holmes/common/dmaap/DmaapService.java index 9c3d19b..79c861b 100644 --- a/holmes-actions/src/main/java/org/onap/holmes/common/dmaap/DmaapService.java +++ b/holmes-actions/src/main/java/org/onap/holmes/common/dmaap/DmaapService.java @@ -15,10 +15,13 @@ */ package org.onap.holmes.common.dmaap; +import com.fasterxml.jackson.core.JsonProcessingException; import java.util.List; import java.util.Optional; +import javax.inject.Inject; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.jvnet.hk2.annotations.Service; import org.onap.holmes.common.aai.AaiQuery; import org.onap.holmes.common.aai.entity.RelationshipList.RelationshipData; import org.onap.holmes.common.aai.entity.VmEntity; @@ -27,29 +30,35 @@ import org.onap.holmes.common.api.stat.VesAlarm; import org.onap.holmes.common.dmaap.entity.PolicyMsg; import org.onap.holmes.common.dmaap.entity.PolicyMsg.EVENT_STATUS; import org.onap.holmes.common.exception.CorrelationException; +import org.onap.holmes.common.utils.JacksonUtil; @Slf4j -@AllArgsConstructor +@Service public class DmaapService { - private static AaiQuery aaiQuery; - private static Publisher publisher; + @Inject + private AaiQuery aaiQuery; + @Inject + private Publisher publisher; - public static void publishPolicyMsg(PolicyMsg policyMsg) { + public void publishPolicyMsg(PolicyMsg policyMsg) { try { publisher.publish(policyMsg); + log.info("send policyMsg: " + JacksonUtil.beanToJson(policyMsg)); } catch (CorrelationException e) { log.error("Failed to publish policyMsg to dmaap", e.getMessage()); + } catch (JsonProcessingException e) { + log.info("Failed to convert policyMsg to json"); } } - public static PolicyMsg getPolicyMsg(VesAlarm vesAlarm) { + public PolicyMsg getPolicyMsg(VesAlarm vesAlarm) { return Optional.ofNullable(getVmEntity(vesAlarm.getSourceId(), vesAlarm.getSourceName())) .map(vmEntity -> getEnrichedPolicyMsg(vmEntity, vesAlarm)) .orElse(getDefaultPolicyMsg(vesAlarm.getSourceName())); } - private static String getVserverInstanceId(VnfEntity vnfEntity) { + private String getVserverInstanceId(VnfEntity vnfEntity) { String vserverInstanceId = ""; if (vnfEntity != null) { List relationshipDataList = vnfEntity.getRelationshipList() @@ -65,7 +74,7 @@ public class DmaapService { return vserverInstanceId; } - private static VnfEntity getVnfEntity(String vnfId, String vnfName) { + private VnfEntity getVnfEntity(String vnfId, String vnfName) { VnfEntity vnfEntity = null; try { vnfEntity = aaiQuery.getAaiVnfData(vnfId, vnfName); @@ -75,7 +84,7 @@ public class DmaapService { return vnfEntity; } - private static VmEntity getVmEntity(String sourceId, String sourceName) { + private VmEntity getVmEntity(String sourceId, String sourceName) { VmEntity vmEntity = null; try { vmEntity = aaiQuery.getAaiVmData(sourceId, sourceName); @@ -85,7 +94,7 @@ public class DmaapService { return vmEntity; } - private static PolicyMsg getEnrichedPolicyMsg(VmEntity vmEntity, VesAlarm vesAlarm) { + private PolicyMsg getEnrichedPolicyMsg(VmEntity vmEntity, VesAlarm vesAlarm) { VnfEntity vnfEntity = getVnfEntity(vesAlarm.getEventId(), vesAlarm.getEventName()); String vserverInstatnceId = getVserverInstanceId(vnfEntity); PolicyMsg policyMsg = new PolicyMsg(); @@ -118,7 +127,7 @@ public class DmaapService { return policyMsg; } - private static PolicyMsg getDefaultPolicyMsg(String sourceName) { + private PolicyMsg getDefaultPolicyMsg(String sourceName) { PolicyMsg policyMsg = new PolicyMsg(); policyMsg.setTarget("vserver.vserver-name"); policyMsg.setTargetType("VM");