]> git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.util/src/org/argeo/util/naming/QNamed.java
bcbb4742a17881aa0f9415a6f87080b98424aec3
[lgpl/argeo-commons.git] / org.argeo.util / src / org / argeo / util / naming / QNamed.java
1 package org.argeo.util.naming;
2
3 import javax.xml.namespace.QName;
4
5 /** A (possibly) qualified name. To be used in enums. */
6 @Deprecated
7 public interface QNamed {
8 String name();
9
10 default QName qName() {
11 return new DisplayQName(getNamespace(), name(), getDefaultPrefix());
12 }
13
14 String getNamespace();
15
16 String getDefaultPrefix();
17
18 static class DisplayQName extends QName {
19 private static final long serialVersionUID = 2376484886212253123L;
20
21 public DisplayQName(String namespaceURI, String localPart, String prefix) {
22 super(namespaceURI, localPart, prefix);
23 }
24
25 public DisplayQName(String localPart) {
26 super(localPart);
27 }
28
29 @Override
30 public String toString() {
31 String prefix = getPrefix();
32 assert prefix != null;
33 return "".equals(prefix) ? getLocalPart() : prefix + ":" + getLocalPart();
34 }
35
36 }
37 }