]> gerrit.simantics Code Review - simantics/interop.git/blobdiff - org.simantics.xml.sax.base/src/org/simantics/xml/sax/base/Element.java
XML Schema converter
[simantics/interop.git] / org.simantics.xml.sax.base / src / org / simantics / xml / sax / base / Element.java
diff --git a/org.simantics.xml.sax.base/src/org/simantics/xml/sax/base/Element.java b/org.simantics.xml.sax.base/src/org/simantics/xml/sax/base/Element.java
new file mode 100644 (file)
index 0000000..3aba943
--- /dev/null
@@ -0,0 +1,76 @@
+package org.simantics.xml.sax.base;\r
+\r
+import java.io.Serializable;\r
+import java.util.Collection;\r
+import java.util.HashMap;\r
+import java.util.Map;\r
+\r
+import org.simantics.db.Resource;\r
+import org.xml.sax.Attributes;\r
+\r
+public class Element implements Serializable {\r
+       private static final long serialVersionUID = -5207502156942818875L;\r
+       String uri;\r
+       String localName;\r
+       String qName;\r
+       Map<String,Attribute> attributes = new HashMap<String, Attribute>();\r
+       \r
+       XMLElementParser parser;\r
+       \r
+       public Element(String uri, String localName, String qName, Attributes attributes) {\r
+               this.uri = uri;\r
+               this.localName = localName;\r
+               this.qName = qName;\r
+               for (int i = 0; i < attributes.getLength(); i++) {\r
+                       this.attributes.put(attributes.getLocalName(i),new Attribute(attributes.getLocalName(i),attributes.getQName(i),attributes.getURI(i),attributes.getValue(i)));\r
+               }\r
+       }\r
+       \r
+       public Element(String uri, String localName, String qName, Collection<Attribute> attributes) {\r
+               this.uri = uri;\r
+               this.localName = localName;\r
+               this.qName = qName;\r
+               for (Attribute a : attributes) {\r
+                       this.attributes.put(a.localName,new Attribute(a.localName,a.qName,a.uri,a.value));\r
+               }\r
+       }\r
+\r
+       public String getUri() {\r
+               return uri;\r
+       }\r
+\r
+       public String getLocalName() {\r
+               return localName;\r
+       }\r
+\r
+       public String getQName() {\r
+               return qName;\r
+       }\r
+\r
+       public Collection<Attribute> getAttributes() {\r
+               return attributes.values();\r
+       }\r
+       \r
+       public Attribute getAttribute(String name) {\r
+               return attributes.get(name);\r
+       }\r
+\r
+       private Resource data;\r
+       \r
+       public void setData(Resource data) {\r
+               this.data = data;\r
+       }\r
+       \r
+       public Resource getData() {\r
+               return data;\r
+       }\r
+       \r
+       public void setParser(XMLElementParser parser) {\r
+               this.parser = parser;\r
+       }\r
+       \r
+       public XMLElementParser getParser() {\r
+               return parser;\r
+       }\r
+\r
+}
\ No newline at end of file