]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/workspace/WorkspaceTools.java
1. Enhance Source Files selection in msa:
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / workspace / WorkspaceTools.java
index 46c325e3b3b8d004debbb006baaf2d18d9d40e93..16cfaad87a7307bc0b0943fe337823c71e8b2a05 100644 (file)
@@ -35,12 +35,15 @@ import org.tianocore.SpdHeaderDocument.SpdHeader;
 import org.tianocore.frameworkwizard.common.DataType;\r
 import org.tianocore.frameworkwizard.common.Log;\r
 import org.tianocore.frameworkwizard.common.SaveFile;\r
+import org.tianocore.frameworkwizard.common.Sort;\r
 import org.tianocore.frameworkwizard.common.Tools;\r
 import org.tianocore.frameworkwizard.common.Identifications.Identification;\r
 import org.tianocore.frameworkwizard.common.Identifications.OpenFile;\r
 import org.tianocore.frameworkwizard.far.FarHeader;\r
 import org.tianocore.frameworkwizard.far.FarIdentification;\r
 import org.tianocore.frameworkwizard.module.Identifications.ModuleIdentification;\r
+import org.tianocore.frameworkwizard.module.Identifications.PcdCoded.PcdIdentification;\r
+import org.tianocore.frameworkwizard.module.Identifications.PcdCoded.PcdVector;\r
 import org.tianocore.frameworkwizard.packaging.PackageIdentification;\r
 import org.tianocore.frameworkwizard.platform.PlatformIdentification;\r
 \r
@@ -283,7 +286,7 @@ public class WorkspaceTools {
 \r
             }\r
         }\r
-        Tools.sortPackages(vPackageList, DataType.SORT_TYPE_ASCENDING);\r
+        Sort.sortPackages(vPackageList, DataType.SORT_TYPE_ASCENDING);\r
         return vPackageList;\r
     }\r
 \r
@@ -383,7 +386,7 @@ public class WorkspaceTools {
             }\r
             v.addElement(new ModuleIdentification(id, pid));\r
         }\r
-        Tools.sortModules(v, DataType.SORT_TYPE_ASCENDING);\r
+        Sort.sortModules(v, DataType.SORT_TYPE_ASCENDING);\r
         return v;\r
 \r
     }\r
@@ -426,7 +429,7 @@ public class WorkspaceTools {
                 }\r
             }\r
         }\r
-        Tools.sortModules(vModuleList, DataType.SORT_TYPE_ASCENDING);\r
+        Sort.sortModules(vModuleList, DataType.SORT_TYPE_ASCENDING);\r
         return vModuleList;\r
     }\r
 \r
@@ -457,7 +460,7 @@ public class WorkspaceTools {
                 Log.err("Open Platform Surface Area " + path, "Invalid file type");\r
             }\r
         }\r
-        Tools.sortPlatforms(vPlatformList, DataType.SORT_TYPE_ASCENDING);\r
+        Sort.sortPlatforms(vPlatformList, DataType.SORT_TYPE_ASCENDING);\r
         return vPlatformList;\r
     }\r
 \r
@@ -475,7 +478,7 @@ public class WorkspaceTools {
                 }\r
             }\r
         }\r
-        Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+        Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
         return vector;\r
     }\r
 \r
@@ -493,7 +496,7 @@ public class WorkspaceTools {
                 }\r
             }\r
         }\r
-        Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+        Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
         return vector;\r
     }\r
 \r
@@ -511,7 +514,7 @@ public class WorkspaceTools {
                 }\r
             }\r
         }\r
-        Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+        Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
         return vector;\r
     }\r
 \r
@@ -529,7 +532,7 @@ public class WorkspaceTools {
                 }\r
             }\r
         }\r
-        Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+        Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
         return vector;\r
     }\r
 \r
@@ -538,16 +541,22 @@ public class WorkspaceTools {
      \r
      @return Vector\r
      **/\r
-    public Vector<String> getAllPcdDeclarationsFromPackage(PackageSurfaceArea spd) {\r
-        Vector<String> vector = new Vector<String>();\r
+    public PcdVector getAllPcdDeclarationsFromPackage(PackageSurfaceArea spd) {\r
+        PcdVector vector = new PcdVector();\r
         if (spd.getPcdDeclarations() != null) {\r
             if (spd.getPcdDeclarations().getPcdEntryList().size() > 0) {\r
                 for (int index = 0; index < spd.getPcdDeclarations().getPcdEntryList().size(); index++) {\r
-                    vector.addElement(spd.getPcdDeclarations().getPcdEntryList().get(index).getCName());\r
+                    String name = spd.getPcdDeclarations().getPcdEntryList().get(index).getCName();\r
+                    String guidCName = spd.getPcdDeclarations().getPcdEntryList().get(index).getTokenSpaceGuidCName();\r
+                    String help = spd.getPcdDeclarations().getPcdEntryList().get(index).getHelpText();\r
+                    Vector<String> type = Tools.convertListToVector(spd.getPcdDeclarations().getPcdEntryList()\r
+                                                                       .get(index).getValidUsage());\r
+\r
+                    vector.addPcd(new PcdIdentification(name, guidCName, help, type));\r
                 }\r
             }\r
         }\r
-        Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+        Sort.sortPcds(vector, DataType.SORT_TYPE_ASCENDING);\r
         return vector;\r
     }\r
 \r
@@ -575,7 +584,7 @@ public class WorkspaceTools {
                 // TODO Auto-generated catch block\r
             }\r
         }\r
-        Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+        Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
         return vector;\r
     }\r
 \r
@@ -601,7 +610,7 @@ public class WorkspaceTools {
                 // TODO Auto-generated catch block\r
             }\r
         }\r
-        Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+        Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
         return vector;\r
     }\r
 \r
@@ -627,7 +636,7 @@ public class WorkspaceTools {
                 // TODO Auto-generated catch block\r
             }\r
         }\r
-        Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+        Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
         return vector;\r
     }\r
 \r
@@ -653,21 +662,20 @@ public class WorkspaceTools {
                 // TODO Auto-generated catch block\r
             }\r
         }\r
-        Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+        Sort.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
         return vector;\r
     }\r
 \r
-    public Vector<String> getAllPcdDeclarationsFromWorkspace() {\r
+    public PcdVector getAllPcdDeclarationsFromWorkspace() {\r
         //\r
         // First get all packages\r
         //\r
         this.getAllPackages();\r
 \r
-        Vector<String> vector = new Vector<String>();\r
+        PcdVector vector = new PcdVector();\r
         for (int index = 0; index < this.vPackageList.size(); index++) {\r
             try {\r
-                Vector<String> v = getAllPcdDeclarationsFromPackage(OpenFile.openSpdFile(vPackageList.get(index)\r
-                                                                                                     .getPath()));\r
+                PcdVector v = getAllPcdDeclarationsFromPackage(OpenFile.openSpdFile(vPackageList.get(index).getPath()));\r
                 if (v != null && v.size() > 0) {\r
                     vector.addAll(v);\r
                 }\r
@@ -679,7 +687,7 @@ public class WorkspaceTools {
                 // TODO Auto-generated catch block\r
             }\r
         }\r
-        Tools.sortVectorString(vector, DataType.SORT_TYPE_ASCENDING);\r
+        Sort.sortPcds(vector, DataType.SORT_TYPE_ASCENDING);\r
         return vector;\r
     }\r
 \r