|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface Storage
| Method Summary | |
|---|---|
AllowableActions |
calculateAllowableActions(ObjectData object)
Calculates allowable actions for specified object. |
DocumentData |
copyDocument(DocumentData source,
FolderData parent,
Map<String,Property<?>> properties,
List<AccessControlEntry> acl,
Collection<PolicyData> policies,
VersioningState versioningState)
Create new document as copy of the given source document and
use parent as parent. |
DocumentData |
createDocument(FolderData parent,
TypeDefinition typeDefinition,
Map<String,Property<?>> properties,
ContentStream content,
List<AccessControlEntry> acl,
Collection<PolicyData> policies,
VersioningState versioningState)
Create new document with type typeDefinition using
parent as parent. |
FolderData |
createFolder(FolderData parent,
TypeDefinition typeDefinition,
Map<String,Property<?>> properties,
List<AccessControlEntry> acl,
Collection<PolicyData> policies)
Create new folder with type typeDefinition using
folder as parent. |
PolicyData |
createPolicy(FolderData parent,
TypeDefinition typeDefinition,
Map<String,Property<?>> properties,
List<AccessControlEntry> acl,
Collection<PolicyData> policies)
Create new policy with type typeDefinition using
parent as parent. |
RelationshipData |
createRelationship(ObjectData source,
ObjectData target,
TypeDefinition typeDefinition,
Map<String,Property<?>> properties,
List<AccessControlEntry> acl,
Collection<PolicyData> policies)
Create new relationship for specified source and
target. |
void |
deleteObject(ObjectData object,
boolean deleteAllVersions)
Delete specified object. |
Collection<String> |
deleteTree(FolderData folder,
boolean deleteAllVersions,
UnfileObject unfileObject,
boolean continueOnFailure)
Delete the specified folder object and all of its child- and descendant-objects. |
Collection<DocumentData> |
getAllVersions(String versionSeriesId)
Collection of all Document in the specified version series, sorted by cmis:creationDate descending. |
ItemsIterator<ChangeEvent> |
getChangeLog(String changeLogToken)
Gets content changes. |
ItemsIterator<DocumentData> |
getCheckedOutDocuments(FolderData folder,
String orderBy)
Get checkedout objects (private working copies) that user has access to. |
String |
getId()
Gets storage unique id. |
ObjectData |
getObjectById(String objectId)
Get object by unique identifier. |
ObjectData |
getObjectByPath(String path)
Get object by path. |
ItemsIterator<Rendition> |
getRenditions(ObjectData object)
Get object renditions. |
RepositoryInfo |
getRepositoryInfo()
Get description of storage and its capabilities. |
Iterator<String> |
getUnfiledObjectsId()
Iterator of all unfilled documents identifiers. |
ObjectData |
moveObject(ObjectData object,
FolderData target,
FolderData source)
Move object from source to target. |
ItemsIterator<Result> |
query(Query query)
Handle specified SQL query. |
void |
unfileObject(ObjectData object)
Remove non-folder fileable object from all folder where in which it is currently filed. |
| Methods inherited from interface org.xcmis.spi.TypeManager |
|---|
addType, getTypeChildren, getTypeDefinition, removeType |
| Method Detail |
|---|
String getId()
AllowableActions calculateAllowableActions(ObjectData object)
object - object
ItemsIterator<DocumentData> getCheckedOutDocuments(FolderData folder,
String orderBy)
folder - folder, if null then get all checked out
objects in any foldersorderBy - comma-separated list of query names and the ascending
modifier 'ASC' or the descending modifier 'DESC' for each query
name. A storage's handling of the orderBy input is storage-specific
and storage may ignore this parameter if it not able sort items
DocumentData createDocument(FolderData parent,
TypeDefinition typeDefinition,
Map<String,Property<?>> properties,
ContentStream content,
List<AccessControlEntry> acl,
Collection<PolicyData> policies,
VersioningState versioningState)
throws ConstraintException,
NameConstraintViolationException,
IOException,
StorageException
typeDefinition using
parent as parent. If parent == null then
document created in unfiling state. If unfiling is not supported
ConstraintException should be thrown.
Implementation Compatibility: MUST be implemented
parent - parent folder or null if document should be
created in unfiling statetypeDefinition - the document type definitionproperties - the document properties. Properties whith updatability
other then Updatability.ONCREATE or
Updatability.READWRITE will be ignoredcontent - the document content. May be null.
MUST be required if the type requires it.acl - the list of ACEs to be applied to newly create document. May be
null or empty list if no ACEs to be appliedpolicies - the list of policies. May be null or empty
collection if no policies to be appliedversioningState - versioning state
ConstraintException - if any of following condition are met:
false and a value of the versioningState parameter is
other than nonetrue and and the value of the versioningState
parameter is noneparent == null and unfiling is not supportedNameConstraintViolationException - if property 'cmis:name' throws
conflict
IOException - if any i/o error occurs when try to set document
content stream
StorageException - if object can not be saved cause to storage
internal problemVersioningState
DocumentData copyDocument(DocumentData source,
FolderData parent,
Map<String,Property<?>> properties,
List<AccessControlEntry> acl,
Collection<PolicyData> policies,
VersioningState versioningState)
throws ConstraintException,
NameConstraintViolationException,
StorageException
source document and
use parent as parent. If parent == null then
document created in unfiling state. If unfiling is not supported
ConstraintException should be thrown.
Implementation Compatibility: MUST be implemented
source - source documentparent - parent folder or null if document should be
created in unfiling stateproperties - the document propertiesacl - the list of ACEs to be applie dto newly created document. May
be null or empty list if no ACEs to be appliedpolicies - the list of policies. May be null or empty
collection if no policies to be appliedversioningState - versioning state
ConstraintException - if any of following condition are met:
false and a value of the versioningState parameter is
other than nonetrue and and the value of the versioningState
parameter is noneparent == null and unfiling is not supportedNameConstraintViolationException - if property 'cmis:name' throws
conflict
StorageException - if new document can be saved cause to storage
internal problemVersioningState
FolderData createFolder(FolderData parent,
TypeDefinition typeDefinition,
Map<String,Property<?>> properties,
List<AccessControlEntry> acl,
Collection<PolicyData> policies)
throws ConstraintException,
NameConstraintViolationException,
StorageException
typeDefinition using
folder as parent.
Implementation Compatibility: MUST be implemented
parent - parent foldertypeDefinition - the folder type definitionproperties - the folder propertiesacl - the list of ACEs to be applied to newly created folder. May be
null or empty list if no ACEs to be appliedpolicies - the list of policies. May be null or empty
collection if no policies to be applied
ConstraintException - if parent == null
NameConstraintViolationException - if property 'cmis:name' throws
conflict
StorageException - if object can not be removed cause to storage
internal problem
PolicyData createPolicy(FolderData parent,
TypeDefinition typeDefinition,
Map<String,Property<?>> properties,
List<AccessControlEntry> acl,
Collection<PolicyData> policies)
throws ConstraintException,
NameConstraintViolationException,
StorageException
typeDefinition using
parent as parent. If parent == null then policy
created in unfiling state.
2.2.4.5 createPolicy
Implementation Compatibility: the support for policy objects is optional,
if implementation does not support cmis:policy object-type method should
throw NotSupportedException
parent - parent foldertypeDefinition - the policy type definitionproperties - the policy propertiesacl - the list of ACEs to be applied to newly created policy. May be
null or empty list if no ACEs to be appliedpolicies - the list of policies. May be null or empty
collection if no policies to be applied
ConstraintException - if parent == null and policy type
is fileable
NameConstraintViolationException - if property 'cmis:name' throws
conflict
StorageException - if object can not be saved cause to storage
internal problem
RelationshipData createRelationship(ObjectData source,
ObjectData target,
TypeDefinition typeDefinition,
Map<String,Property<?>> properties,
List<AccessControlEntry> acl,
Collection<PolicyData> policies)
throws NameConstraintViolationException,
StorageException
source and
target.
Implementation Compatibility: the support for relationship objects is
optional, if implementation does not support cmis:relationship object-type
method should throw NotSupportedException
source - source of relationshiptarget - target of relationshiptypeDefinition - the relationship type definitionproperties - the relationship propertiesacl - the list of ACEs to be applied to newly created relationship.
May be null or empty list if no ACEs to be appliedpolicies - the list of policies. May be null or empty
collection if no policies to be applied
NameConstraintViolationException - if property 'cmis:name' throws
conflict
StorageException - if object can not be removed cause to storage
internal problem
void deleteObject(ObjectData object,
boolean deleteAllVersions)
throws VersioningException,
UpdateConflictException,
StorageException
DocumentData.cancelCheckout().
Implementation Compatibility: MUST be implemented
object - object to be deleteddeleteAllVersions - if false then delete only the object
specified, if true delete all versions of versionable
document. This parameter must be ignored if specified object is not
document or not versionable document
VersioningException - if object can not be removed cause to
versioning conflict
UpdateConflictException - if specified object is not current any
more
StorageException - if object can't be delete (persist operation)
cause to storage internal problem
Collection<String> deleteTree(FolderData folder,
boolean deleteAllVersions,
UnfileObject unfileObject,
boolean continueOnFailure)
throws UpdateConflictException
folder - folder to be deleteddeleteAllVersions - if true then delete all versions of
the document in this folder. If false, delete only the
document object specified. This parameter will be ignored if
parameter when objectId non-document object or
non-versionable documentunfileObject - an enumeration specifying how the storage MUST process
file-able child objects:
continueOnFailure - if true, then the storage SHOULD
continue attempting to perform this operation even if deletion of a
child object in the specified folder cannot be deleted
UpdateConflictException - if object that is no longer current (as
determined by the storage)void unfileObject(ObjectData object)
NotSupportedException should be thrown.
object - object
ItemsIterator<ChangeEvent> getChangeLog(String changeLogToken)
throws ConstraintException
NotSupportedException should be thrown.
changeLogToken - if value other than null, then change
event corresponded to the value of the specified change log token
will be returned as the first result in the output. If not
specified, then will be returned the first change event recorded in
the change log. When set of changes passed is returned then
changeLogToken must contains log token corresponded to
the last change event. Then it may be used by caller for getting
next set on change events
ConstraintException - if the event corresponding to the change log
token provided as an input parameter is no longer available in the
change log. (E.g. because the change log was truncated)ItemsIterator<Result> query(Query query)
NotSupportedException should be thrown.
query - SQL query
InvalidArgumentException - if specified query is
invalid
ObjectData getObjectById(String objectId)
throws ObjectNotFoundException
objectId - object's ID
ObjectNotFoundException - if object with specified ID was not found
ObjectData getObjectByPath(String path)
throws ObjectNotFoundException
path - path
ObjectNotFoundException - if object with specified path was not
found
ObjectData moveObject(ObjectData object,
FolderData target,
FolderData source)
throws UpdateConflictException,
VersioningException,
NameConstraintViolationException,
StorageException
object from source to target.
If operation successful then changes saved immediately.
Implementation Compatibility: MUST be implemented
object - object to be movedtarget - destination foldersource - folder from which object must be moved
UpdateConflictException - if object that is no longer current (as
determined by the storage).
VersioningException - if object is a non-current document version
NameConstraintViolationException - if moving operation cause name
conflict, e.g. destination folder already contains object with the
same name
StorageException - if object can not be moved (save changes) cause
to storage internal problemItemsIterator<Rendition> getRenditions(ObjectData object)
object - the object
nullRepositoryInfo getRepositoryInfo()
Collection<DocumentData> getAllVersions(String versionSeriesId)
throws ObjectNotFoundException
NotSupportedException should be
thrown.
versionSeriesId - the id of version series
ObjectNotFoundException - if version series with
versionSeriesId does not exist
Iterator<String> getUnfiledObjectsId()
throws StorageException
NotSupportedException should be thrown.
StorageException - if any storage error occurs
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||