1 10 package org.mmbase.util.xml; 11 12 import java.util.*; 13 import org.mmbase.module.Module; 14 import org.mmbase.util.XMLEntityResolver; 15 16 import org.w3c.dom.*; 17 18 22 public class ModuleWriter extends DocumentWriter { 23 24 27 protected Module module; 28 29 34 public ModuleWriter(Module module) throws DOMException { 35 super("module", ModuleReader.PUBLIC_ID_MODULE, 36 XMLEntityResolver.DOMAIN + XMLEntityResolver.DTD_SUBPATH + ModuleReader.DTD_MODULE); 37 this.module = module; 38 getMessageRetriever("org.mmbase.util.xml.resources.modulewriter"); 39 } 40 41 45 protected void generate() throws DOMException { 46 Element root = document.getDocumentElement(); 47 addComment("module.configuration",module.getName(),module.getModuleInfo(),root); 48 root.setAttribute("maintainer",module.getMaintainer()); 49 root.setAttribute("version",""+module.getVersion()); 50 addComment("module.status",root); 52 addContentElement("status","active",root); 53 addComment("module.classfile",root); 55 addContentElement("classfile",module.getClass().getName(),root); 56 Element properties=document.createElement("properties"); 58 addComment("module.properties",root); 59 root.appendChild(properties); 60 Map datamap=module.getInitParameters(); 62 for (Iterator i=datamap.entrySet().iterator(); i.hasNext();) { 63 Map.Entry entry = (Map.Entry) i.next(); 64 String propname = (String ) entry.getKey(); 65 String propvalue = (String ) entry.getValue(); 66 Element elm=addContentElement("property",propvalue,properties); 67 elm.setAttribute("name",propname); 68 } 69 } 70 } 71 | Popular Tags |