org.fcrepo.server.management
Class DefaultManagement
java.lang.Object
org.fcrepo.server.management.DefaultManagement
- All Implemented Interfaces:
- Constants, Management, ManagementDelegate
public class DefaultManagement
- extends Object
- implements Constants, Management, ManagementDelegate
Implements API-M without regard to the transport/messaging protocol.
- Version:
- $Id$
- Author:
- Chris Wilper
| Fields inherited from interface org.fcrepo.common.Constants |
ACCESS, ACTION, API, ATOM_APIM1_0, ATOM_ZIP1_1, ATOM1_1, AUDIT, AUDIT1_0, BATCH_MODIFY, BATCH_MODIFY1_1, BE_SECURITY, BE_SECURITY1_0, BINDING_SPEC, DATASTREAM, DC, DISSEMINATOR, DS_COMPOSITE_MODEL, DS_COMPOSITE_MODEL1_0, DS_INPUT_SPEC1_0, DS_INPUT_SPEC1_1, ENVIRONMENT, FCFG, FEDORA, FEDORA_APP_CONTEXT_NAME, FEDORA_DEFAULT_APP_CONTEXT, FEDORA_HOME, FEDORA_REPOSITORY_PID, FOXML, FOXML1_0, FOXML1_0_LEGACY, FOXML1_1, HTTP_REQUEST, MANAGEMENT, METHOD_MAP, METS, METS_EXT, METS_EXT1_0, METS_EXT1_0_LEGACY, METS_EXT1_1, MODEL, MULGARA, OAI_DC, OAI_DC2_0, OAI_FRIENDS, OAI_FRIENDS2_0, OAI_IDENTIFIER, OAI_IDENTIFIER2_0, OAI_PMH, OAI_PMH2_0, OAI_PROV, OAI_PROV2_0, OBJ_DATASTREAMS1_0, OBJ_HISTORY1_0, OBJ_ITEMS1_0, OBJ_METHODS1_0, OBJ_PROFILE1_0, OBJ_VALIDATION1_0, OBJECT, OLD_XLINK, PID_LIST1_0, RDF, RDF_XSD, RECOVERY, RELS_EXT, RELS_EXT1_0, RELS_INT1_0, REPO_DESC1_0, RESOURCE, SDEF, SDEF_METHOD_MAP1_0, SDEP, SDEP_METHOD_MAP1_0, SDEP_METHOD_MAP1_1, SERVICE_PROFILE, SOAP, SOAP_ENC, SUBJECT, TYPES, VIEW, WSDL, WSDL_HTTP, WSDL_MIME, XACML_POLICY, XACML_POLICY1_0, XACML1, XACML1_ACTION, XACML1_POLICY, XACML1_RESOURCE, XACML1_SUBJECT, XACML2_POLICY_SCHEMA, XLINK, XML_XSD, XMLNS, XSI |
|
Method Summary |
String |
addDatastream(Context context,
String pid,
String dsID,
String[] altIDs,
String dsLabel,
boolean versionable,
String MIMEType,
String formatURI,
String dsLocation,
String controlGroup,
String dsState,
String checksumType,
String checksum,
String logMessage)
|
boolean |
addRelationship(Context context,
String subject,
String relationship,
String object,
boolean isLiteral,
String datatype)
|
String |
compareDatastreamChecksum(Context context,
String pid,
String datastreamID,
Date versionDate)
|
InputStream |
export(Context context,
String pid,
String format,
String exportContext,
String encoding)
|
Datastream |
getDatastream(Context context,
String pid,
String datastreamID,
Date asOfDateTime)
|
Datastream[] |
getDatastreamHistory(Context context,
String pid,
String datastreamID)
|
Datastream[] |
getDatastreams(Context context,
String pid,
Date asOfDateTime,
String state)
|
String[] |
getNextPID(Context context,
int numPIDs,
String namespace)
|
InputStream |
getObjectXML(Context context,
String pid,
String encoding)
|
RelationshipTuple[] |
getRelationships(Context context,
String subject,
String relationship)
|
InputStream |
getTempStream(String id)
|
String |
ingest(Context context,
InputStream serialization,
String logMessage,
String format,
String encoding,
String pid)
|
Date |
modifyDatastreamByReference(Context context,
String pid,
String datastreamId,
String[] altIDs,
String dsLabel,
String mimeType,
String formatURI,
String dsLocation,
String checksumType,
String checksum,
String logMessage,
Date lastModifiedDate)
|
Date |
modifyDatastreamByValue(Context context,
String pid,
String datastreamId,
String[] altIDs,
String dsLabel,
String mimeType,
String formatURI,
InputStream dsContent,
String checksumType,
String checksum,
String logMessage,
Date lastModifiedDate)
|
Date[] |
modifyDatastreamControlGroup(Context context,
String pid,
String dsID,
String controlGroup,
boolean addXMLHeader,
boolean reformat,
boolean setMIMETypeCharset)
Migrate the datastream from one control group to another, returning list of versions migrated. |
Date |
modifyObject(Context context,
String pid,
String state,
String label,
String ownerId,
String logMessage,
Date lastModifiedDate)
|
Date[] |
purgeDatastream(Context context,
String pid,
String datastreamID,
Date startDT,
Date endDT,
String logMessage)
|
Date |
purgeObject(Context context,
String pid,
String logMessage)
|
boolean |
purgeRelationship(Context context,
String subject,
String relationship,
String object,
boolean isLiteral,
String datatype)
|
String |
putTempStream(Context context,
InputStream in)
|
Date |
setDatastreamState(Context context,
String pid,
String datastreamID,
String dsState,
String logMessage)
|
Date |
setDatastreamVersionable(Context context,
String pid,
String datastreamID,
boolean versionable,
String logMessage)
|
Validation |
validate(Context context,
String pid,
Date asOfDateTime)
Validate the object against the datacontracts from the objects content model. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DefaultManagement
public DefaultManagement(Authorization authz,
DOManager doMgr,
ExternalContentManager ecMgr,
int uploadMinutes,
int lastId,
File tempDir,
Hashtable<String,Long> uploadStartTime,
long purgeDelayInMillis)
- Parameters:
purgeDelayInMillis - milliseconds to delay before removing
old uploaded files
ingest
public String ingest(Context context,
InputStream serialization,
String logMessage,
String format,
String encoding,
String pid)
throws ServerException
- Specified by:
ingest in interface Management
- Throws:
ServerException
modifyObject
public Date modifyObject(Context context,
String pid,
String state,
String label,
String ownerId,
String logMessage,
Date lastModifiedDate)
throws ServerException
- Specified by:
modifyObject in interface Management
- Throws:
ServerException
getObjectXML
public InputStream getObjectXML(Context context,
String pid,
String encoding)
throws ServerException
- Specified by:
getObjectXML in interface Management
- Throws:
ServerException
export
public InputStream export(Context context,
String pid,
String format,
String exportContext,
String encoding)
throws ServerException
- Specified by:
export in interface Management
- Throws:
ServerException
purgeObject
public Date purgeObject(Context context,
String pid,
String logMessage)
throws ServerException
- Specified by:
purgeObject in interface Management
- Throws:
ServerException
addDatastream
public String addDatastream(Context context,
String pid,
String dsID,
String[] altIDs,
String dsLabel,
boolean versionable,
String MIMEType,
String formatURI,
String dsLocation,
String controlGroup,
String dsState,
String checksumType,
String checksum,
String logMessage)
throws ServerException
- Specified by:
addDatastream in interface Management
- Throws:
ServerException
modifyDatastreamByReference
public Date modifyDatastreamByReference(Context context,
String pid,
String datastreamId,
String[] altIDs,
String dsLabel,
String mimeType,
String formatURI,
String dsLocation,
String checksumType,
String checksum,
String logMessage,
Date lastModifiedDate)
throws ServerException
- Specified by:
modifyDatastreamByReference in interface Management
- Throws:
ServerException
modifyDatastreamByValue
public Date modifyDatastreamByValue(Context context,
String pid,
String datastreamId,
String[] altIDs,
String dsLabel,
String mimeType,
String formatURI,
InputStream dsContent,
String checksumType,
String checksum,
String logMessage,
Date lastModifiedDate)
throws ServerException
- Specified by:
modifyDatastreamByValue in interface Management
- Throws:
ServerException
purgeDatastream
public Date[] purgeDatastream(Context context,
String pid,
String datastreamID,
Date startDT,
Date endDT,
String logMessage)
throws ServerException
- Specified by:
purgeDatastream in interface Management
- Throws:
ServerException
getDatastream
public Datastream getDatastream(Context context,
String pid,
String datastreamID,
Date asOfDateTime)
throws ServerException
- Specified by:
getDatastream in interface Management
- Throws:
ServerException
getDatastreams
public Datastream[] getDatastreams(Context context,
String pid,
Date asOfDateTime,
String state)
throws ServerException
- Specified by:
getDatastreams in interface Management
- Throws:
ServerException
getDatastreamHistory
public Datastream[] getDatastreamHistory(Context context,
String pid,
String datastreamID)
throws ServerException
- Specified by:
getDatastreamHistory in interface Management
- Throws:
ServerException
getNextPID
public String[] getNextPID(Context context,
int numPIDs,
String namespace)
throws ServerException
- Specified by:
getNextPID in interface Management
- Throws:
ServerException
putTempStream
public String putTempStream(Context context,
InputStream in)
throws StreamWriteException,
AuthzException
- Specified by:
putTempStream in interface Management
- Throws:
StreamWriteException
AuthzException
getTempStream
public InputStream getTempStream(String id)
throws StreamReadException
- Specified by:
getTempStream in interface Management
- Throws:
StreamReadException
setDatastreamState
public Date setDatastreamState(Context context,
String pid,
String datastreamID,
String dsState,
String logMessage)
throws ServerException
- Specified by:
setDatastreamState in interface Management
- Throws:
ServerException
setDatastreamVersionable
public Date setDatastreamVersionable(Context context,
String pid,
String datastreamID,
boolean versionable,
String logMessage)
throws ServerException
- Specified by:
setDatastreamVersionable in interface Management
- Throws:
ServerException
compareDatastreamChecksum
public String compareDatastreamChecksum(Context context,
String pid,
String datastreamID,
Date versionDate)
throws ServerException
- Specified by:
compareDatastreamChecksum in interface Management
- Throws:
ServerException
getRelationships
public RelationshipTuple[] getRelationships(Context context,
String subject,
String relationship)
throws ServerException
- Specified by:
getRelationships in interface Management
- Throws:
ServerException
addRelationship
public boolean addRelationship(Context context,
String subject,
String relationship,
String object,
boolean isLiteral,
String datatype)
throws ServerException
- Specified by:
addRelationship in interface Management
- Throws:
ServerException
purgeRelationship
public boolean purgeRelationship(Context context,
String subject,
String relationship,
String object,
boolean isLiteral,
String datatype)
throws ServerException
- Specified by:
purgeRelationship in interface Management
- Throws:
ServerException
validate
public Validation validate(Context context,
String pid,
Date asOfDateTime)
throws ServerException
- Validate the object against the datacontracts from the objects content model. This method just delegates the validation
to EcmValidator
- Specified by:
validate in interface Management
- Parameters:
context - the call contextpid - the pid of the object to validateasOfDateTime - the datetime to get to object as
- Returns:
- The result of the validation
- Throws:
ServerException- See Also:
EcmValidator
modifyDatastreamControlGroup
public Date[] modifyDatastreamControlGroup(Context context,
String pid,
String dsID,
String controlGroup,
boolean addXMLHeader,
boolean reformat,
boolean setMIMETypeCharset)
throws ServerException
- Migrate the datastream from one control group to another, returning list of versions migrated.
Only supports migration from X (inline) to M (managed content). Returns an array of date/times of the
datastream versions migrated (empty if datastream already had the desired control group). Throws
ObjectNotFoundException/DatastreamNotFoundException if object or datastream does not exist.
- Parameters:
context - pid - dsID - controlGroup - - new Control Group for datastreamignoreAlreadyDone - - if true don't return an error if datastream already has desired control groupaddXMLHeader - - add an XML header declaring UTF-8 character encoding to datastream contentreformat - - reformat the XML (in the same format as used for inline XML)setMIMETypeCharset - - add charset declaration (UTF-8) to the MIMEType, and add text/xml MIMEType if no MIMEType is set
- Returns:
- array of versions migrated
- Throws:
ServerException
Copyright © 2012 DuraSpace. All Rights Reserved.