Massive package refactoring
[lgpl/argeo-commons.git] / org.argeo.cms / src / org / argeo / cms / acr / CmsContentTypes.java
index 67c2063044132fd5b418416933bdf84b054ddc14..9caa4e65746a1c29c7a28ae29691b7df9da59839 100644 (file)
@@ -4,10 +4,19 @@ import java.net.MalformedURLException;
 import java.net.URL;
 import java.util.Objects;
 
-import org.argeo.api.acr.CrName;
+import org.argeo.api.acr.ArgeoNamespace;
 
 public enum CmsContentTypes {
-       CR_2(CrName.CR_DEFAULT_PREFIX, CrName.CR_NAMESPACE_URI, "cr.xsd", null),
+       //
+       // ARGEO
+       //
+       CR_2(ArgeoNamespace.CR_DEFAULT_PREFIX, ArgeoNamespace.CR_NAMESPACE_URI, "cr.xsd", null),
+       //
+       SLC("slc", "http://www.argeo.org/ns/slc", null, null),
+       //
+       ARGEO_LEGACY("argeo", "http://www.argeo.org/ns/argeo", null, null),
+       //
+       // EXTERNAL
        //
        XSD_2001("xs", "http://www.w3.org/2001/XMLSchema", "XMLSchema.xsd", "http://www.w3.org/2001/XMLSchema.xsd"),
        //
@@ -15,6 +24,8 @@ public enum CmsContentTypes {
        //
        XLINK_1999("xlink", "http://www.w3.org/1999/xlink", "xlink.xsd", "http://www.w3.org/XML/2008/06/xlink.xsd"),
        //
+       WEBDAV("D", "DAV:", null, "https://raw.githubusercontent.com/lookfirst/sardine/master/webdav.xsd"),
+       //
        XSLT_2_0("xsl", "http://www.w3.org/1999/XSL/Transform", "schema-for-xslt20.xsd",
                        "https://www.w3.org/2007/schema-for-xslt20.xsd"),
        //
@@ -33,6 +44,22 @@ public enum CmsContentTypes {
        DSML_v2("dsml", "urn:oasis:names:tc:DSML:2:0:core", "DSMLv2.xsd",
                        "https://www.oasis-open.org/committees/dsml/docs/DSMLv2.xsd"),
        //
+       // JCR (to be moved elsewhere)
+       //
+       JCR("jcr", "http://www.jcp.org/jcr/1.0", null,
+                       "https://jackrabbit.apache.org/archive/wiki/JCR/NamespaceRegistry_115513459.html"),
+       //
+       JCR_MIX("mix", "http://www.jcp.org/jcr/mix/1.0", null,
+                       "https://jackrabbit.apache.org/archive/wiki/JCR/NamespaceRegistry_115513459.html"),
+       //
+       JCR_NT("nt", "http://www.jcp.org/jcr/nt/1.0", null,
+                       "https://jackrabbit.apache.org/archive/wiki/JCR/NamespaceRegistry_115513459.html"),
+       //
+       JACKRABBIT("rep", "internal", null,
+                       "https://jackrabbit.apache.org/archive/wiki/JCR/NamespaceRegistry_115513459.html"),
+       //
+       JCRX("jcrx", "http://www.argeo.org/ns/jcrx", null, null),
+       //
        ;
 
        private final static String RESOURCE_BASE = "/org/argeo/cms/acr/schemas/";
@@ -47,8 +74,10 @@ public enum CmsContentTypes {
                this.defaultPrefix = defaultPrefix;
                Objects.requireNonNull(namespace);
                this.namespace = namespace;
-               resource = getClass().getResource(RESOURCE_BASE + resourceFileName);
-               Objects.requireNonNull(resource);
+               if (resourceFileName != null) {
+                       resource = getClass().getResource(RESOURCE_BASE + resourceFileName);
+                       Objects.requireNonNull(resource);
+               }
                if (publicUrl != null)
                        try {
                                this.publicUrl = new URL(publicUrl);