Merge "Addressing Technical Debt for ONAP-XACML"
[policy/engine.git] / POLICY-SDK-APP / src / main / java / org / onap / policy / controller / PolicyController.java
index eac06a7..03709cc 100644 (file)
@@ -43,6 +43,7 @@ import org.onap.policy.admin.RESTfulPAPEngine;
 import org.onap.policy.common.logging.flexlogger.FlexLogger;
 import org.onap.policy.common.logging.flexlogger.Logger;
 import org.onap.policy.model.PDPGroupContainer;
+import org.onap.policy.model.Roles;
 import org.onap.policy.rest.XACMLRestProperties;
 import org.onap.policy.rest.XacmlAdminAuthorization;
 import org.onap.policy.rest.dao.CommonClassDao;
@@ -53,10 +54,9 @@ import org.onap.policy.rest.jpa.PolicyVersion;
 import org.onap.policy.rest.jpa.UserInfo;
 import org.onap.policy.xacml.api.XACMLErrorConstants;
 import org.onap.policy.xacml.api.pap.PAPPolicyEngine;
-import org.openecomp.policy.model.Roles;
-import org.openecomp.portalsdk.core.controller.RestrictedBaseController;
-import org.openecomp.portalsdk.core.web.support.JsonMessage;
-import org.openecomp.portalsdk.core.web.support.UserUtils;
+import org.onap.portalsdk.core.controller.RestrictedBaseController;
+import org.onap.portalsdk.core.web.support.JsonMessage;
+import org.onap.portalsdk.core.web.support.UserUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.MediaType;
 import org.springframework.stereotype.Controller;
@@ -143,6 +143,20 @@ public class PolicyController extends RestrictedBaseController {
        //WebApp directories
        private static String configHome;
        private static String actionHome;
+       
+       //File upload size
+       private static long fileSizeLimit;
+       
+       private static boolean jUnit = false;
+       
+
+       public static boolean isjUnit() {
+               return jUnit;
+       }
+
+       public static void setjUnit(boolean jUnit) {
+               PolicyController.jUnit = jUnit;
+       }
 
        @Autowired
        private PolicyController(CommonClassDao commonClassDao){
@@ -150,6 +164,7 @@ public class PolicyController extends RestrictedBaseController {
        }
 
        public PolicyController() {
+               // Empty constructor
        }
 
        @PostConstruct
@@ -157,9 +172,16 @@ public class PolicyController extends RestrictedBaseController {
                Properties prop = new Properties();
                InputStream input = null;
                try {
-                       input = new FileInputStream("xacml.admin.properties");
+                       if(jUnit){
+                               File file = new File(new File(".").getCanonicalPath() + File.separator + "src"+ File.separator + "test" + File.separator + "resources" + File.separator + "JSONConfig.json");
+                               input = new FileInputStream(file);
+                       }else{
+                               input = new FileInputStream("xacml.admin.properties");
+                       }
                        // load a properties file
                        prop.load(input);
+                       //file upload size limit property
+                       setFileSizeLimit(prop.getProperty("file.size.limit"));
                        //pap url
                        setPapUrl(prop.getProperty("xacml.rest.pap.url"));
                        // get the property values
@@ -187,7 +209,12 @@ public class PolicyController extends RestrictedBaseController {
                        setAutoPushPDPGroup(prop.getProperty("xacml.autopush.pdpGroup"));
                        //Micro Service Properties
                        setMsOnapName(prop.getProperty("xacml.policy.msOnapName"));
+                       if(getMsOnapName() == null){
+                               setMsOnapName(prop.getProperty("xacml.policy.msEcompName"));
+                       }
+                       policyLogger.info("getMsOnapName => " + getMsOnapName());
                        setMsPolicyName(prop.getProperty("xacml.policy.msPolicyName"));
+                       policyLogger.info("setMsPolicyName => " + getMsPolicyName());
                        //WebApp directories
                        setConfigHome(prop.getProperty("xacml.rest.config.webapps") + "Config");
                        setActionHome(prop.getProperty("xacml.rest.config.webapps") + "Action");
@@ -350,7 +377,7 @@ public class PolicyController extends RestrictedBaseController {
        }
 
        public static boolean getActivePolicy(String query) {
-               if(commonClassDao.getDataByQuery(query, new SimpleBindings()).size() > 0){
+               if(!commonClassDao.getDataByQuery(query, new SimpleBindings()).isEmpty()){
                        return true;
                }else{
                        return false;
@@ -421,7 +448,7 @@ public class PolicyController extends RestrictedBaseController {
                for(Object entity : policyEntity){
                        PolicyEntity pEntity = (PolicyEntity) entity;
                        String removeExtension = pEntity.getPolicyName().replace(".xml", "");
-                       String version = removeExtension.substring(removeExtension.lastIndexOf(".")+1);
+                       String version = removeExtension.substring(removeExtension.lastIndexOf('.')+1);
                        av.add(version);
                }
                if(policyName.contains("/")){
@@ -695,6 +722,19 @@ public class PolicyController extends RestrictedBaseController {
                return file;
        }
        
+       public static void setFileSizeLimit(String uploadSize) {
+               //Default size limit is 30MB
+               if (uploadSize == null || uploadSize.isEmpty()) {
+                       fileSizeLimit = 30000000;
+               }
+               else {
+                       fileSizeLimit = Long.parseLong(uploadSize);
+               }
+       }
+       
+       public static long getFileSizeLimit() {
+               return fileSizeLimit;
+       }
        public String convertDate(String dateTTL) {
                String formateDate = null;
                if(dateTTL.contains("-")){