Fix logging issues
[clamp.git] / src / main / java / org / onap / clamp / loop / LoopOperation.java
index 7def783..3f4c529 100644 (file)
@@ -31,7 +31,6 @@ import com.google.gson.JsonNull;
 import com.google.gson.JsonObject;
 import com.google.gson.JsonPrimitive;
 
-import java.io.IOException;
 import java.lang.reflect.Array;
 import java.util.Collection;
 import java.util.Date;
@@ -45,7 +44,6 @@ import org.onap.clamp.clds.config.ClampProperties;
 import org.onap.clamp.clds.util.LoggingUtils;
 import org.onap.clamp.clds.util.ONAPLogConstants;
 import org.onap.clamp.exception.OperationException;
-import org.onap.clamp.policy.PolicyOperation;
 import org.onap.clamp.util.HttpConnectionManager;
 import org.slf4j.event.Level;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -54,35 +52,35 @@ import org.springframework.stereotype.Component;
 import org.yaml.snakeyaml.Yaml;
 
 /**
- * Closed loop operations
+ * Closed loop operations.
  */
 @Component
 public class LoopOperation {
 
-    protected static final EELFLogger logger          = EELFManager.getInstance().getLogger(LoopOperation.class);
-    protected static final EELFLogger auditLogger     = EELFManager.getInstance().getMetricsLogger();
+    protected static final EELFLogger logger = EELFManager.getInstance().getLogger(LoopOperation.class);
+    protected static final EELFLogger auditLogger = EELFManager.getInstance().getMetricsLogger();
     private final DcaeDispatcherServices dcaeDispatcherServices;
     private final LoopService loopService;
     private LoggingUtils util = new LoggingUtils(logger);
-    private PolicyOperation policyOp;
 
     @Autowired
     private HttpServletRequest request;
 
     @Autowired
-    public LoopOperation(LoopService loopService, DcaeDispatcherServices dcaeDispatcherServices, 
-            ClampProperties refProp, HttpConnectionManager httpConnectionManager, PolicyOperation policyOp) {
+    public LoopOperation(LoopService loopService, DcaeDispatcherServices dcaeDispatcherServices,
+        ClampProperties refProp, HttpConnectionManager httpConnectionManager) {
         this.loopService = loopService;
         this.dcaeDispatcherServices = dcaeDispatcherServices;
-        this.policyOp =  policyOp;
     }
-
+    
     /**
      * Deploy the closed loop.
      *
-     * @param loopName the loop name
+     * @param loopName
+     *        the loop name
      * @return the updated loop
-     * @throws Exceptions during the operation
+     * @throws OperationException
+     *         Exception during the operation
      */
     public Loop deployLoop(Exchange camelExchange, String loopName) throws OperationException {
         util.entering(request, "CldsService: Deploy model");
@@ -98,10 +96,9 @@ public class LoopOperation {
 
         // verify the current closed loop state
         if (loop.getLastComputedState() != LoopState.SUBMITTED) {
-            String msg = "Deploy loop exception: This closed loop is in state:" + loop.getLastComputedState() 
+            String msg = "Deploy loop exception: This closed loop is in state:" + loop.getLastComputedState()
                 + ". It could be deployed only when it is in SUBMITTED state.";
-            util.exiting(HttpStatus.CONFLICT.toString(), msg, Level.INFO,
-                ONAPLogConstants.ResponseStatus.ERROR);
+            util.exiting(HttpStatus.CONFLICT.toString(), msg, Level.INFO, ONAPLogConstants.ResponseStatus.ERROR);
             throw new OperationException(msg);
         }
 
@@ -118,25 +115,27 @@ public class LoopOperation {
         Map<String, Object> yamlMap = yaml.load(loop.getBlueprint());
         JsonObject bluePrint = wrapSnakeObject(yamlMap).getAsJsonObject();
 
-        loop.setDcaeDeploymentStatusUrl(dcaeDispatcherServices.createNewDeployment(deploymentId, loop.getDcaeBlueprintId(), bluePrint));
+        loop.setDcaeDeploymentStatusUrl(
+            dcaeDispatcherServices.createNewDeployment(deploymentId, loop.getDcaeBlueprintId(), bluePrint));
         loop.setLastComputedState(LoopState.DEPLOYED);
         // save the updated loop
-        loopService.saveOrUpdateLoop (loop);
+        loopService.saveOrUpdateLoop(loop);
 
         // audit log
         LoggingUtils.setTimeContext(startTime, new Date());
         auditLogger.info("Deploy model completed");
         util.exiting(HttpStatus.OK.toString(), "Successful", Level.INFO, ONAPLogConstants.ResponseStatus.COMPLETED);
-        return  loop;
+        return loop;
     }
 
     /**
      * Un deploy closed loop.
      *
-     * @param loopName the loop name
+     * @param loopName
+     *        the loop name
      * @return the updated loop
      */
-    public Loop unDeployLoop(String loopName)  throws OperationException {
+    public Loop unDeployLoop(String loopName) throws OperationException {
         util.entering(request, "LoopOperation: Undeploy the closed loop");
         Date startTime = new Date();
         Loop loop = loopService.getLoop(loopName);
@@ -146,14 +145,13 @@ public class LoopOperation {
             util.exiting(HttpStatus.INTERNAL_SERVER_ERROR.toString(), msg, Level.INFO,
                 ONAPLogConstants.ResponseStatus.ERROR);
             throw new OperationException(msg);
-        } 
+        }
 
         // verify the current closed loop state
         if (loop.getLastComputedState() != LoopState.DEPLOYED) {
-            String msg = "Unploy loop exception: This closed loop is in state:" + loop.getLastComputedState() 
+            String msg = "Unploy loop exception: This closed loop is in state:" + loop.getLastComputedState()
                 + ". It could be undeployed only when it is in DEPLOYED state.";
-            util.exiting(HttpStatus.CONFLICT.toString(), msg, Level.INFO,
-                ONAPLogConstants.ResponseStatus.ERROR);
+            util.exiting(HttpStatus.CONFLICT.toString(), msg, Level.INFO, ONAPLogConstants.ResponseStatus.ERROR);
             throw new OperationException(msg);
         }
 
@@ -165,7 +163,7 @@ public class LoopOperation {
         loop.setLastComputedState(LoopState.SUBMITTED);
 
         // save the updated loop
-        loopService.saveOrUpdateLoop (loop);
+        loopService.saveOrUpdateLoop(loop);
 
         // audit log
         LoggingUtils.setTimeContext(startTime, new Date());
@@ -174,32 +172,35 @@ public class LoopOperation {
         return loop;
     }
 
-    private JsonElement wrapSnakeObject(Object o) {
-        //NULL => JsonNull
-        if (o == null)
+    private JsonElement wrapSnakeObject(Object obj) {
+        // NULL => JsonNull
+        if (obj == null) {
             return JsonNull.INSTANCE;
+        }
 
         // Collection => JsonArray
-        if (o instanceof Collection) {
+        if (obj instanceof Collection) {
             JsonArray array = new JsonArray();
-            for (Object childObj : (Collection<?>)o)
+            for (Object childObj : (Collection<?>) obj) {
                 array.add(wrapSnakeObject(childObj));
+            }
             return array;
         }
 
         // Array => JsonArray
-        if (o.getClass().isArray()) {
+        if (obj.getClass().isArray()) {
             JsonArray array = new JsonArray();
 
             int length = Array.getLength(array);
-            for (int i=0; i<length; i++)
+            for (int i = 0; i < length; i++) {
                 array.add(wrapSnakeObject(Array.get(array, i)));
+            }
             return array;
         }
 
         // Map => JsonObject
-        if (o instanceof Map) {
-            Map<?, ?> map = (Map<?, ?>)o;
+        if (obj instanceof Map) {
+            Map<?, ?> map = (Map<?, ?>) obj;
 
             JsonObject jsonObject = new JsonObject();
             for (final Map.Entry<?, ?> entry : map.entrySet()) {
@@ -211,161 +212,7 @@ public class LoopOperation {
         }
 
         // otherwise take it as a string
-        return new JsonPrimitive(String.valueOf(o));
+        return new JsonPrimitive(String.valueOf(obj));
     }
 
-    /**
-     * Submit the Ms policies.
-     *
-     * @param loopName the loop name
-     * @return the updated loop
-     * @throws IOException IO exception
-     * @throws Exceptions during the operation
-     */
-    public Loop submitMsPolicies (String loopName) throws OperationException, IOException {
-        util.entering(request, "LoopOperation: delete microservice policies");
-        Date startTime = new Date();
-        Loop loop = loopService.getLoop(loopName);
-
-        if (loop == null) {
-            String msg = "Submit MS policies exception: Not able to find closed loop:" + loopName;
-            util.exiting(HttpStatus.INTERNAL_SERVER_ERROR.toString(), msg, Level.INFO,
-                ONAPLogConstants.ResponseStatus.ERROR);
-            throw new OperationException(msg);
-        }
-
-        // verify the current closed loop state
-        if (loop.getLastComputedState() != LoopState.SUBMITTED && loop.getLastComputedState() != LoopState.DESIGN) {
-            String msg = "Submit MS policies exception: This closed loop is in state:" + loop.getLastComputedState() 
-                + ". It could be deleted only when it is in SUBMITTED state.";
-            util.exiting(HttpStatus.CONFLICT.toString(), msg, Level.INFO,
-                ONAPLogConstants.ResponseStatus.ERROR);
-            throw new OperationException(msg);
-        }
-
-        // Establish the api call to Policy to create the ms services
-        policyOp.createMsPolicy(loop.getMicroServicePolicies());
-
-        // audit log
-        LoggingUtils.setTimeContext(startTime, new Date());
-        auditLogger.info("Deletion of MS policies completed");
-        util.exiting(HttpStatus.OK.toString(), "Successful", Level.INFO, ONAPLogConstants.ResponseStatus.COMPLETED);
-        return  loop;
-    }
-
-    
-    /**
-     * Delete the Ms policies.
-     *
-     * @param loopName the loop name
-     * @return the updated loop
-     * @throws IOException IO exception
-     * @throws Exceptions during the operation
-     */
-    public Loop deleteMsPolicies (Exchange camelExchange, String loopName) throws OperationException, IOException {
-        util.entering(request, "LoopOperation: delete microservice policies");
-        Date startTime = new Date();
-        Loop loop = loopService.getLoop(loopName);
-
-        if (loop == null) {
-            String msg = "Delete MS policies exception: Not able to find closed loop:" + loopName;
-            util.exiting(HttpStatus.INTERNAL_SERVER_ERROR.toString(), msg, Level.INFO,
-                ONAPLogConstants.ResponseStatus.ERROR);
-            throw new OperationException(msg);
-        }
-
-        // verify the current closed loop state
-        if (loop.getLastComputedState() != LoopState.SUBMITTED) {
-            String msg = "Delete MS policies exception: This closed loop is in state:" + loop.getLastComputedState() 
-                + ". It could be deleted only when it is in SUBMITTED state.";
-            util.exiting(HttpStatus.CONFLICT.toString(), msg, Level.INFO,
-                ONAPLogConstants.ResponseStatus.ERROR);
-            throw new OperationException(msg);
-        }
-
-        // Establish the api call to Policy to create the ms services
-        policyOp.deleteMsPolicy(loop.getMicroServicePolicies());
-
-        // audit log
-        LoggingUtils.setTimeContext(startTime, new Date());
-        auditLogger.info("Deletion of MS policies completed");
-        util.exiting(HttpStatus.OK.toString(), "Successful", Level.INFO, ONAPLogConstants.ResponseStatus.COMPLETED);
-        return  loop;
-    }
-
-    /**
-     * Delete the operational policy.
-     *
-     * @param loopName the loop name
-     * @return the updated loop
-     * @throws Exceptions during the operation
-     */
-    public Loop deleteOpPolicy (Exchange camelExchange, String loopName) throws OperationException {
-        util.entering(request, "LoopOperation: delete guard policy");
-        Date startTime = new Date();
-        Loop loop = loopService.getLoop(loopName);
-
-        if (loop == null) {
-            String msg = "Delete guard policy exception: Not able to find closed loop:" + loopName;
-            util.exiting(HttpStatus.INTERNAL_SERVER_ERROR.toString(), msg, Level.INFO,
-                ONAPLogConstants.ResponseStatus.ERROR);
-            throw new OperationException(msg);
-        }
-
-        // verify the current closed loop state
-        if (loop.getLastComputedState() != LoopState.SUBMITTED) {
-            String msg = "Delete MS policies exception: This closed loop is in state:" + loop.getLastComputedState() 
-                + ". It could be deleted only when it is in SUBMITTED state.";
-            util.exiting(HttpStatus.CONFLICT.toString(), msg, Level.INFO,
-                ONAPLogConstants.ResponseStatus.ERROR);
-            throw new OperationException(msg);
-        }
-
-        // Establish the api call to Policy to delete operational policy
-        //client.deleteOpPolicy();
-
-        // audit log
-        LoggingUtils.setTimeContext(startTime, new Date());
-        auditLogger.info("Deletion of Guard policy completed");
-        util.exiting(HttpStatus.OK.toString(), "Successful", Level.INFO, ONAPLogConstants.ResponseStatus.COMPLETED);
-        return  loop;
-    }
-
-    /**
-     * Delete the Guard policy.
-     *
-     * @param loopName the loop name
-     * @return the updated loop
-     * @throws Exceptions during the operation
-     */
-    public Loop deleteGuardPolicy (Exchange camelExchange, String loopName) throws OperationException {
-        util.entering(request, "LoopOperation: delete operational policy");
-        Date startTime = new Date();
-        Loop loop = loopService.getLoop(loopName);
-
-        if (loop == null) {
-            String msg = "Delete operational policy exception: Not able to find closed loop:" + loopName;
-            util.exiting(HttpStatus.INTERNAL_SERVER_ERROR.toString(), msg, Level.INFO,
-                ONAPLogConstants.ResponseStatus.ERROR);
-            throw new OperationException(msg);
-        }
-
-        // verify the current closed loop state
-        if (loop.getLastComputedState() != LoopState.SUBMITTED) {
-            String msg = "Delete MS policies exception: This closed loop is in state:" + loop.getLastComputedState() 
-                + ". It could be deleted only when it is in SUBMITTED state.";
-            util.exiting(HttpStatus.CONFLICT.toString(), msg, Level.INFO,
-                ONAPLogConstants.ResponseStatus.ERROR);
-            throw new OperationException(msg);
-        }
-
-        // Establish the api call to Policy to delete Guard policy
-        //client.deleteOpPolicy();
-
-        // audit log
-        LoggingUtils.setTimeContext(startTime, new Date());
-        auditLogger.info("Deletion of operational policy completed");
-        util.exiting(HttpStatus.OK.toString(), "Successful", Level.INFO, ONAPLogConstants.ResponseStatus.COMPLETED);
-        return  loop;
-    }
 }