package org.simantics.xml.sax.base; import java.io.Serializable; import java.util.Collection; import java.util.HashMap; import java.util.Map; import org.simantics.db.Resource; import org.xml.sax.Attributes; public class Element implements Serializable { private static final long serialVersionUID = -5207502156942818875L; String uri; String localName; String qName; Map attributes = new HashMap(); XMLElementParser elementParser; XMLParser xmlParser; public Element(String uri, String localName, String qName, Attributes attributes) { this.uri = uri; this.localName = localName; this.qName = qName; for (int i = 0; i < attributes.getLength(); i++) { this.attributes.put(attributes.getLocalName(i),new Attribute(attributes.getLocalName(i),attributes.getQName(i),attributes.getURI(i),attributes.getValue(i))); } } public Element(String uri, String localName, String qName, Collection attributes) { this.uri = uri; this.localName = localName; this.qName = qName; for (Attribute a : attributes) { this.attributes.put(a.localName,new Attribute(a.localName,a.qName,a.uri,a.value)); } } public String getUri() { return uri; } public String getLocalName() { return localName; } public String getQName() { return qName; } public Collection getAttributes() { return attributes.values(); } public Attribute getAttribute(String name) { return attributes.get(name); } private Resource data; public void setData(Resource data) { this.data = data; } public Resource getData() { return data; } public void setElementParser(XMLElementParser parser) { this.elementParser = parser; } public XMLElementParser getElementParser() { return elementParser; } public void setXMLParser(XMLParser parser) { this.xmlParser = parser; } public XMLParser getXMLParser() { return xmlParser; } }