]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Source/MigrationTools/org/tianocore/migration/Database.java
singleton of Database & FirstPanel
[mirror_edk2.git] / Tools / Source / MigrationTools / org / tianocore / migration / Database.java
index 8b088c9cbb2135cad003c583c4d2b2f4d29e33cd..c986d3b59bb8d853a9dfb571e6ccd689ca0702a4 100644 (file)
@@ -17,15 +17,21 @@ import java.util.*;
 import java.util.regex.*;\r
 \r
 public final class Database {\r
-       Database(String path) throws Exception {\r
+       private static final Database INSTANCE = Database.init();\r
+       \r
+       Database(String path) {\r
                DatabasePath = path;\r
-               \r
-               importDBLib("Library.csv");\r
-               importDBGuid("Guid.csv", "Guid");\r
-               importDBGuid("Ppi.csv", "Ppi");\r
-               importDBGuid("Protocol.csv", "Protocol");\r
-               importDBMacro("Macro.csv");\r
-               importListR8Only();\r
+\r
+               try {\r
+                       importDBLib("Library.csv");\r
+                       importDBGuid("Guid.csv", "Guid");\r
+                       importDBGuid("Ppi.csv", "Ppi");\r
+                       importDBGuid("Protocol.csv", "Protocol");\r
+                       importDBMacro("Macro.csv");\r
+                       importListR8Only();\r
+               } catch (Exception e) {\r
+                       System.out.println(e.getMessage());\r
+               }\r
        }\r
        \r
        public String DatabasePath;\r
@@ -165,12 +171,16 @@ public final class Database {
        //-------------------------------------has------------------------------------------//\r
        \r
        //-------------------------------------init------------------------------------------//\r
-       \r
-       public static Database init() throws Exception {\r
+\r
+       private static final Database init() {\r
                if (System.getenv("WORKSPACE") == null) {\r
                        return new Database("C:" + File.separator + "tianocore" + File.separator + "edk2" + File.separator + "Tools" + File.separator + "Conf" + File.separator + "Migration");\r
                } else {\r
                        return new Database(System.getenv("WORKSPACE") + File.separator + "Tools" + File.separator + "Conf" + File.separator + "Migration");\r
                }\r
        }\r
+       \r
+       public static final Database getInstance() {\r
+               return INSTANCE;\r
+       }\r
 }\r