]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Source/GenBuild/org/tianocore/build/global/Spd.java
Fixed grammar in messages.
[mirror_edk2.git] / Tools / Source / GenBuild / org / tianocore / build / global / Spd.java
index ddc851dc70fce6a11aff4716550c31ef719c4dc0..8772385e4b47ae7ed5ed255f6602aea007b94b95 100644 (file)
@@ -66,6 +66,12 @@ public class Spd {
     Map<String, String[]> guidInfo = new HashMap<String, String[]>();\r
 \r
     ///\r
+    /// Map of Guid info\r
+    /// Key: GuidCName\r
+    /// value: String Guid's GUID\r
+    ///\r
+    Map<String, String> guidCnameInfo = new HashMap<String, String>();\r
+    \r
     /// Map of library class and its exposed header file.\r
     /// Key : library class name\r
     /// value : library class corresponding header file\r
@@ -87,7 +93,7 @@ public class Spd {
         // If specified package file not exists\r
         //\r
         if ( ! packageFile.exists()) {\r
-            throw new BuildException("Package file [" + packageFile.getPath() + "] not exists. ");\r
+            throw new BuildException("Package file [" + packageFile.getPath() + "] does not exist!");\r
         }\r
         try {\r
             XmlObject spdDoc = XmlObject.Factory.parse(packageFile);\r
@@ -95,7 +101,7 @@ public class Spd {
             // Verify SPD file, if is invalid, throw Exception\r
             //\r
             if (! spdDoc.validate()) {\r
-                throw new BuildException("Package Surface Area file [" + packageFile.getPath() + "] is invalid. ");\r
+                throw new BuildException("Package Surface Area file [" + packageFile.getPath() + "] format is invalid!");\r
             }\r
             // We can change Map to XmlObject\r
             Map<String, XmlObject> spdDocMap = new HashMap<String, XmlObject>();\r
@@ -121,7 +127,7 @@ public class Spd {
                 moduleId.setPackage(packageId);\r
                 moduleId.setMsaFile(msaFile);\r
                 if (msaInfo.containsKey(moduleId)) {\r
-                    throw new BuildException("Find two modules with the same GUID and Version in " + packageId + ". They are [" + msaInfo.get(moduleId) + "] and [" + msaFile + "] ");\r
+                    throw new BuildException("Found two modules with the same GUID and Version in package " + packageId + ".\nThey are  module [" + msaInfo.get(moduleId) + "] and MSA file [" + msaFile + "]!");\r
                 }\r
                 msaInfo.put(moduleId, msaFile);\r
             }\r
@@ -140,7 +146,7 @@ public class Spd {
                 // Change path seperator to system-dependent path separator\r
                 //\r
                 File file = new File (header);\r
-                header = file.getParent();\r
+                header = file.getPath();\r
                 packageHeaderInfo.put(moduleType, header);\r
             }\r
             \r
@@ -149,6 +155,17 @@ public class Spd {
             //\r
             guidInfo.putAll(SurfaceAreaQuery.getSpdGuid());\r
             \r
+            //\r
+            // For Pcd get TokenSpaceGuid\r
+            //\r
+            Set<String> key = guidInfo.keySet();\r
+            Iterator item = key.iterator();\r
+            String [] nameValue = new String[2];\r
+            while(item.hasNext()){\r
+                nameValue = guidInfo.get(item.next());\r
+                guidCnameInfo.put(nameValue[0], nameValue[1]);\r
+            }\r
+            \r
             //\r
             // initialize PPI info\r
             //\r
@@ -182,7 +199,7 @@ public class Spd {
         }\r
         catch (Exception e) {\r
             e.setStackTrace(e.getStackTrace());\r
-            throw new BuildException("Parse package description file [" + packageId.getSpdFile() + "] Error.\n"\r
+            throw new BuildException("Parse of the package description file [" + packageId.getSpdFile() + "] failed!\n"\r
                                      + e.getMessage());\r
         }\r
     }\r
@@ -220,6 +237,13 @@ public class Spd {
         return guidInfo.get(guidName);\r
     }\r
 \r
+    /**\r
+     * return Guid Value. \r
+     */\r
+    public String getGuidFromCname(String cName){\r
+        return guidCnameInfo.get(cName);\r
+    }\r
+    \r
     /**\r
      getLibClassInclude \r
      \r
@@ -246,17 +270,5 @@ public class Spd {
         return packageHeaderInfo.get(moduleType);\r
     }\r
     \r
-    /**\r
-           getGuidNameArray\r
-    \r
-           This function is to get the GUID's CName and it's GUID according to\r
-           GUID's name\r
-    \r
-           @param   guidName     Name of GUID\r
-           @return               CName and GUID.\r
-         **/\r
-         public String[] getGuidNameArray(String guidName) {\r
-             return this.guidInfo.get(guidName);\r
-         }\r
 \r
 }\r