org.fcrepo.common.policy.ActionNamespace Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of fcrepo-common Show documentation
Show all versions of fcrepo-common Show documentation
Common, generally useful utilities
/* The contents of this file are subject to the license and copyright terms
* detailed in the license directory at the root of the source tree (also
* available online at http://fedora-commons.org/license/).
*/
package org.fcrepo.common.policy;
import org.jboss.security.xacml.sunxacml.attr.StringAttribute;
/**
* The Fedora Action XACML namespace.
*
*
* Namespace URI : urn:fedora:names:fedora:2.1:action
*
*/
public class ActionNamespace
extends XacmlNamespace {
// Properties
public final XacmlName ID;
public final XacmlName API;
public final XacmlName CONTEXT_ID;
// Values of API
public final XacmlName APIM;
public final XacmlName APIA;
// Values of ID
public final XacmlName ADD_DATASTREAM;
public final XacmlName EXPORT;
public final XacmlName GET_DATASTREAM;
public final XacmlName GET_DATASTREAM_HISTORY;
public final XacmlName GET_DATASTREAMS;
public final XacmlName GET_NEXT_PID;
public final XacmlName GET_OBJECT_XML;
public final XacmlName INGEST;
public final XacmlName MODIFY_DATASTREAM_BY_REFERENCE;
public final XacmlName MODIFY_DATASTREAM_BY_VALUE;
public final XacmlName MODIFY_OBJECT;
public final XacmlName PURGE_OBJECT;
public final XacmlName PURGE_DATASTREAM;
public final XacmlName SET_DATASTREAM_STATE;
public final XacmlName DESCRIBE_REPOSITORY;
public final XacmlName FIND_OBJECTS;
public final XacmlName RI_FIND_OBJECTS;
public final XacmlName GET_DATASTREAM_DISSEMINATION;
public final XacmlName GET_DISSEMINATION;
public final XacmlName GET_OBJECT_HISTORY;
public final XacmlName GET_OBJECT_PROFILE;
public final XacmlName LIST_DATASTREAMS;
public final XacmlName LIST_METHODS;
public final XacmlName LIST_OBJECT_IN_FIELD_SEARCH_RESULTS;
public final XacmlName LIST_OBJECT_IN_RESOURCE_INDEX_RESULTS;
public final XacmlName SERVER_STATUS;
public final XacmlName OAI;
public final XacmlName UPLOAD;
public final XacmlName INTERNAL_DSSTATE;
public final XacmlName RESOLVE_DATASTREAM;
public final XacmlName RELOAD_POLICIES;
public final XacmlName MANAGE_POLICIES;
public final XacmlName SET_DATASTREAM_VERSIONABLE;
public final XacmlName COMPARE_DATASTREAM_CHECKSUM;
public final XacmlName GET_RELATIONSHIPS;
public final XacmlName ADD_RELATIONSHIP;
public final XacmlName PURGE_RELATIONSHIP;
public final XacmlName RETRIEVE_FILE;
public final XacmlName VALIDATE;
private ActionNamespace(XacmlNamespace parent, String localName) {
super(parent, localName);
API = addName(new XacmlName(this, "api", StringAttribute.identifier));
APIM = addName(new XacmlName(this, "api-m"));
APIA = addName(new XacmlName(this, "api-a"));
ID = addName(new XacmlName(this, "id", StringAttribute.identifier));
// derived from respective Java methods in Access.java or Management.java
ADD_DATASTREAM = addName(new XacmlName(this, "id-addDatastream"));
EXPORT = addName(new XacmlName(this, "id-export"));
GET_DATASTREAM = addName(new XacmlName(this, "id-getDatastream"));
GET_DATASTREAM_HISTORY =
addName(new XacmlName(this, "id-getDatastreamHistory"));
GET_DATASTREAMS = addName(new XacmlName(this, "id-getDatastreams"));
GET_NEXT_PID = addName(new XacmlName(this, "id-getNextPid"));
GET_OBJECT_XML = addName(new XacmlName(this, "id-getObjectXML"));
INGEST = addName(new XacmlName(this, "id-ingest"));
MODIFY_DATASTREAM_BY_REFERENCE =
addName(new XacmlName(this, "id-modifyDatastreamByReference"));
MODIFY_DATASTREAM_BY_VALUE =
addName(new XacmlName(this, "id-modifyDatastreamByValue"));
MODIFY_OBJECT = addName(new XacmlName(this, "id-modifyObject"));
PURGE_OBJECT = addName(new XacmlName(this, "id-purgeObject"));
PURGE_DATASTREAM = addName(new XacmlName(this, "id-purgeDatastream"));
SET_DATASTREAM_STATE =
addName(new XacmlName(this, "id-setDatastreamState"));
SET_DATASTREAM_VERSIONABLE =
addName(new XacmlName(this, "id-setDatastreamVersionable"));
COMPARE_DATASTREAM_CHECKSUM =
addName(new XacmlName(this, "id-compareDatastreamChecksum"));
DESCRIBE_REPOSITORY =
addName(new XacmlName(this, "id-describeRepository"));
FIND_OBJECTS = addName(new XacmlName(this, "id-findObjects"));
RI_FIND_OBJECTS = addName(new XacmlName(this, "id-riFindObjects"));
GET_DATASTREAM_DISSEMINATION =
addName(new XacmlName(this, "id-getDatastreamDissemination"));
GET_DISSEMINATION = addName(new XacmlName(this, "id-getDissemination"));
GET_OBJECT_HISTORY =
addName(new XacmlName(this, "id-getObjectHistory"));
GET_OBJECT_PROFILE =
addName(new XacmlName(this, "id-getObjectProfile"));
LIST_DATASTREAMS = addName(new XacmlName(this, "id-listDatastreams"));
LIST_METHODS = addName(new XacmlName(this, "id-listMethods"));
LIST_OBJECT_IN_FIELD_SEARCH_RESULTS =
addName(new XacmlName(this, "id-listObjectInFieldSearchResults"));
LIST_OBJECT_IN_RESOURCE_INDEX_RESULTS =
addName(new XacmlName(this,
"id-listObjectInResourceIndexResults"));
SERVER_STATUS = addName(new XacmlName(this, "id-serverStatus"));
OAI = addName(new XacmlName(this, "id-oai"));
UPLOAD = addName(new XacmlName(this, "id-upload"));
INTERNAL_DSSTATE = addName(new XacmlName(this, "id-dsstate"));
RESOLVE_DATASTREAM =
addName(new XacmlName(this, "id-resolveDatastream"));
RELOAD_POLICIES = addName(new XacmlName(this, "id-reloadPolicies"));
MANAGE_POLICIES = addName(new XacmlName(this, "id-managePolicies"));
GET_RELATIONSHIPS = addName(new XacmlName(this, "id-getRelationships"));
ADD_RELATIONSHIP = addName(new XacmlName(this, "id-addRelationship"));
PURGE_RELATIONSHIP =
addName(new XacmlName(this, "id-purgeRelationship"));
CONTEXT_ID =
addName(new XacmlName(this,
"contextId",
StringAttribute.identifier)); //internal callback support
RETRIEVE_FILE =
addName(new XacmlName(this, "id-retrieveFile"));
VALIDATE =
addName(new XacmlName(this, "id-validate"));
// Values of CONTEXT_ID are sequential numerals, hence not enumerated here.
}
public static ActionNamespace onlyInstance =
new ActionNamespace(Release2_1Namespace.getInstance(), "action");
public static final ActionNamespace getInstance() {
return onlyInstance;
}
}