001/*
002 * The contents of this file are subject to the license and copyright
003 * detailed in the LICENSE and NOTICE files at the root of the source
004 * tree.
005 */
006package org.fcrepo.auth.webac;
007
008import org.fcrepo.kernel.api.RdfLexicon;
009
010import java.net.URI;
011
012/**
013 * URIs used by the WebAC module.
014 *
015 * @author Peter Eichman
016 * @author whikloj
017 * @since Aug 25, 2015
018 * @see <a href="http://www.w3.org/wiki/WebAccessControl/Vocabulary">
019 *      http://www.w3.org/wiki/WebAccessControl/Vocabulary</a>
020 * @see <a href="http://www.w3.org/ns/auth/acl">http://www.w3.org/ns/auth/acl</a>
021 * @see <a href="http://fedora.info/definitions/v4/webac">http://fedora.info/definitions/v4/webac</a>
022 */
023final public class URIConstants {
024
025    /**
026     * Namespace for the W3C WebAC vocabulary.
027     */
028    public static final String WEBAC_NAMESPACE_VALUE = RdfLexicon.WEBAC_NAMESPACE_VALUE;
029
030    /**
031     * Read access mode.
032     */
033    public static final String WEBAC_MODE_READ_VALUE = WEBAC_NAMESPACE_VALUE + "Read";
034
035    /**
036     * Read access mode.
037     */
038    public static final URI WEBAC_MODE_READ = URI.create(WEBAC_MODE_READ_VALUE);
039
040    /**
041     * Write access mode.
042     */
043    public static final String WEBAC_MODE_WRITE_VALUE = WEBAC_NAMESPACE_VALUE + "Write";
044
045    /**
046     * Write access mode.
047     */
048    public static final URI WEBAC_MODE_WRITE = URI.create(WEBAC_MODE_WRITE_VALUE);
049
050    /**
051     * Append access mode.
052     */
053    private static final String WEBAC_MODE_APPEND_VALUE = WEBAC_NAMESPACE_VALUE + "Append";
054
055    /**
056     * Append access mode.
057     */
058    public static final URI WEBAC_MODE_APPEND = URI.create(WEBAC_MODE_APPEND_VALUE);
059
060    /**
061     * Control access mode.
062     */
063    private static final String WEBAC_MODE_CONTROL_VALUE = WEBAC_NAMESPACE_VALUE + "Control";
064
065    /**
066     * Control access mode.
067     */
068    public static final URI WEBAC_MODE_CONTROL = URI.create(WEBAC_MODE_CONTROL_VALUE);
069
070    /**
071     * Authorization class.
072     */
073    public static final String WEBAC_AUTHORIZATION_VALUE = WEBAC_NAMESPACE_VALUE + "Authorization";
074
075    /**
076     * WebAC agent
077     */
078    public static final String WEBAC_AGENT_VALUE = WEBAC_NAMESPACE_VALUE + "agent";
079
080    /**
081     * WebAC agentClass
082     */
083    public static final String WEBAC_AGENT_CLASS_VALUE = WEBAC_NAMESPACE_VALUE + "agentClass";
084
085    /**
086     * WebAC agentGroup
087     */
088    public static final String WEBAC_AGENT_GROUP_VALUE = WEBAC_NAMESPACE_VALUE + "agentGroup";
089
090    /**
091     * WebAC accessTo
092     */
093    public static final String WEBAC_ACCESSTO_VALUE = WEBAC_NAMESPACE_VALUE + "accessTo";
094
095    /**
096     * WebAC accessToClass
097     */
098    public static final String WEBAC_ACCESSTO_CLASS_VALUE = WEBAC_NAMESPACE_VALUE + "accessToClass";
099
100    /**
101     * WebAC default
102     */
103    public static final String WEBAC_DEFAULT_VALUE = WEBAC_NAMESPACE_VALUE + "default";
104
105    /**
106     * WebAC accessControl
107     */
108    public static final String WEBAC_ACCESS_CONTROL_VALUE = RdfLexicon.WEBAC_ACCESS_CONTROL_VALUE;
109
110    /**
111     * WebAC mode
112     */
113    public static final String WEBAC_MODE_VALUE = WEBAC_NAMESPACE_VALUE + "mode";
114
115    /**
116     * WebAC AuthenticatedAgent
117     */
118    public static final String WEBAC_AUTHENTICATED_AGENT_VALUE = WEBAC_NAMESPACE_VALUE + "AuthenticatedAgent";
119
120    /**
121     * FOAF Namespace
122     */
123    private static final String FOAF_NAMESPACE_VALUE = "http://xmlns.com/foaf/0.1/";
124
125    /**
126     * FOAF Agent
127     */
128    public static final String FOAF_AGENT_VALUE = FOAF_NAMESPACE_VALUE + "Agent";
129
130    /**
131     * vCard Namespace
132     */
133    private static final String VCARD_NAMESPACE_VALUE = "http://www.w3.org/2006/vcard/ns#";
134
135    /**
136     * vCard Group
137     */
138    public static final String VCARD_GROUP_VALUE = VCARD_NAMESPACE_VALUE + "Group";
139    public static final URI VCARD_GROUP = URI.create(VCARD_GROUP_VALUE);
140
141    /**
142     * vCard member
143     */
144    public static final String VCARD_MEMBER_VALUE = VCARD_NAMESPACE_VALUE + "hasMember";
145
146    private URIConstants() {
147    }
148
149}