Improve ACR, introduce migration from JCR.
[lgpl/argeo-commons.git] / org.argeo.api.acr / src / org / argeo / api / acr / NamespaceUtils.java
index 9b5034b559c5692b3ec119f13e2b3ae5eed9c7ef..64566ea0c9dbffe785e7cf34248105a82d0ae659 100644 (file)
@@ -13,6 +13,10 @@ import javax.xml.namespace.QName;
 
 public class NamespaceUtils {
 
+       public static ContentName parsePrefixedName(String nameWithPrefix) {
+               return parsePrefixedName(RuntimeNamespaceContext.getNamespaceContext(), nameWithPrefix);
+       }
+
        public static ContentName parsePrefixedName(NamespaceContext nameSpaceContext, String nameWithPrefix) {
                Objects.requireNonNull(nameWithPrefix, "Name cannot be null");
                if (nameWithPrefix.charAt(0) == '{') {
@@ -31,6 +35,10 @@ public class NamespaceUtils {
                return new ContentName(namespaceURI, localName, prefix);
        }
 
+       public static String toPrefixedName(QName name) {
+               return toPrefixedName(RuntimeNamespaceContext.getNamespaceContext(), name);
+       }
+
        public static String toPrefixedName(NamespaceContext nameSpaceContext, QName name) {
                if (XMLConstants.NULL_NS_URI.equals(name.getNamespaceURI()))
                        return name.getLocalPart();
@@ -41,7 +49,7 @@ public class NamespaceUtils {
        }
 
        public final static Comparator<QName> QNAME_COMPARATOR = new Comparator<QName>() {
-       
+
                @Override
                public int compare(QName qn1, QName qn2) {
                        if (Objects.equals(qn1.getNamespaceURI(), qn2.getNamespaceURI())) {// same namespace
@@ -50,11 +58,11 @@ public class NamespaceUtils {
                                return qn1.getNamespaceURI().compareTo(qn2.getNamespaceURI());
                        }
                }
-       
+
        };
 
-       /** singleton */
-       private NamespaceUtils() {
+       public static boolean hasNamespace(QName qName) {
+               return !qName.getNamespaceURI().equals(XMLConstants.NULL_NS_URI);
        }
 
        /*
@@ -119,4 +127,8 @@ public class NamespaceUtils {
                return prefixes.iterator();
        }
 
+       /** singleton */
+       private NamespaceUtils() {
+       }
+
 }