Fixed the Policy API issues and Bugfixes
[policy/engine.git] / ECOMP-PAP-REST / src / main / java / org / openecomp / policy / pap / xacml / rest / service / ImportService.java
index 39a0485..d70332e 100644 (file)
@@ -35,7 +35,7 @@ import javax.servlet.http.HttpServletResponse;
 
 import org.openecomp.policy.common.logging.eelf.PolicyLogger;
 import org.openecomp.policy.pap.xacml.rest.components.CreateBRMSRuleTemplate;
-import org.openecomp.policy.pap.xacml.rest.components.CreateNewMicroSerivceModel;
+import org.openecomp.policy.pap.xacml.rest.components.CreateNewMicroServiceModel;
 
 public class ImportService {
 
@@ -45,7 +45,7 @@ public class ImportService {
                String version = request.getParameter("version");
                String serviceName = request.getParameter("serviceName");
                String description = request.getParameter("description");
-               Map<String, String> successMap = new HashMap<String, String>();
+               Map<String, String> successMap = new HashMap<>();
                switch(importServiceCreation){
                case "BRMSPARAM":
                        StringBuilder builder = new StringBuilder();
@@ -65,7 +65,7 @@ public class ImportService {
                        successMap = brmsRuleTemplate.addRule(builder.toString(), serviceName, description, "API");
                        break;
                case "MICROSERVICE":
-                       CreateNewMicroSerivceModel newMS = null;
+                       CreateNewMicroServiceModel newMS = null;
                        String randomID = UUID.randomUUID().toString();
                        if ( fileName != null) {
                                File extracDir = new File("ExtractDir");
@@ -94,22 +94,33 @@ public class ImportService {
                                                return;
                                        }
                                }else{ 
+                                       InputStream inputStream = null;
+                                       FileOutputStream outputStream = null;
                                        try {   
-                                               InputStream inputStream = request.getInputStream();
-                                               FileOutputStream outputStream = new FileOutputStream("ExtractDir" + File.separator + randomID+".zip"); 
+                                               inputStream = request.getInputStream();
+                                               outputStream = new FileOutputStream("ExtractDir" + File.separator + randomID+".zip"); 
                                                byte[] buffer = new byte[4096];
                                                int bytesRead = -1 ; 
                                                while ((bytesRead = inputStream.read(buffer)) != -1) { 
                                                        outputStream.write(buffer, 0, bytesRead) ; 
                                                }
-                                               outputStream.close() ; 
-                                               inputStream.close() ;
                                        } catch (IOException e) {
-                                               PolicyLogger.error("Error in reading in Zip File from API call");
+                                               PolicyLogger.error("Error in reading in Zip File from API call"+e);
                                                return;
+                                       }finally{
+                                               try {
+                                                       if(inputStream != null){
+                                                               inputStream.close();
+                                                       }
+                                                       if(outputStream != null){
+                                                               outputStream.close();
+                                                       }
+                                               } catch (IOException e) {
+                                                       PolicyLogger.error("Exception Occured while closing the input/output stream"+e);
+                                               }
                                        }
                                }
-                               newMS =  new CreateNewMicroSerivceModel(fileName, serviceName, "API", version, randomID);
+                               newMS =  new CreateNewMicroServiceModel(fileName, serviceName, "API", version, randomID);
                                successMap = newMS.addValuesToNewModel();
                                if (successMap.containsKey("success")) {
                                        successMap.clear();