Search in sources :

Example 6 with Module

use of com.ibm.uma.om.Module in project openj9 by eclipse.

the class ModuleParser method parse.

public static Module parse(Document moduleXml, String modulePath) throws UMAException {
    Module module = new Module(modulePath);
    // Initialize the Module based on the XML document
    Element elem = moduleXml.getDocumentElement();
    NodeList nodeList = elem.getChildNodes();
    for (int i = 0; i < nodeList.getLength(); i++) {
        Node node = nodeList.item(i);
        String nodeName = node.getLocalName();
        if (nodeName == null)
            continue;
        if (nodeName.equalsIgnoreCase("artifact")) {
            Artifact artifact = ArtifactParser.parse(node, module);
            module.addArtifact(artifact);
            UMA.getUma().addArtifact(artifact);
        } else if (nodeName.equalsIgnoreCase("exports")) {
            Exports exps = ExportsParser.parse(node, module.getContainingFile());
            module.addExports(exps.getGroup(), exps);
        } else if (nodeName.equalsIgnoreCase("objects")) {
            Objects objs = ObjectsParser.parse(node, module.getContainingFile());
            module.addObjects(objs.getGroup(), objs);
        } else if (nodeName.equalsIgnoreCase("exportlists")) {
            Vector<Exports> exports = ExportlistsParser.parse(node, module.getContainingFile());
            for (Exports exps : exports) {
                module.addExports(exps.getGroup(), exps);
            }
        } else if (nodeName.equalsIgnoreCase("objectlists")) {
            Vector<Objects> objects = ObjectlistsParser.parse(node, module.getContainingFile());
            for (Objects objs : objects) {
                module.addObjects(objs.getGroup(), objs);
            }
        } else if (nodeName.equalsIgnoreCase("flaglists")) {
            Vector<Flags> flags = FlaglistsParser.parse(node, module.getContainingFile());
            for (Flags f : flags) {
                // System.out.println("Flag: " + (f == null ? "null" : f.getGroup()));
                module.addFlags(f.getGroup(), f);
            }
        } else if (nodeName.equalsIgnoreCase("flags")) {
            Flags flags = FlagsParser.parse(node, module.getContainingFile());
            // System.out.println("GROUP: " + flags.getGroup());
            for (Flag f : flags.getFlags()) {
            /*
					if (f != null) {
						System.out.println("FLAG: "+ f.getName());
					} else {
						System.out.println("NULL FLAG");
					}
					*/
            }
            module.addFlags(flags.getGroup(), flags);
        }
    }
    Parser.populatePredicateList(nodeList, module);
    return module;
}
Also used : Element(org.w3c.dom.Element) NodeList(org.w3c.dom.NodeList) Node(org.w3c.dom.Node) Flags(com.ibm.uma.om.Flags) Flag(com.ibm.uma.om.Flag) Artifact(com.ibm.uma.om.Artifact) Exports(com.ibm.uma.om.Exports) Objects(com.ibm.uma.om.Objects) Module(com.ibm.uma.om.Module) Vector(java.util.Vector)

Aggregations

Module (com.ibm.uma.om.Module)6 Artifact (com.ibm.uma.om.Artifact)3 FileAssistant (com.ibm.uma.util.FileAssistant)3 File (java.io.File)3 Vector (java.util.Vector)3 SubdirArtifact (com.ibm.uma.om.SubdirArtifact)2 IOException (java.io.IOException)2 UMAException (com.ibm.uma.UMAException)1 Command (com.ibm.uma.om.Command)1 Exports (com.ibm.uma.om.Exports)1 Flag (com.ibm.uma.om.Flag)1 Flags (com.ibm.uma.om.Flags)1 Objects (com.ibm.uma.om.Objects)1 Parser (com.ibm.uma.om.parser.Parser)1 Template (freemarker.template.Template)1 TemplateException (freemarker.template.TemplateException)1 TemplateModel (freemarker.template.TemplateModel)1 StringWriter (java.io.StringWriter)1 HashMap (java.util.HashMap)1 Hashtable (java.util.Hashtable)1