Add Package-Guid Map.
[mirror_edk2.git] / Tools / Java / Source / MigrationTools / org / tianocore / migration / MsaWriter.java
index 3db25079057b4d98851bbd705448a9ce6693b4fd..a8e26c573f590814dbfd06a0639dd4e768ddcf76 100644 (file)
@@ -70,11 +70,20 @@ public class MsaWriter {
             filename.setSupArchList(arch);\r
         }\r
     }\r
             filename.setSupArchList(arch);\r
         }\r
     }\r
-    \r
+    private void addWrapper() {\r
+        XmlCursor cursor = msa.newCursor();\r
+        String uri = "http://www.TianoCore.org/2006/Edk2.0";\r
+        cursor.push();\r
+        cursor.toNextToken();\r
+        cursor.insertNamespace("", uri);\r
+        cursor.insertNamespace("xsi", "http://www.w3.org/2001/XMLSchema-instance");\r
+        cursor.pop();\r
+        msa = (ModuleSurfaceAreaDocument.ModuleSurfaceArea)cursor.getObject();\r
+    }\r
     private ModuleSurfaceAreaDocument fulfillMsadoc() throws Exception {\r
         Iterator<String> it;\r
         String temp;\r
     private ModuleSurfaceAreaDocument fulfillMsadoc() throws Exception {\r
         Iterator<String> it;\r
         String temp;\r
-        \r
+       \r
         if (mi.modulename != null) {\r
             msaheader.setModuleName(mi.modulename);\r
         } else {\r
         if (mi.modulename != null) {\r
             msaheader.setModuleName(mi.modulename);\r
         } else {\r
@@ -91,18 +100,16 @@ public class MsaWriter {
             msaheader.setModuleType(ModuleTypeDef.Enum.forString(mi.moduletype = Query("Guid Value Not Found!  Please Input Guid Value")));\r
         }\r
 \r
             msaheader.setModuleType(ModuleTypeDef.Enum.forString(mi.moduletype = Query("Guid Value Not Found!  Please Input Guid Value")));\r
         }\r
 \r
-        msaheader.setCopyright("Copyright (c) 2006, Intel Corporation");\r
+        msaheader.setCopyright("Copyright (c) 2006, Intel Corporation. All right reserved.");\r
         msaheader.setVersion("1.0");\r
         msaheader.setAbstract("Component name for module " + mi.modulename);\r
         msaheader.setDescription("FIX ME!");\r
         msaheader.setVersion("1.0");\r
         msaheader.setAbstract("Component name for module " + mi.modulename);\r
         msaheader.setDescription("FIX ME!");\r
-        msaheader.addNewLicense().setStringValue("All rights reserved.\n" +\r
-                "      This software and associated documentation (if any) is furnished\n" +\r
-                "      under a license and may only be used or copied in accordance\n" +\r
-                "      with the terms of the license. Except as permitted by such\n" +\r
-                "      license, no part of this software or documentation may be\n" +\r
-                "      reproduced, stored in a retrieval system, or transmitted in any\n" +\r
-                "      form or by any means without the express written consent of\n" +\r
-                "      Intel Corporation.");\r
+\r
+        if (mi.license == null) {\r
+            mi.license = "FIX ME!";\r
+            MigrationTool.ui.println ("Fail to extract license info in inf file"); \r
+        }\r
+        msaheader.addNewLicense().setStringValue(mi.license);\r
         msaheader.setSpecification("FRAMEWORK_BUILD_PACKAGING_SPECIFICATION   0x00000052");\r
         \r
         List<Enum> arch = new ArrayList<Enum>();\r
         msaheader.setSpecification("FRAMEWORK_BUILD_PACKAGING_SPECIFICATION   0x00000052");\r
         \r
         List<Enum> arch = new ArrayList<Enum>();\r
@@ -113,9 +120,13 @@ public class MsaWriter {
         md.setSupportedArchitectures(arch);\r
         md.setBinaryModule(false);\r
         md.setOutputFileBasename(mi.modulename);\r
         md.setSupportedArchitectures(arch);\r
         md.setBinaryModule(false);\r
         md.setOutputFileBasename(mi.modulename);\r
-        \r
-        pd.addNewPackage().setPackageGuid("5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec");\r
-        pd.addNewPackage().setPackageGuid("68169ab0-d41b-4009-9060-292c253ac43d");\r
+        //\r
+        // For now, simply add all package guids in the database. \r
+        // \r
+        it = MigrationTool.db.dumpAllPkgGuid();\r
+        while (it.hasNext()) {\r
+            pd.addNewPackage().setPackageGuid(it.next());\r
+        }\r
         externs.addNewSpecification().setStringValue("EFI_SPECIFICATION_VERSION 0x00020000");\r
         externs.addNewSpecification().setStringValue("EDK_RELEASE_VERSION 0x00020000");\r
         if (mi.entrypoint != null) {\r
         externs.addNewSpecification().setStringValue("EFI_SPECIFICATION_VERSION 0x00020000");\r
         externs.addNewSpecification().setStringValue("EDK_RELEASE_VERSION 0x00020000");\r
         if (mi.entrypoint != null) {\r
@@ -173,7 +184,8 @@ public class MsaWriter {
                 lc.setUsage(UsageTypes.ALWAYS_CONSUMED);\r
             }\r
         }\r
                 lc.setUsage(UsageTypes.ALWAYS_CONSUMED);\r
             }\r
         }\r
-        \r
+        addWrapper();\r
+        msadoc.setModuleSurfaceArea(msa);\r
         return msadoc;\r
     }\r
     \r
         return msadoc;\r
     }\r
     \r
@@ -184,7 +196,7 @@ public class MsaWriter {
         options.setSavePrettyPrint();\r
         options.setSavePrettyPrintIndent(2);\r
         options.setUseDefaultNamespace();\r
         options.setSavePrettyPrint();\r
         options.setSavePrettyPrintIndent(2);\r
         options.setUseDefaultNamespace();\r
-        \r
+\r
         BufferedWriter bw = new BufferedWriter(new FileWriter(MigrationTool.ModuleInfoMap.get(mi) + File.separator + "Migration_" + mi.modulename + File.separator + mi.modulename + ".msa"));\r
         fulfillMsadoc().save(bw, options);\r
         //MsaTreeEditor.init(mi, ui, msadoc);\r
         BufferedWriter bw = new BufferedWriter(new FileWriter(MigrationTool.ModuleInfoMap.get(mi) + File.separator + "Migration_" + mi.modulename + File.separator + mi.modulename + ".msa"));\r
         fulfillMsadoc().save(bw, options);\r
         //MsaTreeEditor.init(mi, ui, msadoc);\r