Massive package refactoring
[lgpl/argeo-commons.git] / org.argeo.cms / src / org / argeo / cms / acr / CmsContentTypes.java
index 4c1f82a257fb1021cc34b50284325ba19130a786..9caa4e65746a1c29c7a28ae29691b7df9da59839 100644 (file)
@@ -4,8 +4,19 @@ import java.net.MalformedURLException;
 import java.net.URL;
 import java.util.Objects;
 
+import org.argeo.api.acr.ArgeoNamespace;
+
 public enum CmsContentTypes {
-       CR_2("cr", "http://argeo.org/ns/cr", "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"),
        //
@@ -13,12 +24,16 @@ public enum CmsContentTypes {
        //
        XLINK_1999("xlink", "http://www.w3.org/1999/xlink", "xlink.xsd", "http://www.w3.org/XML/2008/06/xlink.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"),
+       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"),
        //
        SVG_1_1("svg", "http://www.w3.org/2000/svg", "SVG.xsd",
                        "https://raw.githubusercontent.com/oreillymedia/HTMLBook/master/schema/svg/SVG.xsd"),
        //
-       DOCBOOK_5_0_1("dbk","http://docbook.org/ns/docbook","docbook.xsd","http://docbook.org/xml/5.0.1/xsd/docbook.xsd"),
+       DOCBOOK_5_0_1("dbk", "http://docbook.org/ns/docbook", "docbook.xsd",
+                       "http://docbook.org/xml/5.0.1/xsd/docbook.xsd"),
        //
        XML_EVENTS_2001("ev", "http://www.w3.org/2001/xml-events", "xml-events-attribs-1.xsd",
                        "http://www.w3.org/MarkUp/SCHEMA/xml-events-attribs-1.xsd"),
@@ -29,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/";
@@ -43,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);