]> git.argeo.org Git - lgpl/argeo-commons.git/blobdiff - org.argeo.api.acr/src/org/argeo/api/acr/NamespaceUtils.java
Improve ACR
[lgpl/argeo-commons.git] / org.argeo.api.acr / src / org / argeo / api / acr / NamespaceUtils.java
index 792802d8c9e4285d19fd567e9d409ca3ecf85af6..df582868b349798da88d124264d5f846c432feec 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) == '{') {
@@ -57,8 +61,19 @@ public class NamespaceUtils {
 
        };
 
-       /** singleton */
-       private NamespaceUtils() {
+       public static boolean hasNamespace(QName qName) {
+               return !qName.getNamespaceURI().equals(XMLConstants.NULL_NS_URI);
+       }
+
+       public static void checkNoPrefix(String unqualified) {
+               if (unqualified.indexOf(':') >= 0)
+                       throw new IllegalArgumentException("Name " + unqualified + " has a prefix");
+       }
+
+       public static QName unqualified(String name) {
+               checkNoPrefix(name);
+               return new ContentName(XMLConstants.NULL_NS_URI, name, XMLConstants.DEFAULT_NS_PREFIX);
+
        }
 
        /*
@@ -123,4 +138,8 @@ public class NamespaceUtils {
                return prefixes.iterator();
        }
 
+       /** singleton */
+       private NamespaceUtils() {
+       }
+
 }