]> git.proxmox.com Git - mirror_edk2.git/commitdiff
After change token space guid from guid value to Guid's CName, change code to support...
authorklu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524>
Sat, 1 Jul 2006 10:39:42 +0000 (10:39 +0000)
committerklu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524>
Sat, 1 Jul 2006 10:39:42 +0000 (10:39 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@707 6f19259b-4bc3-4df7-8a09-765794883524

Tools/Source/GenBuild/org/tianocore/build/global/GlobalData.java
Tools/Source/GenBuild/org/tianocore/build/pcd/action/CollectPCDAction.java

index e843362c290266e95a76acc0348752daa26b06b0..195f2e93aaa6959d11ccdbf1573e1c7a832a845c 100644 (file)
@@ -768,13 +768,18 @@ public class GlobalData {
         String guid = null;\r
         Set set = spdTable.keySet();\r
         Iterator iter = set.iterator();\r
-        \r
+\r
+        if (iter == null) {\r
+            return null;\r
+        }\r
+\r
         while (iter.hasNext()){\r
             Spd spd = (Spd) spdTable.get(iter.next());\r
             guid = spd.getGuidFromCname(cName);\r
             if (guid != null){\r
-                cNameGuid[0] = new String(cName);\r
-                cNameGuid[1] = new String(guid);\r
+                cNameGuid = new String[2];\r
+                cNameGuid[0] = cName;\r
+                cNameGuid[1] = guid;\r
                 break;\r
             }\r
         }\r
index 37f74713d6a8241348049a3a3b9837d46f62c565..63d494f0cf2fa1794b7f5c594d12b2904047476e 100644 (file)
@@ -2077,12 +2077,12 @@ public class CollectPCDAction {
         boolean                             isDuplicate       = false;\r
         Token.PCD_TYPE                      pcdType           = Token.PCD_TYPE.UNKNOWN;\r
         Token.DATUM_TYPE                    datumType         = Token.DATUM_TYPE.UNKNOWN;\r
-        long                                 tokenNumber       = 0;\r
+        long                                tokenNumber       = 0;\r
         String                              moduleName        = null;\r
         String                              datum             = null;\r
         int                                 maxDatumSize      = 0;\r
-        String                                                         tokenSpaceGuidString = null;\r
-        \r
+        String[]                            tokenSpaceStrRet  = null;\r
+\r
         //\r
         // ----------------------------------------------\r
         // 1), Get all <ModuleSA> from FPD file.\r
@@ -2145,11 +2145,20 @@ public class CollectPCDAction {
             // ----------------------------------------------------------------------\r
             // \r
             for (pcdIndex = 0; pcdIndex < pcdBuildDataArray.size(); pcdIndex ++) {\r
-               //tokenSpaceGuidString = GlobalData.getGuidInfoFromCname(pcdBuildData.getTokenSpaceGuidCName())[1];\r
-                tokenSpaceGuidString = null;\r
                 pcdBuildData = pcdBuildDataArray.get(pcdIndex);\r
+                \r
+                try {\r
+                    tokenSpaceStrRet = GlobalData.getGuidInfoFromCname(pcdBuildData.getTokenSpaceGuidCName());\r
+                } catch ( Exception e ) {\r
+                    throw new EntityException ("Faile get Guid for token " + pcdBuildData.getCName() + ":" + e.getMessage());\r
+                }\r
+\r
+                if (tokenSpaceStrRet == null) {\r
+                    throw new EntityException ("Fail to get Token space guid for token" + pcdBuildData.getCName());\r
+                } \r
+\r
                 primaryKey   = Token.getPrimaryKeyString(pcdBuildData.getCName(),\r
-                                                         translateSchemaStringToUUID(tokenSpaceGuidString));\r
+                                                         translateSchemaStringToUUID(tokenSpaceStrRet[1]));\r
                 pcdType      = Token.getpcdTypeFromString(pcdBuildData.getItemType().toString());\r
                 datumType    = Token.getdatumTypeFromString(pcdBuildData.getDatumType().toString());\r
                 tokenNumber  = Long.decode(pcdBuildData.getToken().toString());\r
@@ -2278,10 +2287,18 @@ public class CollectPCDAction {
                     // If the token is not in database, create a new token instance and add\r
                     // a usage instance into this token in database.\r
                     // \r
-                       //String tokenSpaceString = GlobalData.getGuidInfoFromCname(pcdBuildData.getTokenSpaceGuidCName())[1];\r
-                    String tokenSpaceString = null;\r
+                    try {\r
+                        tokenSpaceStrRet = GlobalData.getGuidInfoFromCname(pcdBuildData.getTokenSpaceGuidCName());\r
+                    } catch (Exception e) {\r
+                        throw new EntityException("Fail to get token space guid for token " + token.cName);\r
+                    }\r
+\r
+                    if (tokenSpaceStrRet == null) {\r
+                        throw new EntityException("Fail to get token space guid for token " + token.cName);\r
+                    }\r
+\r
                     token = new Token(pcdBuildData.getCName(), \r
-                                      translateSchemaStringToUUID(tokenSpaceString));\r
+                                      translateSchemaStringToUUID(tokenSpaceStrRet[1]));\r
     \r
                     token.datumType     = datumType;\r
                     token.tokenNumber   = tokenNumber;\r
@@ -2674,6 +2691,7 @@ public class CollectPCDAction {
         String dynamicPrimaryKey = null;\r
         DynamicPcdBuildDefinitions                    dynamicPcdBuildDefinitions = null;\r
         List<DynamicPcdBuildDefinitions.PcdBuildData> dynamicPcdBuildDataArray   = null;\r
+        String[]                                      tokenSpaceStrRet           = null;\r
 \r
         //\r
         // If FPD document is not be opened, open and initialize it.\r
@@ -2701,8 +2719,18 @@ public class CollectPCDAction {
         for (index = 0; index < dynamicPcdBuildDataArray.size(); index ++) {\r
             //String tokenSpaceGuidString = GlobalData.getGuidInfoFromCname(dynamicPcdBuildDataArray.get(index).getTokenSpaceGuidCName())[1];\r
             String tokenSpaceGuidString = null;\r
+            try {\r
+                tokenSpaceStrRet = GlobalData.getGuidInfoFromCname(dynamicPcdBuildDataArray.get(index).getTokenSpaceGuidCName());\r
+            } catch (Exception e) {\r
+                throw new EntityException ("Fail to get token space guid for token " + dynamicPcdBuildDataArray.get(index).getCName());\r
+            }\r
+            \r
+            if (tokenSpaceStrRet == null) {\r
+                throw new EntityException ("Fail to get token space guid for token " + dynamicPcdBuildDataArray.get(index).getCName());\r
+            }\r
+\r
             dynamicPrimaryKey = Token.getPrimaryKeyString(dynamicPcdBuildDataArray.get(index).getCName(),\r
-                                                          translateSchemaStringToUUID(tokenSpaceGuidString));\r
+                                                          translateSchemaStringToUUID(tokenSpaceStrRet[1]));\r
             if (dynamicPrimaryKey.equalsIgnoreCase(token.getPrimaryKeyString())) {\r
                 return dynamicPcdBuildDataArray.get(index);\r
             }\r