001/* 002 * Licensed to DuraSpace under one or more contributor license agreements. 003 * See the NOTICE file distributed with this work for additional information 004 * regarding copyright ownership. 005 * 006 * DuraSpace licenses this file to you under the Apache License, 007 * Version 2.0 (the "License"); you may not use this file except in 008 * compliance with the License. You may obtain a copy of the License at 009 * 010 * http://www.apache.org/licenses/LICENSE-2.0 011 * 012 * Unless required by applicable law or agreed to in writing, software 013 * distributed under the License is distributed on an "AS IS" BASIS, 014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 015 * See the License for the specific language governing permissions and 016 * limitations under the License. 017 */ 018package org.fcrepo.auth.webac; 019 020import org.fcrepo.kernel.api.RdfLexicon; 021 022import java.net.URI; 023 024/** 025 * URIs used by the WebAC module. 026 * 027 * @author Peter Eichman 028 * @author whikloj 029 * @since Aug 25, 2015 030 * @see <a href="http://www.w3.org/wiki/WebAccessControl/Vocabulary"> 031 * http://www.w3.org/wiki/WebAccessControl/Vocabulary</a> 032 * @see <a href="http://www.w3.org/ns/auth/acl">http://www.w3.org/ns/auth/acl</a> 033 * @see <a href="http://fedora.info/definitions/v4/webac">http://fedora.info/definitions/v4/webac</a> 034 */ 035final public class URIConstants { 036 037 /** 038 * Namespace for the W3C WebAC vocabulary. 039 */ 040 public static final String WEBAC_NAMESPACE_VALUE = RdfLexicon.WEBAC_NAMESPACE_VALUE; 041 042 /** 043 * Read access mode. 044 */ 045 public static final String WEBAC_MODE_READ_VALUE = WEBAC_NAMESPACE_VALUE + "Read"; 046 047 /** 048 * Read access mode. 049 */ 050 public static final URI WEBAC_MODE_READ = URI.create(WEBAC_MODE_READ_VALUE); 051 052 /** 053 * Write access mode. 054 */ 055 public static final String WEBAC_MODE_WRITE_VALUE = WEBAC_NAMESPACE_VALUE + "Write"; 056 057 /** 058 * Write access mode. 059 */ 060 public static final URI WEBAC_MODE_WRITE = URI.create(WEBAC_MODE_WRITE_VALUE); 061 062 /** 063 * Append access mode. 064 */ 065 private static final String WEBAC_MODE_APPEND_VALUE = WEBAC_NAMESPACE_VALUE + "Append"; 066 067 /** 068 * Append access mode. 069 */ 070 public static final URI WEBAC_MODE_APPEND = URI.create(WEBAC_MODE_APPEND_VALUE); 071 072 /** 073 * Control access mode. 074 */ 075 private static final String WEBAC_MODE_CONTROL_VALUE = WEBAC_NAMESPACE_VALUE + "Control"; 076 077 /** 078 * Control access mode. 079 */ 080 public static final URI WEBAC_MODE_CONTROL = URI.create(WEBAC_MODE_CONTROL_VALUE); 081 082 /** 083 * Authorization class. 084 */ 085 public static final String WEBAC_AUTHORIZATION_VALUE = WEBAC_NAMESPACE_VALUE + "Authorization"; 086 087 /** 088 * WebAC agent 089 */ 090 public static final String WEBAC_AGENT_VALUE = WEBAC_NAMESPACE_VALUE + "agent"; 091 092 /** 093 * WebAC agentClass 094 */ 095 public static final String WEBAC_AGENT_CLASS_VALUE = WEBAC_NAMESPACE_VALUE + "agentClass"; 096 097 /** 098 * WebAC agentGroup 099 */ 100 public static final String WEBAC_AGENT_GROUP_VALUE = WEBAC_NAMESPACE_VALUE + "agentGroup"; 101 102 /** 103 * WebAC accessTo 104 */ 105 public static final String WEBAC_ACCESSTO_VALUE = WEBAC_NAMESPACE_VALUE + "accessTo"; 106 107 /** 108 * WebAC accessToClass 109 */ 110 public static final String WEBAC_ACCESSTO_CLASS_VALUE = WEBAC_NAMESPACE_VALUE + "accessToClass"; 111 112 /** 113 * WebAC default 114 */ 115 public static final String WEBAC_DEFAULT_VALUE = WEBAC_NAMESPACE_VALUE + "default"; 116 117 /** 118 * WebAC accessControl 119 */ 120 public static final String WEBAC_ACCESS_CONTROL_VALUE = RdfLexicon.WEBAC_ACCESS_CONTROL_VALUE; 121 122 /** 123 * WebAC mode 124 */ 125 public static final String WEBAC_MODE_VALUE = WEBAC_NAMESPACE_VALUE + "mode"; 126 127 /** 128 * WebAC AuthenticatedAgent 129 */ 130 public static final String WEBAC_AUTHENTICATED_AGENT_VALUE = WEBAC_NAMESPACE_VALUE + "AuthenticatedAgent"; 131 132 /** 133 * FOAF Namespace 134 */ 135 private static final String FOAF_NAMESPACE_VALUE = "http://xmlns.com/foaf/0.1/"; 136 137 /** 138 * FOAF Agent 139 */ 140 public static final String FOAF_AGENT_VALUE = FOAF_NAMESPACE_VALUE + "Agent"; 141 142 /** 143 * vCard Namespace 144 */ 145 private static final String VCARD_NAMESPACE_VALUE = "http://www.w3.org/2006/vcard/ns#"; 146 147 /** 148 * vCard Group 149 */ 150 public static final String VCARD_GROUP_VALUE = VCARD_NAMESPACE_VALUE + "Group"; 151 public static final URI VCARD_GROUP = URI.create(VCARD_GROUP_VALUE); 152 153 /** 154 * vCard member 155 */ 156 public static final String VCARD_MEMBER_VALUE = VCARD_NAMESPACE_VALUE + "hasMember"; 157 158 private URIConstants() { 159 } 160 161}