Fix the upload package failure 07/17407/1
authorMurali <murali.p@huawei.com>
Fri, 6 Oct 2017 06:16:39 +0000 (06:16 +0000)
committerMurali <murali.p@huawei.com>
Fri, 6 Oct 2017 06:16:39 +0000 (06:16 +0000)
Change-Id: I207665eb841d709aa232e401adf1b2891738430a
Jira:VNFSDK-105
Signed-off-by: Murali <murali.p@huawei.com>
vnfmarket-be/vnf-sdk-marketplace/src/main/java/org/onap/vnfsdk/marketplace/common/CommonConstant.java
vnfmarket-be/vnf-sdk-marketplace/src/main/java/org/onap/vnfsdk/marketplace/wrapper/PackageWrapperUtil.java

index 1ba18cd..92d19de 100644 (file)
@@ -31,11 +31,11 @@ public class CommonConstant {
 
   public static final String TOSCA_METADATA = "TOSCA-Metadata";
 
-  public static final String CSAR_VERSION_META = "version";
+  public static final String CSAR_VERSION_META = "Version";
 
-  public static final String CSAR_TYPE_META = "type";
+  public static final String CSAR_TYPE_META = "Type";
 
-  public static final String CSAR_PROVIDER_META = "provider";
+  public static final String CSAR_PROVIDER_META = "Provider";
 
   public static final String DEFINITIONS = "Definitions";
 
index 8eb68eb..ab94e98 100644 (file)
@@ -279,6 +279,11 @@ public class PackageWrapperUtil {
         if (unzipFile.endsWith(CommonConstant.MANIFEST)) {
           basicInfo = readManifest(unzipFile);
         }
+        
+        if (unzipFile.endsWith(CommonConstant.CSAR_META)) {
+            basicInfo = readMetaData(unzipFile);
+        }
+        
         if (ToolUtil.isYamlFile(new File(unzipFile))) {
           isXmlCsar = false;
         }
@@ -299,7 +304,7 @@ public class PackageWrapperUtil {
    * @param unzipFile
    * @return basic infor about package
    */
-  private static PackageBasicInfo readManifest(String unzipFile) {
+  private static PackageBasicInfo readMetaData(String unzipFile) {
 
     // Fix the package type to CSAR, temporary
     PackageBasicInfo basicInfo = new PackageBasicInfo();
@@ -319,16 +324,23 @@ public class PackageWrapperUtil {
           String meta = tempString.substring(0, count1).trim();
 
           // Check for the package provider name
-          if (meta.equalsIgnoreCase(CommonConstant.MF_PROVIDER_META)) {
+          if (meta.equalsIgnoreCase(CommonConstant.CSAR_PROVIDER_META)) {
             int count = tempString.indexOf(":") + 1;
             basicInfo.setProvider(tempString.substring(count).trim());
           }
 
           // Check for package version
-          if (meta.equalsIgnoreCase(CommonConstant.MF_VERSION_META)) {
+          if (meta.equalsIgnoreCase(CommonConstant.CSAR_VERSION_META)) {
             int count = tempString.indexOf(":") + 1;
             basicInfo.setVersion(tempString.substring(count).trim());
           }
+          
+       // Check for package type
+          if (meta.equalsIgnoreCase(CommonConstant.CSAR_TYPE_META)) {
+            int count = tempString.indexOf(":") + 1;
+           
+            basicInfo.setType(getEnumType(tempString.substring(count).trim()));
+          }
       }
 
       reader.close();
@@ -338,6 +350,77 @@ public class PackageWrapperUtil {
 
     return basicInfo;
   }
+  
+  private static EnumType getEnumType (String type)
+  {
+         EnumType vnfType = EnumType.CSAR;
+         if (type == "CSAR")
+         {
+                 vnfType = EnumType.CSAR;
+         }
+         
+         if (type == "GSAR")
+         {
+                 vnfType = EnumType.GSAR;
+         }
+         
+         if (type == "NSAR")
+         {
+                 vnfType = EnumType.NSAR;
+         }
+         
+         if (type == "SSAR")
+         {
+                 vnfType = EnumType.SSAR;
+         }
+         
+         if (type == "NFAR")
+         {
+                 vnfType = EnumType.NFAR;
+         }
+         
+         return vnfType;
+  }
+  
+  private static PackageBasicInfo readManifest(String unzipFile) {
+
+           // Fix the package type to CSAR, temporary
+           PackageBasicInfo basicInfo = new PackageBasicInfo();
+           basicInfo.setType(EnumType.CSAR);
+
+           File file = new File(unzipFile);
+           try (BufferedReader reader = new BufferedReader(new FileReader(file))) {
+
+             for(String tempString; (tempString = reader.readLine()) != null;)
+             {
+                 // If line is empty, ignore
+                 if ("".equals(tempString)) {
+                   continue;
+                 }
+
+                 int count1 = tempString.indexOf(":");
+                 String meta = tempString.substring(0, count1).trim();
+
+                 // Check for the package provider name
+                 if (meta.equalsIgnoreCase(CommonConstant.MF_PROVIDER_META)) {
+                   int count = tempString.indexOf(":") + 1;
+                   basicInfo.setProvider(tempString.substring(count).trim());
+                 }
+
+                 // Check for package version
+                 if (meta.equalsIgnoreCase(CommonConstant.MF_VERSION_META)) {
+                   int count = tempString.indexOf(":") + 1;
+                   basicInfo.setVersion(tempString.substring(count).trim());
+                 }
+             }
+
+             reader.close();
+           } catch (IOException e) {
+             LOG.error("Exception while parsing manifest file" + e, e);
+           }
+
+           return basicInfo;
+         }
   /**
    * get package format enum.
    * @param format package format