import org.tianocore.SourceFilesDocument;\r
import org.tianocore.SystemTablesDocument;\r
import org.tianocore.VariablesDocument;\r
+import org.tianocore.PackageDependenciesDocument;\r
\r
/**\r
This class is used to override surface area information. For example, MBD can\r
/// list of top elements of surface area\r
///\r
public static String[] topElements = { "LibraryClassDefinitions",\r
- "SourceFiles", "Includes", "Libraries", "Protocols",\r
+ "SourceFiles", "Includes", "PackageDependencies", "Libraries", "Protocols",\r
"Events", "Hobs", "PPIs", "Variables", "BootModes",\r
"SystemTables", "DataHubs", "Formsets", "Guids", "Externs",\r
"PcdCoded", "BuildOptions" };\r
newMap.put("Includes", ((IncludesDocument) map.get("Includes"))\r
.getIncludes());\r
}\r
+ if (map.get("PackageDependencies") != null) {\r
+ newMap.put("PackageDependencies", ((PackageDependenciesDocument) map.get("PackageDependencies"))\r
+ .getPackageDependencies());\r
+ }\r
if (map.get("Libraries") != null) {\r
newMap.put("Libraries", ((LibrariesDocument) map.get("Libraries"))\r
.getLibraries());\r
result.put("MsaHeader", override(l.get("MsaHeader"), null));\r
result.put("MsaLibHeader", override(l.get("MsaLibHeader"), null));\r
for (int i = 0; i < topElements.length; i++) {\r
- result.put(topElements[i], override(h.get(topElements[i]), l\r
- .get(topElements[i])));\r
+ if (h != null) {\r
+ result.put(topElements[i], override(h.get(topElements[i]), l.get(topElements[i])));\r
+ } else {\r
+ result.put(topElements[i], override(l.get(topElements[i]), null));\r
+ }\r
}\r
return result;\r
}\r
}\r
XmlCursor hc = h.newCursor();\r
if (h.getClass() != l.getClass()) {\r
- System.out\r
- .println("Error: Two XmlObject does not with compliant format.");\r
+ System.out.println("Error: Two XmlObject does not with compliant format.");\r
return null;\r
}\r
if (!hc.toFirstChild()) {\r