Mercurial > dive4elements > river
view flys-artifacts/src/main/java/de/intevation/flys/themes/DefaultThemeField.java @ 2058:f97cf2e350c9
Some refactoring done: all Sections subclass TypeSection now to be able to use the convinience methods for string, integer, double and boolean attributes.
flys-artifacts/trunk@3550 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Tue, 27 Dec 2011 11:37:23 +0000 |
parents | b36fd8f21e6a |
children | e32b822f3cfa |
line wrap: on
line source
package de.intevation.flys.themes; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import org.w3c.dom.Document; import org.w3c.dom.Element; import de.intevation.artifacts.common.utils.XMLUtils; import de.intevation.artifacts.common.utils.XMLUtils.ElementCreator; /** * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> */ public class DefaultThemeField implements ThemeField { protected String name; protected Map<String, Object> attr; public DefaultThemeField(String name) { this.name = name; this.attr = new HashMap<String, Object>(); } public String getName() { return name; } public String getType() { return (String) getAttribute("type"); } public Object getValue() { return getAttribute("value"); } public void setValue(Object value) { setAttribute("value", value); } public Object getAttribute(String name) { return attr.get(name); } public void setAttribute(String name, Object value) { if (name == null || value == null) { return; } attr.put(name, value); } public Document toXML() { Document doc = XMLUtils.newDocument(); ElementCreator cr = new ElementCreator(doc, null, null); Element field = cr.create("field"); Iterator<String> iter = attr.keySet().iterator(); while (iter.hasNext()) { String name = iter.next(); String value = (String) getAttribute(name); cr.addAttr(field, name, value); } doc.appendChild(field); return doc; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :