-package mir.util.xml;\r
-\r
-/**\r
- * Class to encapsulate an XML-style name (either for tagnames,\r
- * or attribute names).\r
- *\r
- * <p>\r
- * Usage requirements:\r
- * <ul>\r
- * <li> Namespace aware parsers must supply a local name\r
- * and a namespace URI\r
- * <li> Non-namespace aware parsers should supply a local name,\r
- * and, if present and applicable, also a prefix\r
- * </ul>\r
- */\r
-\r
-public class XMLName {\r
- private String namespaceURI;\r
- private String localName;\r
- private String prefix;\r
-\r
- public XMLName(String aLocalName) {\r
- this(null, null, aLocalName);\r
- }\r
-\r
- public XMLName(String aNamespaceURI, String aPrefix, String aLocalName) {\r
- localName="";\r
- prefix="";\r
- namespaceURI="";\r
-\r
- if (aLocalName!=null)\r
- localName = aLocalName;\r
- if (aPrefix!=null)\r
- prefix = aPrefix;\r
- if (aNamespaceURI!=null)\r
- namespaceURI = aNamespaceURI;\r
- }\r
-\r
- public XMLName(String aNamespaceURI, String aLocalName) {\r
- this (aNamespaceURI, null, aLocalName);\r
- }\r
-\r
- /**\r
- * Returns the namespace URI if available\r
- */\r
- public String getNamespaceURI() {\r
- return namespaceURI;\r
- }\r
-\r
- /**\r
- * Returns the name of the tag, stripped from prefix\r
- */\r
- public String getLocalName() {\r
- return localName;\r
- }\r
-\r
- /**\r
- * Returns the prefix of the tag, if present\r
- */\r
- public String getPrefix() {\r
- return prefix;\r
- }\r
-\r
- public int hashCode() {\r
- if (namespaceURI == null)\r
- return localName.hashCode() + 3*prefix.hashCode();\r
- else\r
- return localName.hashCode() + 3*namespaceURI.hashCode();\r
- }\r
-\r
- public String toString() {\r
- return ((namespaceURI.length()>0)? "["+namespaceURI+"]":"")+((prefix.length()>0)?prefix+":":"")+localName;\r
- }\r
-\r
- public boolean equals(Object anObject) {\r
- if (anObject instanceof mir.util.xml.XMLName) {\r
- if (namespaceURI==null)\r
- return (((mir.util.xml.XMLName) anObject).namespaceURI == null) &&\r
- prefix.equals(((mir.util.xml.XMLName) anObject).prefix) &&\r
- localName.equals(((mir.util.xml.XMLName) anObject).localName);\r
- else\r
- return namespaceURI.equals(((mir.util.xml.XMLName) anObject).namespaceURI) &&\r
- localName.equals(((mir.util.xml.XMLName) anObject).localName);\r
- }\r
- else\r
- return false;\r
- }\r
-}\r
+package mir.util.xml;
+
+/**
+ * Class to encapsulate an XML-style name (either for tagnames,
+ * or attribute names).
+ *
+ * <p>
+ * Usage requirements:
+ * <ul>
+ * <li> Namespace aware parsers must supply a local name
+ * and a namespace URI
+ * <li> Non-namespace aware parsers should supply a local name,
+ * and, if present and applicable, also a prefix
+ * </ul>
+ */
+
+public class XMLName {
+ private String namespaceURI;
+ private String localName;
+ private String prefix;
+
+ public XMLName(String aLocalName) {
+ this(null, null, aLocalName);
+ }
+
+ public XMLName(String aNamespaceURI, String aPrefix, String aLocalName) {
+ localName="";
+ prefix="";
+ namespaceURI="";
+
+ if (aLocalName!=null)
+ localName = aLocalName;
+ if (aPrefix!=null)
+ prefix = aPrefix;
+ if (aNamespaceURI!=null)
+ namespaceURI = aNamespaceURI;
+ }
+
+ public XMLName(String aNamespaceURI, String aLocalName) {
+ this (aNamespaceURI, null, aLocalName);
+ }
+
+ /**
+ * Returns the namespace URI if available
+ */
+ public String getNamespaceURI() {
+ return namespaceURI;
+ }
+
+ /**
+ * Returns the name of the tag, stripped from prefix
+ */
+ public String getLocalName() {
+ return localName;
+ }
+
+ /**
+ * Returns the prefix of the tag, if present
+ */
+ public String getPrefix() {
+ return prefix;
+ }
+
+ public int hashCode() {
+ if (namespaceURI == null)
+ return localName.hashCode() + 3*prefix.hashCode();
+ return localName.hashCode() + 3*namespaceURI.hashCode();
+ }
+
+ public String toString() {
+ return ((namespaceURI.length()>0)? "["+namespaceURI+"]":"")+((prefix.length()>0)?prefix+":":"")+localName;
+ }
+
+ public boolean equals(Object anObject) {
+ if (anObject instanceof mir.util.xml.XMLName) {
+ if (namespaceURI==null)
+ return (((mir.util.xml.XMLName) anObject).namespaceURI == null) &&
+ prefix.equals(((mir.util.xml.XMLName) anObject).prefix) &&
+ localName.equals(((mir.util.xml.XMLName) anObject).localName);
+ else
+ return namespaceURI.equals(((mir.util.xml.XMLName) anObject).namespaceURI) &&
+ localName.equals(((mir.util.xml.XMLName) anObject).localName);
+ }
+ return false;
+ }
+}