summaryrefslogtreecommitdiff
path: root/Tools/Java/Source/GenBuild/org/tianocore/build/fpd/PlatformBuildFileGenerator.java
diff options
context:
space:
mode:
Diffstat (limited to 'Tools/Java/Source/GenBuild/org/tianocore/build/fpd/PlatformBuildFileGenerator.java')
-rw-r--r--Tools/Java/Source/GenBuild/org/tianocore/build/fpd/PlatformBuildFileGenerator.java708
1 files changed, 0 insertions, 708 deletions
diff --git a/Tools/Java/Source/GenBuild/org/tianocore/build/fpd/PlatformBuildFileGenerator.java b/Tools/Java/Source/GenBuild/org/tianocore/build/fpd/PlatformBuildFileGenerator.java
deleted file mode 100644
index ad2ee2cdd2..0000000000
--- a/Tools/Java/Source/GenBuild/org/tianocore/build/fpd/PlatformBuildFileGenerator.java
+++ /dev/null
@@ -1,708 +0,0 @@
-/** @file
-
- Copyright (c) 2006, Intel Corporation
- All rights reserved. This program and the accompanying materials
- are licensed and made available under the terms and conditions of the BSD License
- which accompanies this distribution. The full text of the license may be found at
- http://opensource.org/licenses/bsd-license.php
-
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
- **/
-package org.tianocore.build.fpd;
-
-import java.io.File;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.transform.OutputKeys;
-import javax.xml.transform.Result;
-import javax.xml.transform.Source;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.Project;
-import org.tianocore.build.global.GlobalData;
-import org.tianocore.build.global.SurfaceAreaQuery;
-import org.tianocore.build.id.FpdModuleIdentification;
-import org.tianocore.build.id.ModuleIdentification;
-import org.w3c.dom.Comment;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- class PlatformBuildFileGenerator is used to generate ${PLATFORM}_build.xml file.
-
- @since GenBuild 1.0
-**/
-public class PlatformBuildFileGenerator {
-
- ///
- /// Mapping from modules identification to out put file name
- ///
- private Map<FpdModuleIdentification, String> outfiles;
-
- ///
- /// Mapping from FV name to its modules
- ///
- private Map<String, Set<FpdModuleIdentification>> fvs = new HashMap<String, Set<FpdModuleIdentification>>();
-
-
- private boolean isUnified = true;
-
- private SurfaceAreaQuery saq = null;
-
- private File platformBuildFile = null;
-
- private Map<String, String> aprioriType = null;
-
- private Project project;
-
- private String info = "DO NOT EDIT \n"
- + "This file is auto-generated by the build utility\n"
- + "\n"
- + "Abstract:\n"
- + "Auto-generated ANT build file for building EFI Modules and Platforms\n";
-
- public PlatformBuildFileGenerator(Project project, Map<FpdModuleIdentification, String> outfiles, Map<String, Set<FpdModuleIdentification>> fvs, boolean isUnified, SurfaceAreaQuery saq, String platformBuildFile, Map<String, String> aprioriType){
- this.project = project;
- this.outfiles = outfiles;
- this.isUnified = isUnified;
- this.fvs = fvs;
- this.saq = saq;
- this.platformBuildFile = new File(platformBuildFile);
- this.aprioriType = aprioriType;
- }
-
- /**
- Generate build.out.xml file.
-
- @throws BuildException
- build.out.xml XML document create error
- **/
- public void genBuildFile() throws BuildException {
- DocumentBuilderFactory domfac = DocumentBuilderFactory.newInstance();
- try {
- DocumentBuilder dombuilder = domfac.newDocumentBuilder();
- Document document = dombuilder.newDocument();
- Comment rootComment = document.createComment(info);
- //
- // create root element and its attributes
- //
- Element root = document.createElement("project");
- root.setAttribute("name", project.getProperty("PLATFORM"));
- root.setAttribute("default", "all");
- root.setAttribute("basedir", ".");
-
- //
- // element for External ANT tasks
- //
- root.appendChild(document.createComment("Apply external ANT tasks"));
- Element ele = document.createElement("taskdef");
- ele.setAttribute("resource", "GenBuild.tasks");
- root.appendChild(ele);
-
- ele = document.createElement("taskdef");
- ele.setAttribute("resource", "frameworktasks.tasks");
- root.appendChild(ele);
-
- ele = document.createElement("taskdef");
- ele.setAttribute("resource", "net/sf/antcontrib/antlib.xml");
- root.appendChild(ele);
-
- ele = document.createElement("property");
- ele.setAttribute("environment", "env");
- root.appendChild(ele);
-
- //
- // Default Target
- //
- root.appendChild(document.createComment("Default target"));
- ele = document.createElement("target");
- ele.setAttribute("name", "all");
- ele.setAttribute("depends", "prebuild, modules, fvs, postbuild");
- root.appendChild(ele);
-
- //
- // Modules and Fvs Target
- //
- applyModules(document, root);
-
- applyFvs(document, root);
-
- //
- // Clean Target
- //
- applyClean(document, root);
-
- //
- // Deep Clean Target
- //
- applyCleanall(document, root);
-
- //
- // User Extension pre build
- //
- applyUserExtensionsPreBuild(document, root);
-
- //
- // User Extension Post build
- //
- applyUserExtensionsPostBuild(document, root);
- applyUserExtensions(document, root);
-
- document.appendChild(rootComment);
- document.appendChild(root);
- //
- // Prepare the DOM document for writing
- //
- Source source = new DOMSource(document);
- //
- // generate all directory path
- //
- (new File(platformBuildFile.getParent())).mkdirs();
- Result result = new StreamResult(platformBuildFile);
- //
- // Write the DOM document to the file
- //
- Transformer xformer = TransformerFactory.newInstance().newTransformer();
- xformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");
- xformer.setOutputProperty(OutputKeys.INDENT, "yes");
- xformer.transform(source, result);
- } catch (Exception ex) {
- throw new BuildException("Generating platform build file [" + platformBuildFile.getPath() + "_build.xml] failed. \n" + ex.getMessage());
- }
- }
-
- /**
- 1. Get All valid Fv Image Names in sequence
- 2. For each FV, get modules by sequences
- 3. Get other modules
-
- @param document XML document
- @param root Node
- **/
- private void applyModules(Document document, Node root) {
- root.appendChild(document.createComment("Modules target"));
- Element ele = document.createElement("target");
- ele.setAttribute("name", "modules");
-
- //
- // Try to build apriori if necessary
- //
- //
- // For every Target and ToolChain
- //
- String[] targetList = GlobalData.getToolChainInfo().getTargets();
- for (int i = 0; i < targetList.length; i++){
- String[] toolchainList = GlobalData.getToolChainInfo().getTagnames();
- for(int j = 0; j < toolchainList.length; j++){
- //
- // Prepare FV_DIR
- //
- String ffsCommonDir = project.getProperty("BUILD_DIR") + File.separatorChar
- + targetList[i] + "_"
- + toolchainList[j];
- File fvDir = new File(ffsCommonDir + File.separatorChar + "FV");
- Element fvEle = document.createElement("var");
- fvEle.setAttribute("name", "FV_DIR");
- fvEle.setAttribute("value", fvDir.getPath().replaceAll("(\\\\)", "/"));
- ele.appendChild(fvEle);
-
- Iterator<String> aprIter = aprioriType.keySet().iterator();
- while (aprIter.hasNext()) {
- String fvName = aprIter.next();
- Element moduleEle = document.createElement("Build_Apriori");
- moduleEle.setAttribute("FILENAME", fvName);
- moduleEle.setAttribute("GUID", aprioriType.get(fvName));
- ele.appendChild(moduleEle);
- }
- }
- }
-
- //
- // Get all valid FV name
- //
- String[] validFv = saq.getFpdValidImageNames();
-
- //
- // For each valid FV, get all modules in sequence
- //
- for (int i = 0; i < validFv.length; i++) {
- if (fvs.containsKey(validFv[i])) {
- Set<FpdModuleIdentification> set = fvs.get(validFv[i]);
- Iterator<FpdModuleIdentification> iter = set.iterator();
- while (iter.hasNext()) {
- FpdModuleIdentification fpdModuleId = iter.next();
- applySingleModule(document, ele, fpdModuleId);
- }
- }
- }
-
- //
- // Get all other modules
- //
- Iterator<String> fvsNameIter = fvs.keySet().iterator();
-
- while (fvsNameIter.hasNext()) {
- String fvName = fvsNameIter.next();
- if (!isContain(validFv, fvName)) {
- Set<FpdModuleIdentification> set = fvs.get(fvName);
- Iterator iter = set.iterator();
- while (iter.hasNext()) {
- FpdModuleIdentification fpdModuleId = (FpdModuleIdentification) iter.next();
- applySingleModule(document, ele, fpdModuleId);
- }
- }
- }
-
- root.appendChild(ele);
- }
-
- private void applySingleModule(Document document, Node root, FpdModuleIdentification fpdModuleId) {
- ModuleIdentification moduleId = fpdModuleId.getModule();
- Element moduleEle = document.createElement("GenBuild");
- moduleEle.setAttribute("type", "build");
- //
- // Inherit Properties.
- //{"ARCH", "PACKAGE", "PACKAGE_GUID", "PACKAGE_VERSION", "MODULE_DIR"}
- //
-
- //
- // ARCH
- //
- Element property = document.createElement("property");
- property.setAttribute("name", "ARCH");
- property.setAttribute("value", fpdModuleId.getArch());
- moduleEle.appendChild(property);
-
- //
- // MODULE_GUID
- //
- property = document.createElement("property");
- property.setAttribute("name", "MODULE_GUID");
- property.setAttribute("value", moduleId.getGuid());
- moduleEle.appendChild(property);
-
- //
- // MODULE_VERSION
- //
- property = document.createElement("property");
- property.setAttribute("name", "MODULE_VERSION");
- property.setAttribute("value", moduleId.getVersion());
- moduleEle.appendChild(property);
-
- //
- // PACKAGE_GUID
- //
- property = document.createElement("property");
- property.setAttribute("name", "PACKAGE_GUID");
- property.setAttribute("value", moduleId.getPackage().getGuid());
- moduleEle.appendChild(property);
-
- //
- // PACKAGE_VERSION
- //
- property = document.createElement("property");
- property.setAttribute("name", "PACKAGE_VERSION");
- property.setAttribute("value", moduleId.getPackage().getVersion());
- moduleEle.appendChild(property);
-
- root.appendChild(moduleEle);
- }
-
- private boolean isContain(String[] list, String item) {
- for (int i = 0; i < list.length; i++) {
- if (list[i].equalsIgnoreCase(item)) {
- return true;
- }
- }
- return false;
- }
-
- private void applyFvs(Document document, Node root) {
- //
- // FVS Target
- //
- root.appendChild(document.createComment("FVs target"));
- Element ele = document.createElement("target");
- ele.setAttribute("name", "fvs");
-
- //
- // For every Target and ToolChain
- //
- String[] targetList = GlobalData.getToolChainInfo().getTargets();
- for (int i = 0; i < targetList.length; i++){
- String[] toolchainList = GlobalData.getToolChainInfo().getTagnames();
- for(int j = 0; j < toolchainList.length; j++){
- String fvOutputDir = project.getProperty("BUILD_DIR") + File.separatorChar
- + targetList[i] + "_"
- + toolchainList[j] + File.separatorChar + "FV";
- String[] validFv = saq.getFpdValidImageNames();
- for (int k = 0; k < validFv.length; k++) {
- String inputFile = fvOutputDir + "" + File.separatorChar + validFv[k].toUpperCase() + ".inf";
- Element fvEle = document.createElement("genfvimage");
- fvEle.setAttribute("infFile", inputFile);
- fvEle.setAttribute("outputDir", fvOutputDir);
- ele.appendChild(fvEle);
- }
- }
- }
- root.appendChild(ele);
- }
-
- private void applyClean(Document document, Node root) {
- //
- // Clean Target
- //
- root.appendChild(document.createComment("Clean target"));
- Element ele = document.createElement("target");
- ele.setAttribute("name", "clean");
-
- if (isUnified) {
- Element cleanEle = document.createElement("delete");
- cleanEle.setAttribute("includeemptydirs", "true");
- Element filesetEle = document.createElement("fileset");
- filesetEle.setAttribute("dir", project.getProperty("BUILD_DIR"));
- filesetEle.setAttribute("includes", "**\\OUTPUT\\**");
- cleanEle.appendChild(filesetEle);
- ele.appendChild(cleanEle);
- } else {
- Set set = outfiles.keySet();
- Iterator iter = set.iterator();
- while (iter.hasNext()) {
- FpdModuleIdentification fpdModuleId = (FpdModuleIdentification) iter.next();
- ModuleIdentification moduleId = fpdModuleId.getModule();
-
- Element ifEle = document.createElement("if");
- Element availableEle = document.createElement("available");
- availableEle.setAttribute("file", moduleId.getMsaFile().getParent() + File.separatorChar
- + "build.xml");
- ifEle.appendChild(availableEle);
- Element elseEle = document.createElement("then");
-
- Element moduleEle = document.createElement("ant");
- moduleEle.setAttribute("antfile", moduleId.getMsaFile().getParent() + File.separatorChar
- + "build.xml");
- moduleEle.setAttribute("target", "clean");
- //
- // Inherit Properties.
- //{"ARCH", "PACKAGE", "PACKAGE_GUID", "PACKAGE_VERSION", "MODULE_DIR"}
- //
-
- //
- // ARCH
- //
- Element property = document.createElement("property");
- property.setAttribute("name", "ARCH");
- property.setAttribute("value", fpdModuleId.getArch());
- moduleEle.appendChild(property);
-
- //
- // PACKAGE
- //
- property = document.createElement("property");
- property.setAttribute("name", "PACKAGE");
- property.setAttribute("value", moduleId.getPackage().getName());
- moduleEle.appendChild(property);
-
- //
- // PACKAGE_GUID
- //
- property = document.createElement("property");
- property.setAttribute("name", "PACKAGE_GUID");
- property.setAttribute("value", moduleId.getPackage().getGuid());
- moduleEle.appendChild(property);
-
- //
- // PACKAGE_VERSION
- //
- property = document.createElement("property");
- property.setAttribute("name", "PACKAGE_VERSION");
- property.setAttribute("value", moduleId.getPackage().getVersion());
- moduleEle.appendChild(property);
-
- //
- // MODULE_DIR
- //
- property = document.createElement("property");
- property.setAttribute("name", "MODULE_DIR");
- property.setAttribute("value", moduleId.getMsaFile().getParent());
- moduleEle.appendChild(property);
- elseEle.appendChild(moduleEle);
- ifEle.appendChild(elseEle);
- ele.appendChild(ifEle);
- }
- }
- root.appendChild(ele);
- }
-
- private void applyCleanall(Document document, Node root) {
- //
- // Deep Clean Target
- //
- root.appendChild(document.createComment("Target: cleanall"));
- Element ele = document.createElement("target");
- ele.setAttribute("name", "cleanall");
-
- if (isUnified) {
- String[] targetList = GlobalData.getToolChainInfo().getTargets();
- for (int i = 0; i < targetList.length; ++i) {
- String[] toolchainList = GlobalData.getToolChainInfo().getTagnames();
- for(int j = 0; j < toolchainList.length; j++) {
- Element cleanAllEle = document.createElement("delete");
- cleanAllEle.setAttribute("dir", project.getProperty("BUILD_DIR") + File.separatorChar + targetList[i] + "_" + toolchainList[j]);
- ele.appendChild(cleanAllEle);
- }
- }
- } else {
- Set set = outfiles.keySet();
- Iterator iter = set.iterator();
- while (iter.hasNext()) {
- FpdModuleIdentification fpdModuleId = (FpdModuleIdentification) iter.next();
- ModuleIdentification moduleId = fpdModuleId.getModule();
-
- Element ifEle = document.createElement("if");
- Element availableEle = document.createElement("available");
- availableEle.setAttribute("file", moduleId.getMsaFile().getParent() + File.separatorChar
- + "build.xml");
- ifEle.appendChild(availableEle);
- Element elseEle = document.createElement("then");
-
- Element moduleEle = document.createElement("ant");
- moduleEle.setAttribute("antfile", moduleId.getMsaFile().getParent() + File.separatorChar
- + "build.xml");
- moduleEle.setAttribute("target", "cleanall");
- //
- // Inherit Properties.
- //{"ARCH", "PACKAGE", "PACKAGE_GUID", "PACKAGE_VERSION", "MODULE_DIR"}
- //
-
- //
- // ARCH
- //
- Element property = document.createElement("property");
- property.setAttribute("name", "ARCH");
- property.setAttribute("value", fpdModuleId.getArch());
- moduleEle.appendChild(property);
-
- //
- // PACKAGE
- //
- property = document.createElement("property");
- property.setAttribute("name", "PACKAGE");
- property.setAttribute("value", moduleId.getPackage().getName());
- moduleEle.appendChild(property);
-
- //
- // PACKAGE_GUID
- //
- property = document.createElement("property");
- property.setAttribute("name", "PACKAGE_GUID");
- property.setAttribute("value", moduleId.getPackage().getGuid());
- moduleEle.appendChild(property);
-
- //
- // PACKAGE_VERSION
- //
- property = document.createElement("property");
- property.setAttribute("name", "PACKAGE_VERSION");
- property.setAttribute("value", moduleId.getPackage().getVersion());
- moduleEle.appendChild(property);
-
- //
- // MODULE_DIR
- //
- property = document.createElement("property");
- property.setAttribute("name", "MODULE_DIR");
- property.setAttribute("value", moduleId.getMsaFile().getParent());
- moduleEle.appendChild(property);
- elseEle.appendChild(moduleEle);
- ifEle.appendChild(elseEle);
- ele.appendChild(ifEle);
- }
- }
- root.appendChild(ele);
- }
-
- private void applyUserExtensionsPreBuild(Document document, Node root) {
- //
- // User Extensions
- //
- root.appendChild(document.createComment("Pre-Build Processing"));
- Element ele = document.createElement("target");
- ele.setAttribute("name", "prebuild");
-
- Node node = saq.getFpdUserExtensionPreBuild();
- if (node != null) {
- //
- // For every Target and ToolChain
- //
- String[] targetList = GlobalData.getToolChainInfo().getTargets();
- for (int i = 0; i < targetList.length; i++){
- String[] toolchainList = GlobalData.getToolChainInfo().getTagnames();
- for(int j = 0; j < toolchainList.length; j++){
- //
- // Prepare FV_DIR
- //
- String ffsCommonDir = project.getProperty("BUILD_DIR") + File.separatorChar
- + targetList[i] + "_"
- + toolchainList[j];
- File fvDir = new File(ffsCommonDir + File.separatorChar + "FV");
- Element fvEle = document.createElement("var");
- fvEle.setAttribute("name", "FV_DIR");
- fvEle.setAttribute("value", fvDir.getPath().replaceAll("(\\\\)", "/"));
- ele.appendChild(fvEle);
-
- Element targetDirEle = document.createElement("var");
- targetDirEle.setAttribute("name", "TARGET_DIR");
- targetDirEle.setAttribute("value", ffsCommonDir.replaceAll("(\\\\)", "/"));
- ele.appendChild(targetDirEle);
-
- NodeList childNodes = node.getChildNodes();
- for (int k = 0; k < childNodes.getLength(); k++) {
- Node childItem = childNodes.item(k);
- if (childItem.getNodeType() == Node.ELEMENT_NODE) {
- ele.appendChild(recursiveNode(childItem, document));
- }
- }
- }
- }
- }
-
- root.appendChild(ele);
- }
-
- private void applyUserExtensionsPostBuild(Document document, Node root) {
- //
- // User Extensions
- //
- root.appendChild(document.createComment("Post-Build Processing"));
- Element ele = document.createElement("target");
- ele.setAttribute("name", "postbuild");
-
- Node node = saq.getFpdUserExtensionPostBuild();
- if (node != null) {
- //
- // For every Target and ToolChain
- //
- String[] targetList = GlobalData.getToolChainInfo().getTargets();
- for (int i = 0; i < targetList.length; i++){
- String[] toolchainList = GlobalData.getToolChainInfo().getTagnames();
- for(int j = 0; j < toolchainList.length; j++){
- //
- // Prepare FV_DIR
- //
- String ffsCommonDir = project.getProperty("BUILD_DIR") + File.separatorChar
- + targetList[i] + "_"
- + toolchainList[j];
- File fvDir = new File(ffsCommonDir + File.separatorChar + "FV");
- Element fvEle = document.createElement("var");
- fvEle.setAttribute("name", "FV_DIR");
- fvEle.setAttribute("value", fvDir.getPath().replaceAll("(\\\\)", "/"));
- ele.appendChild(fvEle);
-
- Element targetDirEle = document.createElement("var");
- targetDirEle.setAttribute("name", "TARGET_DIR");
- targetDirEle.setAttribute("value", ffsCommonDir.replaceAll("(\\\\)", "/"));
- ele.appendChild(targetDirEle);
-
- NodeList childNodes = node.getChildNodes();
- for (int k = 0; k < childNodes.getLength(); k++) {
- Node childItem = childNodes.item(k);
- if (childItem.getNodeType() == Node.ELEMENT_NODE) {
- ele.appendChild(recursiveNode(childItem, document));
- }
- }
-
- }
- }
- }
-
- root.appendChild(ele);
- }
-
- private void applyUserExtensions(Document document, Node root) {
- Node[] nodeList = saq.getFpdUserExtensions();
- for (int nodeIndex = 0; nodeIndex < nodeList.length; ++nodeIndex) {
- Node node = nodeList[nodeIndex];
- //
- // User Extensions
- //
- root.appendChild(document.createComment("User Defined Target"));
- Element ele = document.createElement("target");
- ele.setAttribute("name", node.getAttributes().getNamedItem("Identifier").getNodeValue());
-
- if (node != null) {
- //
- // For every Target and ToolChain
- //
- String[] targetList = GlobalData.getToolChainInfo().getTargets();
- for (int i = 0; i < targetList.length; i++){
- String[] toolchainList = GlobalData.getToolChainInfo().getTagnames();
- for(int j = 0; j < toolchainList.length; j++){
- //
- // Prepare FV_DIR
- //
- String ffsCommonDir = project.getProperty("BUILD_DIR") + File.separatorChar
- + targetList[i] + "_"
- + toolchainList[j];
- File fvDir = new File(ffsCommonDir + File.separatorChar + "FV");
- Element fvEle = document.createElement("var");
- fvEle.setAttribute("name", "FV_DIR");
- fvEle.setAttribute("value", fvDir.getPath().replaceAll("(\\\\)", "/"));
- ele.appendChild(fvEle);
-
- Element targetDirEle = document.createElement("var");
- targetDirEle.setAttribute("name", "TARGET_DIR");
- targetDirEle.setAttribute("value", ffsCommonDir.replaceAll("(\\\\)", "/"));
- ele.appendChild(targetDirEle);
-
- NodeList childNodes = node.getChildNodes();
- for (int k = 0; k < childNodes.getLength(); k++) {
- Node childItem = childNodes.item(k);
- if (childItem.getNodeType() == Node.ELEMENT_NODE) {
- ele.appendChild(recursiveNode(childItem, document));
- }
- }
-
- }
- }
- }
-
- root.appendChild(ele);
- }
- }
-
- private Element recursiveNode(Node node, Document document) {
- Element root = document.createElement(node.getNodeName());
- NamedNodeMap attr = node.getAttributes();
- for (int i = 0; i < attr.getLength(); i++) {
- Node attrItem = attr.item(i);
- root.setAttribute(attrItem.getNodeName(), attrItem.getNodeValue());
- }
- NodeList childNodes = node.getChildNodes();
- for (int i = 0; i < childNodes.getLength(); i++) {
- Node childItem = childNodes.item(i);
- if (childItem.getNodeType() == Node.ELEMENT_NODE) {
- root.appendChild(recursiveNode(childItem, document));
- }
- else if (childItem.getNodeType() == Node.TEXT_NODE){
- if (!childItem.getNodeValue().trim().equalsIgnoreCase("")) {
- root.setTextContent(childItem.getNodeValue());
- }
- }
- }
- return root;
- }
-}