]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Source/ModuleEditor/src/org/tianocore/packaging/workspace/common/Workspace.java
1. Modify start script to
[mirror_edk2.git] / Tools / Source / ModuleEditor / src / org / tianocore / packaging / workspace / common / Workspace.java
index 1d989098329b5b4e098c578e6a56edc2d6267312..fd27f182a6576fac6f271a90139864ba4e698819 100644 (file)
@@ -16,6 +16,7 @@
 package org.tianocore.packaging.workspace.common;\r
 \r
 import java.io.File;\r
+import java.util.Vector;\r
 \r
 import org.apache.xmlbeans.XmlException;\r
 import org.apache.xmlbeans.XmlObject;\r
@@ -36,6 +37,8 @@ public class Workspace {
     private String currentWorkspace = null;\r
 \r
     private FrameworkDatabaseDocument xmlFrameworkDbDoc = null;\r
+    \r
+    //private PackageDocument xmlPackage = null;\r
 \r
     private String strWorkspaceDatabaseFile = System.getProperty("file.separator") + "Tools"\r
                                               + System.getProperty("file.separator") + "Conf"\r
@@ -113,8 +116,9 @@ public class Workspace {
      **/\r
     private void openFrameworkDb() {\r
         String strFrameworkDbFilePath = this.getCurrentWorkspace() + strWorkspaceDatabaseFile;\r
+        File db = new File(strFrameworkDbFilePath);\r
         try {\r
-            xmlFrameworkDbDoc = (FrameworkDatabaseDocument) XmlObject.Factory.parse(strFrameworkDbFilePath);\r
+            xmlFrameworkDbDoc = (FrameworkDatabaseDocument) XmlObject.Factory.parse(db);\r
         } catch (XmlException e) {\r
             Log.err("Open Framework Database " + strFrameworkDbFilePath, e.getMessage());\r
             return;\r
@@ -144,4 +148,22 @@ public class Workspace {
     public void setXmlFrameworkDbDoc(FrameworkDatabaseDocument xmlFrameworkDbDoc) {\r
         this.xmlFrameworkDbDoc = xmlFrameworkDbDoc;\r
     }\r
+\r
+    /**\r
+     Get all package name form the FrameworkDatabase.db file\r
+     \r
+     @return vPackageName A vector includes all package names\r
+     \r
+     **/\r
+    public Vector getAllPackageName() {\r
+        Vector<String> vPackageName = new Vector<String>();\r
+        openFrameworkDb();\r
+\r
+        for (int index = 0; index < xmlFrameworkDbDoc.getFrameworkDatabase().getPackageList().sizeOfPackageArray(); index++) {\r
+            vPackageName.addElement(xmlFrameworkDbDoc.getFrameworkDatabase().getPackageList().getPackageArray(index)\r
+                                                     .getPackageNameArray(0).getStringValue());\r
+        }\r
+\r
+        return vPackageName;\r
+    }\r
 }\r