]>
git.argeo.org Git - gpl/argeo-jcr.git/blob - org.argeo.cms.jcr/src/org/argeo/cms/jcr/acr/JcrContentNamespace.java
1 package org
.argeo
.cms
.jcr
.acr
;
3 import java
.net
.MalformedURLException
;
5 import java
.util
.Objects
;
7 import org
.argeo
.api
.acr
.spi
.ContentNamespace
;
9 /** JCR-specific content namespaces. */
10 public enum JcrContentNamespace
implements ContentNamespace
{
14 JCRX("jcrx", "http://www.argeo.org/ns/jcrx", null, null),
18 JCR("jcr", "http://www.jcp.org/jcr/1.0", null,
19 "https://jackrabbit.apache.org/archive/wiki/JCR/NamespaceRegistry_115513459.html"),
21 JCR_MIX("mix", "http://www.jcp.org/jcr/mix/1.0", null,
22 "https://jackrabbit.apache.org/archive/wiki/JCR/NamespaceRegistry_115513459.html"),
24 JCR_NT("nt", "http://www.jcp.org/jcr/nt/1.0", null,
25 "https://jackrabbit.apache.org/archive/wiki/JCR/NamespaceRegistry_115513459.html"),
27 JACKRABBIT("rep", "internal", null,
28 "https://jackrabbit.apache.org/archive/wiki/JCR/NamespaceRegistry_115513459.html"),
32 private final static String RESOURCE_BASE
= "/org/argeo/cms/jcr/acr/schemas/";
34 private String defaultPrefix
;
35 private String namespace
;
37 private URL publicUrl
;
39 JcrContentNamespace(String defaultPrefix
, String namespace
, String resourceFileName
, String publicUrl
) {
40 Objects
.requireNonNull(namespace
);
41 this.defaultPrefix
= defaultPrefix
;
42 Objects
.requireNonNull(namespace
);
43 this.namespace
= namespace
;
44 if (resourceFileName
!= null) {
45 resource
= getClass().getResource(RESOURCE_BASE
+ resourceFileName
);
46 Objects
.requireNonNull(resource
);
48 if (publicUrl
!= null)
50 this.publicUrl
= new URL(publicUrl
);
51 } catch (MalformedURLException e
) {
52 throw new IllegalArgumentException("Cannot interpret public URL", e
);
57 public String
getDefaultPrefix() {
62 public String
getNamespaceURI() {
67 public URL
getSchemaResource() {
71 public URL
getPublicUrl() {