bugfix - accidental removal of rules
[holmes/rule-management.git] / rules / ccvpn-rule.drl
index e006dbb..bbde4e9 100644 (file)
@@ -9,10 +9,9 @@ import org.onap.holmes.common.exception.CorrelationException;
 import org.onap.holmes.common.dmaap.entity.PolicyMsg;
 import org.onap.holmes.common.dmaap.DmaapService;
 import org.onap.holmes.common.utils.DroolsLog;
-import org.onap.holmes.common.dropwizard.ioc.utils.ServiceLocatorHolder;
+import org.onap.holmes.common.utils.SpringContextUtil;
 
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
+import com.google.gson.JsonObject;
 
 import java.util.List;
 import java.util.Map;
@@ -75,28 +74,17 @@ function void updateAaiTpStatus(String networkId, String pnfName, String ifName,
 }
 
 function Map<String, Object> getAdditionalResourceInfo(String networkId, String pnfName, String ifName, String status) {
-       AaiQuery4Ccvpn aai = AaiQuery4Ccvpn.newInstance();
-       JSONArray instances = aai.getServiceInstances(networkId, pnfName, ifName, status);
-
-       Map<String, Object> ret = new HashMap<String, Object>();
-
-       StringBuilder sbn = new StringBuilder();
-       StringBuilder sbi = new StringBuilder();
-       for(int i = 0; i < instances.size(); ++i) {
-               JSONObject o = instances.getJSONObject(i);
-               String name = o.getString("service-instance-name");
-               String id = o.getString("service-instance-id");
-               ret.put(id + ".input-parameters", o.getString("input-parameters"));
-               sbn.append(name).append(",");
-               sbi.append(id).append(",");
-       }
-       ret.put("service-instance.service-instance-name", sbn.substring(0, sbn.length() -1).toString());
-       ret.put("service-instance.service-instance-id", sbi.substring(0, sbi.length() -1).toString());
-       ret.put("vserver.vserver-name", "TBD");
-       ret.put("globalSubscriberId", instances.getJSONObject(0).getString("globalSubscriberId"));
-       ret.put("serviceType", instances.getJSONObject(0).getString("serviceType"));
-
-       return ret;
+    AaiQuery4Ccvpn aai = AaiQuery4Ccvpn.newInstance();
+    JsonObject instance = aai.getServiceInstance(networkId, pnfName, ifName, status);
+    Map<String, Object> ret = new HashMap<String, Object>();
+    ret.put("service-instance.service-instance-id", instance.get("service-instance-id").getAsString());
+    ret.put("vserver.vserver-name", "TBD");
+    ret.put("globalSubscriberId", instance.get("globalSubscriberId").getAsString());
+    ret.put("serviceType", instance.get("serviceType").getAsString());
+    ret.put("network-information.network-id", networkId);
+    return ret;
 }
 
 function PolicyMsg createPolicyMsg(VesAlarm alarm) {
@@ -153,8 +141,8 @@ rule "Set Up Correlation"
                        // If any of the alarms have been marked as root, a policy message has ever been created and sent. Do NOT send it again.
                        if ($a.getRootFlag() != 1 && $b.getRootFlag() != 1) {
                                PolicyMsg msg = createPolicyMsg($a);
-                               DmaapService dmaapService = ServiceLocatorHolder.getLocator().getService(DmaapService.class);
-                               dmaapService.publishPolicyMsg(msg, "unauthenticated.DCAE_CL_OUTPUT");
+                               DmaapService dmaapService = SpringContextUtil.getBean(DmaapService.class);
+                               dmaapService.publishPolicyMsg(msg, "dcae_cl_out");
                                updateAaiLinkStatus(getLogicLink($a), status);
                        }
                        $a.setRootFlag(1);
@@ -181,4 +169,4 @@ rule "Clear Alarms"
        
                        retract($a);
                }
-end
\ No newline at end of file
+end