org.apache.chemistry.opencmis.fileshare
Class FileShareService

java.lang.Object
  extended by org.apache.chemistry.opencmis.commons.impl.server.AbstractCmisService
      extended by org.apache.chemistry.opencmis.fileshare.FileShareService
All Implemented Interfaces:
CmisService, ObjectInfoHandler, AclService, DiscoveryService, MultiFilingService, NavigationService, ObjectService, PolicyService, RelationshipService, RepositoryService, VersioningService

public class FileShareService
extends AbstractCmisService

FileShare service implementation.


Constructor Summary
FileShareService(RepositoryMap repositoryMap)
          Constructor.
 
Method Summary
 java.lang.String create(java.lang.String repositoryId, Properties properties, java.lang.String folderId, ContentStream contentStream, VersioningState versioningState, java.util.List<java.lang.String> policies, ExtensionsData extension)
          Creates a new document, folder or policy.
 java.lang.String createDocument(java.lang.String repositoryId, Properties properties, java.lang.String folderId, ContentStream contentStream, VersioningState versioningState, java.util.List<java.lang.String> policies, Acl addAces, Acl removeAces, ExtensionsData extension)
          Creates a document object of the specified type (given by the cmis:objectTypeId property) in the (optionally) specified location.
 java.lang.String createDocumentFromSource(java.lang.String repositoryId, java.lang.String sourceId, Properties properties, java.lang.String folderId, VersioningState versioningState, java.util.List<java.lang.String> policies, Acl addAces, Acl removeAces, ExtensionsData extension)
          Creates a document object as a copy of the given source document in the (optionally) specified location.
 java.lang.String createFolder(java.lang.String repositoryId, Properties properties, java.lang.String folderId, java.util.List<java.lang.String> policies, Acl addAces, Acl removeAces, ExtensionsData extension)
          Creates a folder object of the specified type (given by the cmis:objectTypeId property) in the specified location.
 void deleteContentStream(java.lang.String repositoryId, Holder<java.lang.String> objectId, Holder<java.lang.String> changeToken, ExtensionsData extension)
          Deletes the content stream for the specified document object.
 void deleteObjectOrCancelCheckOut(java.lang.String repositoryId, java.lang.String objectId, java.lang.Boolean allVersions, ExtensionsData extension)
          Deletes an object or cancels a check out.
 FailedToDeleteData deleteTree(java.lang.String repositoryId, java.lang.String folderId, java.lang.Boolean allVersions, UnfileObject unfileObjects, java.lang.Boolean continueOnFailure, ExtensionsData extension)
          Deletes the specified folder object and all of its child- and descendant-objects.
 Acl getAcl(java.lang.String repositoryId, java.lang.String objectId, java.lang.Boolean onlyBasicPermissions, ExtensionsData extension)
          Get the ACL currently applied to the specified object.
 AllowableActions getAllowableActions(java.lang.String repositoryId, java.lang.String objectId, ExtensionsData extension)
          Gets the list of allowable actions for an object.
 java.util.List<ObjectData> getAllVersions(java.lang.String repositoryId, java.lang.String objectId, java.lang.String versionSeriesId, java.lang.String filter, java.lang.Boolean includeAllowableActions, ExtensionsData extension)
          Returns the list of all document objects in the specified version series, sorted by the property "cmis:creationDate" descending.
 CallContext getCallContext()
           
 ObjectList getCheckedOutDocs(java.lang.String repositoryId, java.lang.String folderId, java.lang.String filter, java.lang.String orderBy, java.lang.Boolean includeAllowableActions, IncludeRelationships includeRelationships, java.lang.String renditionFilter, java.math.BigInteger maxItems, java.math.BigInteger skipCount, ExtensionsData extension)
          Gets the list of documents that are checked out that the user has access to.
 ObjectInFolderList getChildren(java.lang.String repositoryId, java.lang.String folderId, java.lang.String filter, java.lang.String orderBy, java.lang.Boolean includeAllowableActions, IncludeRelationships includeRelationships, java.lang.String renditionFilter, java.lang.Boolean includePathSegment, java.math.BigInteger maxItems, java.math.BigInteger skipCount, ExtensionsData extension)
          Gets the list of child objects contained in the specified folder.
 ContentStream getContentStream(java.lang.String repositoryId, java.lang.String objectId, java.lang.String streamId, java.math.BigInteger offset, java.math.BigInteger length, ExtensionsData extension)
          Gets the content stream for the specified document object, or gets a rendition stream for a specified rendition of a document or folder object.
 java.util.List<ObjectInFolderContainer> getDescendants(java.lang.String repositoryId, java.lang.String folderId, java.math.BigInteger depth, java.lang.String filter, java.lang.Boolean includeAllowableActions, IncludeRelationships includeRelationships, java.lang.String renditionFilter, java.lang.Boolean includePathSegment, ExtensionsData extension)
          Gets the set of descendant objects contained in the specified folder or any of its child folders.
 ObjectData getFolderParent(java.lang.String repositoryId, java.lang.String folderId, java.lang.String filter, ExtensionsData extension)
          Gets the parent folder object for the specified folder object.
 java.util.List<ObjectInFolderContainer> getFolderTree(java.lang.String repositoryId, java.lang.String folderId, java.math.BigInteger depth, java.lang.String filter, java.lang.Boolean includeAllowableActions, IncludeRelationships includeRelationships, java.lang.String renditionFilter, java.lang.Boolean includePathSegment, ExtensionsData extension)
          Gets the set of descendant folder objects contained in the specified folder.
 ObjectData getObject(java.lang.String repositoryId, java.lang.String objectId, java.lang.String filter, java.lang.Boolean includeAllowableActions, IncludeRelationships includeRelationships, java.lang.String renditionFilter, java.lang.Boolean includePolicyIds, java.lang.Boolean includeAcl, ExtensionsData extension)
          Gets the specified information for the object specified by id.
 ObjectData getObjectByPath(java.lang.String repositoryId, java.lang.String path, java.lang.String filter, java.lang.Boolean includeAllowableActions, IncludeRelationships includeRelationships, java.lang.String renditionFilter, java.lang.Boolean includePolicyIds, java.lang.Boolean includeAcl, ExtensionsData extension)
          Gets the specified information for the object specified by path.
 ObjectData getObjectOfLatestVersion(java.lang.String repositoryId, java.lang.String objectId, java.lang.String versionSeriesId, java.lang.Boolean major, java.lang.String filter, java.lang.Boolean includeAllowableActions, IncludeRelationships includeRelationships, java.lang.String renditionFilter, java.lang.Boolean includePolicyIds, java.lang.Boolean includeAcl, ExtensionsData extension)
          Get the latest document object in the version series.
 java.util.List<ObjectParentData> getObjectParents(java.lang.String repositoryId, java.lang.String objectId, java.lang.String filter, java.lang.Boolean includeAllowableActions, IncludeRelationships includeRelationships, java.lang.String renditionFilter, java.lang.Boolean includeRelativePathSegment, ExtensionsData extension)
          Gets the parent folder(s) for the specified non-folder, fileable object.
 Properties getProperties(java.lang.String repositoryId, java.lang.String objectId, java.lang.String filter, ExtensionsData extension)
          Gets the list of properties for an object.
 Properties getPropertiesOfLatestVersion(java.lang.String repositoryId, java.lang.String objectId, java.lang.String versionSeriesId, java.lang.Boolean major, java.lang.String filter, ExtensionsData extension)
          Get a subset of the properties for the latest document object in the version series.
 java.util.List<RenditionData> getRenditions(java.lang.String repositoryId, java.lang.String objectId, java.lang.String renditionFilter, java.math.BigInteger maxItems, java.math.BigInteger skipCount, ExtensionsData extension)
          Gets the list of associated renditions for the specified object.
 FileShareRepository getRepository()
           
 RepositoryInfo getRepositoryInfo(java.lang.String repositoryId, ExtensionsData extension)
          Returns information about the CMIS repository, the optional capabilities it supports and its access control information if applicable.
 java.util.List<RepositoryInfo> getRepositoryInfos(ExtensionsData extension)
          Returns a list of CMIS repository information available from this CMIS service endpoint.
 TypeDefinitionList getTypeChildren(java.lang.String repositoryId, java.lang.String typeId, java.lang.Boolean includePropertyDefinitions, java.math.BigInteger maxItems, java.math.BigInteger skipCount, ExtensionsData extension)
          Returns the list of object types defined for the repository that are children of the specified type.
 TypeDefinition getTypeDefinition(java.lang.String repositoryId, java.lang.String typeId, ExtensionsData extension)
          Gets the definition of the specified object type.
 java.util.List<TypeDefinitionContainer> getTypeDescendants(java.lang.String repositoryId, java.lang.String typeId, java.math.BigInteger depth, java.lang.Boolean includePropertyDefinitions, ExtensionsData extension)
          Returns the set of descendant object type defined for the repository under the specified type.
 void moveObject(java.lang.String repositoryId, Holder<java.lang.String> objectId, java.lang.String targetFolderId, java.lang.String sourceFolderId, ExtensionsData extension)
          Moves the specified file-able object from one folder to another.
 void setCallContext(CallContext context)
           
 void setContentStream(java.lang.String repositoryId, Holder<java.lang.String> objectId, java.lang.Boolean overwriteFlag, Holder<java.lang.String> changeToken, ContentStream contentStream, ExtensionsData extension)
          Sets the content stream for the specified document object.
 void updateProperties(java.lang.String repositoryId, Holder<java.lang.String> objectId, Holder<java.lang.String> changeToken, Properties properties, ExtensionsData extension)
          Updates properties of the specified object.
 
Methods inherited from class org.apache.chemistry.opencmis.commons.impl.server.AbstractCmisService
addObjectInfo, addObjectToFolder, applyAcl, applyAcl, applyPolicy, cancelCheckOut, checkIn, checkOut, clearObjectInfos, close, createPolicy, createRelationship, deleteObject, getAppliedPolicies, getBooleanProperty, getContentChanges, getDateTimeProperty, getIdProperty, getIntegerProperty, getObjectInfo, getObjectInfoIntern, getObjectRelationships, getStringProperty, query, removeObjectFromFolder, removePolicy
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FileShareService

public FileShareService(RepositoryMap repositoryMap)
Constructor.

Method Detail

setCallContext

public void setCallContext(CallContext context)

getCallContext

public CallContext getCallContext()

getRepository

public FileShareRepository getRepository()

getRepositoryInfo

public RepositoryInfo getRepositoryInfo(java.lang.String repositoryId,
                                        ExtensionsData extension)
Description copied from class: AbstractCmisService
Returns information about the CMIS repository, the optional capabilities it supports and its access control information if applicable.

Implementation Hints:

Specified by:
getRepositoryInfo in interface RepositoryService
Overrides:
getRepositoryInfo in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository

getRepositoryInfos

public java.util.List<RepositoryInfo> getRepositoryInfos(ExtensionsData extension)
Description copied from class: AbstractCmisService
Returns a list of CMIS repository information available from this CMIS service endpoint. In contrast to the CMIS specification this method returns repository infos not only repository ids.

Implementation Hints:

Specified by:
getRepositoryInfos in interface RepositoryService
Specified by:
getRepositoryInfos in class AbstractCmisService

getTypeChildren

public TypeDefinitionList getTypeChildren(java.lang.String repositoryId,
                                          java.lang.String typeId,
                                          java.lang.Boolean includePropertyDefinitions,
                                          java.math.BigInteger maxItems,
                                          java.math.BigInteger skipCount,
                                          ExtensionsData extension)
Description copied from class: AbstractCmisService
Returns the list of object types defined for the repository that are children of the specified type.

Implementation Hints:

Specified by:
getTypeChildren in interface RepositoryService
Specified by:
getTypeChildren in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
typeId - (optional) the typeId of an object type specified in the repository (if not specified the repository MUST return all base object types)
includePropertyDefinitions - (optional) if true the repository MUST return the property definitions for each object type returned (default is false)
maxItems - (optional) the maximum number of items to return in a response (default is repository specific)
skipCount - (optional) number of potential results that the repository MUST skip/page over before returning any results (default is 0)

getTypeDefinition

public TypeDefinition getTypeDefinition(java.lang.String repositoryId,
                                        java.lang.String typeId,
                                        ExtensionsData extension)
Description copied from class: AbstractCmisService
Gets the definition of the specified object type.

Implementation Hints:

Specified by:
getTypeDefinition in interface RepositoryService
Specified by:
getTypeDefinition in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
typeId - typeId of an object type specified in the repository

getTypeDescendants

public java.util.List<TypeDefinitionContainer> getTypeDescendants(java.lang.String repositoryId,
                                                                  java.lang.String typeId,
                                                                  java.math.BigInteger depth,
                                                                  java.lang.Boolean includePropertyDefinitions,
                                                                  ExtensionsData extension)
Description copied from class: AbstractCmisService
Returns the set of descendant object type defined for the repository under the specified type.

Implementation Hints:

Specified by:
getTypeDescendants in interface RepositoryService
Overrides:
getTypeDescendants in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
typeId - (optional) the typeId of an object type specified in the repository (if not specified the repository MUST return all types and MUST ignore the value of the depth parameter)
depth - (optional) the number of levels of depth in the type hierarchy from which to return results (default is repository specific)
includePropertyDefinitions - (optional) if true the repository MUST return the property definitions for each object type returned (default is false)

getChildren

public ObjectInFolderList getChildren(java.lang.String repositoryId,
                                      java.lang.String folderId,
                                      java.lang.String filter,
                                      java.lang.String orderBy,
                                      java.lang.Boolean includeAllowableActions,
                                      IncludeRelationships includeRelationships,
                                      java.lang.String renditionFilter,
                                      java.lang.Boolean includePathSegment,
                                      java.math.BigInteger maxItems,
                                      java.math.BigInteger skipCount,
                                      ExtensionsData extension)
Description copied from class: AbstractCmisService
Gets the list of child objects contained in the specified folder.

Implementation Hints:

Specified by:
getChildren in interface NavigationService
Specified by:
getChildren in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
folderId - the identifier for the folder
filter - (optional) a comma-separated list of query names that defines which properties must be returned by the repository (default is repository specific)
orderBy - (optional) a comma-separated list of query names that define the order of the result set. Each query name must be followed by the ascending modifier "ASC" or the descending modifier "DESC" (default is repository specific)
includeAllowableActions - (optional) if true, then the repository must return the available actions for each object in the result set (default is false)
includeRelationships - (optional) indicates what relationships in which the objects participate must be returned (default is IncludeRelationships.NONE)
renditionFilter - (optional) indicates what set of renditions the repository must return whose kind matches this filter (default is "cmis:none")
includePathSegment - (optional) if true, returns a path segment for each child object for use in constructing that object's path (default is false)
maxItems - (optional) the maximum number of items to return in a response (default is repository specific)
skipCount - (optional) number of potential results that the repository MUST skip/page over before returning any results (default is 0)

getDescendants

public java.util.List<ObjectInFolderContainer> getDescendants(java.lang.String repositoryId,
                                                              java.lang.String folderId,
                                                              java.math.BigInteger depth,
                                                              java.lang.String filter,
                                                              java.lang.Boolean includeAllowableActions,
                                                              IncludeRelationships includeRelationships,
                                                              java.lang.String renditionFilter,
                                                              java.lang.Boolean includePathSegment,
                                                              ExtensionsData extension)
Description copied from class: AbstractCmisService
Gets the set of descendant objects contained in the specified folder or any of its child folders.

Implementation Hints:

Specified by:
getDescendants in interface NavigationService
Overrides:
getDescendants in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
folderId - the identifier for the folder
depth - the number of levels of depth in the folder hierarchy from which to return results
filter - (optional) a comma-separated list of query names that defines which properties must be returned by the repository (default is repository specific)
includeAllowableActions - (optional) if true, then the repository must return the available actions for each object in the result set (default is false)
includeRelationships - (optional) indicates what relationships in which the objects participate must be returned (default is IncludeRelationships.NONE)
renditionFilter - (optional) indicates what set of renditions the repository must return whose kind matches this filter (default is "cmis:none")
includePathSegment - (optional) if true, returns a path segment for each child object for use in constructing that object's path (default is false)

getFolderParent

public ObjectData getFolderParent(java.lang.String repositoryId,
                                  java.lang.String folderId,
                                  java.lang.String filter,
                                  ExtensionsData extension)
Description copied from class: AbstractCmisService
Gets the parent folder object for the specified folder object.

Implementation Hints:

Specified by:
getFolderParent in interface NavigationService
Overrides:
getFolderParent in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
folderId - the identifier for the folder
filter - (optional) a comma-separated list of query names that defines which properties must be returned by the repository (default is repository specific)

getFolderTree

public java.util.List<ObjectInFolderContainer> getFolderTree(java.lang.String repositoryId,
                                                             java.lang.String folderId,
                                                             java.math.BigInteger depth,
                                                             java.lang.String filter,
                                                             java.lang.Boolean includeAllowableActions,
                                                             IncludeRelationships includeRelationships,
                                                             java.lang.String renditionFilter,
                                                             java.lang.Boolean includePathSegment,
                                                             ExtensionsData extension)
Description copied from class: AbstractCmisService
Gets the set of descendant folder objects contained in the specified folder.

Implementation Hints:

Specified by:
getFolderTree in interface NavigationService
Overrides:
getFolderTree in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
folderId - the identifier for the folder
depth - the number of levels of depth in the folder hierarchy from which to return results
filter - (optional) a comma-separated list of query names that defines which properties must be returned by the repository (default is repository specific)
includeAllowableActions - (optional) if true, then the repository must return the available actions for each object in the result set (default is false)
includeRelationships - (optional) indicates what relationships in which the objects participate must be returned (default is IncludeRelationships.NONE)
renditionFilter - (optional) indicates what set of renditions the repository must return whose kind matches this filter (default is "cmis:none")
includePathSegment - (optional) if true, returns a path segment for each child object for use in constructing that object's path (default is false)

getObjectParents

public java.util.List<ObjectParentData> getObjectParents(java.lang.String repositoryId,
                                                         java.lang.String objectId,
                                                         java.lang.String filter,
                                                         java.lang.Boolean includeAllowableActions,
                                                         IncludeRelationships includeRelationships,
                                                         java.lang.String renditionFilter,
                                                         java.lang.Boolean includeRelativePathSegment,
                                                         ExtensionsData extension)
Description copied from class: AbstractCmisService
Gets the parent folder(s) for the specified non-folder, fileable object.

Implementation Hints:

Specified by:
getObjectParents in interface NavigationService
Specified by:
getObjectParents in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
objectId - the identifier for the object
filter - (optional) a comma-separated list of query names that defines which properties must be returned by the repository (default is repository specific)
includeAllowableActions - (optional) if true, then the repository must return the available actions for each object in the result set (default is false)
includeRelationships - (optional) indicates what relationships in which the objects participate must be returned (default is IncludeRelationships.NONE)
renditionFilter - (optional) indicates what set of renditions the repository must return whose kind matches this filter (default is "cmis:none")
includeRelativePathSegment - (optional) if true, returns a relative path segment for each parent object for use in constructing that object's path (default is false)

getCheckedOutDocs

public ObjectList getCheckedOutDocs(java.lang.String repositoryId,
                                    java.lang.String folderId,
                                    java.lang.String filter,
                                    java.lang.String orderBy,
                                    java.lang.Boolean includeAllowableActions,
                                    IncludeRelationships includeRelationships,
                                    java.lang.String renditionFilter,
                                    java.math.BigInteger maxItems,
                                    java.math.BigInteger skipCount,
                                    ExtensionsData extension)
Description copied from class: AbstractCmisService
Gets the list of documents that are checked out that the user has access to.

Implementation Hints:

Specified by:
getCheckedOutDocs in interface NavigationService
Overrides:
getCheckedOutDocs in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
folderId - the identifier for the folder
filter - (optional) a comma-separated list of query names that defines which properties must be returned by the repository (default is repository specific)
orderBy - (optional) a comma-separated list of query names that define the order of the result set. Each query name must be followed by the ascending modifier "ASC" or the descending modifier "DESC" (default is repository specific)
includeAllowableActions - (optional) if true, then the repository must return the available actions for each object in the result set (default is false)
includeRelationships - (optional) indicates what relationships in which the objects participate must be returned (default is IncludeRelationships.NONE)
renditionFilter - (optional) indicates what set of renditions the repository must return whose kind matches this filter (default is "cmis:none")
maxItems - (optional) the maximum number of items to return in a response (default is repository specific)
skipCount - (optional) number of potential results that the repository MUST skip/page over before returning any results (default is 0)

create

public java.lang.String create(java.lang.String repositoryId,
                               Properties properties,
                               java.lang.String folderId,
                               ContentStream contentStream,
                               VersioningState versioningState,
                               java.util.List<java.lang.String> policies,
                               ExtensionsData extension)
Description copied from class: AbstractCmisService
Creates a new document, folder or policy. The property "cmis:objectTypeId" defines the type and implicitly the base type.

Implementation Hints:

Specified by:
create in interface CmisService
Overrides:
create in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
properties - the property values that MUST be applied to the newly created object
folderId - (optional) if specified, the identifier for the folder that MUST be the parent folder for the newly created object
contentStream - (optional) if the object to create is a document object, the content stream that MUST be stored for the newly created document object
versioningState - (optional) if the object to create is a document object, it specifies what the versioning state of the newly created object MUST be (default is VersioningState.MAJOR)
policies - (optional) a list of policy IDs that MUST be applied to the newly created object

createDocument

public java.lang.String createDocument(java.lang.String repositoryId,
                                       Properties properties,
                                       java.lang.String folderId,
                                       ContentStream contentStream,
                                       VersioningState versioningState,
                                       java.util.List<java.lang.String> policies,
                                       Acl addAces,
                                       Acl removeAces,
                                       ExtensionsData extension)
Description copied from class: AbstractCmisService
Creates a document object of the specified type (given by the cmis:objectTypeId property) in the (optionally) specified location.

Implementation Hints:

Specified by:
createDocument in interface ObjectService
Overrides:
createDocument in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
properties - the property values that must be applied to the newly created document object
folderId - (optional) if specified, the identifier for the folder that must be the parent folder for the newly created document object
contentStream - (optional) the content stream that must be stored for the newly created document object
versioningState - (optional) specifies what the versioning state of the newly created object must be (default is VersioningState.MAJOR)
policies - (optional) a list of policy IDs that must be applied to the newly created document object
addAces - (optional) a list of ACEs that must be added to the newly created document object, either using the ACL from folderId if specified, or being applied if no folderId is specified
removeAces - (optional) a list of ACEs that must be removed from the newly created document object, either using the ACL from folderId if specified, or being ignored if no folderId is specified

createDocumentFromSource

public java.lang.String createDocumentFromSource(java.lang.String repositoryId,
                                                 java.lang.String sourceId,
                                                 Properties properties,
                                                 java.lang.String folderId,
                                                 VersioningState versioningState,
                                                 java.util.List<java.lang.String> policies,
                                                 Acl addAces,
                                                 Acl removeAces,
                                                 ExtensionsData extension)
Description copied from class: AbstractCmisService
Creates a document object as a copy of the given source document in the (optionally) specified location.

Implementation Hints:

Specified by:
createDocumentFromSource in interface ObjectService
Overrides:
createDocumentFromSource in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
sourceId - the identifier for the source document
properties - the property values that must be applied to the newly created document object
folderId - (optional) if specified, the identifier for the folder that must be the parent folder for the newly created document object
versioningState - (optional) specifies what the versioning state of the newly created object must be (default is VersioningState.MAJOR)
policies - (optional) a list of policy IDs that must be applied to the newly created document object
addAces - (optional) a list of ACEs that must be added to the newly created document object, either using the ACL from folderId if specified, or being applied if no folderId is specified
removeAces - (optional) a list of ACEs that must be removed from the newly created document object, either using the ACL from folderId if specified, or being ignored if no folderId is specified

createFolder

public java.lang.String createFolder(java.lang.String repositoryId,
                                     Properties properties,
                                     java.lang.String folderId,
                                     java.util.List<java.lang.String> policies,
                                     Acl addAces,
                                     Acl removeAces,
                                     ExtensionsData extension)
Description copied from class: AbstractCmisService
Creates a folder object of the specified type (given by the cmis:objectTypeId property) in the specified location.

Implementation Hints:

Specified by:
createFolder in interface ObjectService
Overrides:
createFolder in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
properties - the property values that must be applied to the newly created folder object
folderId - the identifier for the parent folder
policies - (optional) a list of policy IDs that must be applied to the newly created folder object
addAces - (optional) a list of ACEs that must be added to the newly created folder object, either using the ACL from folderId if specified, or being applied if no folderId is specified
removeAces - (optional) a list of ACEs that must be removed from the newly created folder object, either using the ACL from folderId if specified, or being ignored if no folderId is specified

deleteContentStream

public void deleteContentStream(java.lang.String repositoryId,
                                Holder<java.lang.String> objectId,
                                Holder<java.lang.String> changeToken,
                                ExtensionsData extension)
Description copied from class: AbstractCmisService
Deletes the content stream for the specified document object.

Implementation Hints:

Specified by:
deleteContentStream in interface ObjectService
Overrides:
deleteContentStream in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
objectId - the identifier for the object. The repository might return a different/new object id
changeToken - (optional) the last change token of this object that the client received. The repository might return a new change token (default is null)

deleteObjectOrCancelCheckOut

public void deleteObjectOrCancelCheckOut(java.lang.String repositoryId,
                                         java.lang.String objectId,
                                         java.lang.Boolean allVersions,
                                         ExtensionsData extension)
Description copied from class: AbstractCmisService
Deletes an object or cancels a check out. For the Web Services binding this is always an object deletion. For the AtomPub it depends on the referenced object. If it is a checked out document then the check out must be canceled. If the object is not a checked out document then the object must be deleted.

Implementation Hints:

Specified by:
deleteObjectOrCancelCheckOut in interface CmisService
Overrides:
deleteObjectOrCancelCheckOut in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
objectId - the identifier for the object
allVersions - (optional) If true then delete all versions of the document, otherwise delete only the document object specified (default is true)

deleteTree

public FailedToDeleteData deleteTree(java.lang.String repositoryId,
                                     java.lang.String folderId,
                                     java.lang.Boolean allVersions,
                                     UnfileObject unfileObjects,
                                     java.lang.Boolean continueOnFailure,
                                     ExtensionsData extension)
Description copied from class: AbstractCmisService
Deletes the specified folder object and all of its child- and descendant-objects.

Implementation Hints:

Specified by:
deleteTree in interface ObjectService
Overrides:
deleteTree in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
folderId - the identifier for the folder
allVersions - (optional) If true then delete all versions of the document, otherwise delete only the document object specified (default is true)
unfileObjects - (optional) defines how the repository must process file-able child- or descendant-objects (default is UnfileObject.DELETE)
continueOnFailure - (optional) If true, then the repository should continue attempting to perform this operation even if deletion of a child- or descendant-object in the specified folder cannot be deleted (default is false)

getAllowableActions

public AllowableActions getAllowableActions(java.lang.String repositoryId,
                                            java.lang.String objectId,
                                            ExtensionsData extension)
Description copied from class: AbstractCmisService
Gets the list of allowable actions for an object.

Implementation Hints:

Specified by:
getAllowableActions in interface ObjectService
Overrides:
getAllowableActions in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
objectId - the identifier for the object

getContentStream

public ContentStream getContentStream(java.lang.String repositoryId,
                                      java.lang.String objectId,
                                      java.lang.String streamId,
                                      java.math.BigInteger offset,
                                      java.math.BigInteger length,
                                      ExtensionsData extension)
Description copied from class: AbstractCmisService
Gets the content stream for the specified document object, or gets a rendition stream for a specified rendition of a document or folder object.

Implementation Hints:

Specified by:
getContentStream in interface ObjectService
Overrides:
getContentStream in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
objectId - the identifier for the object

getObject

public ObjectData getObject(java.lang.String repositoryId,
                            java.lang.String objectId,
                            java.lang.String filter,
                            java.lang.Boolean includeAllowableActions,
                            IncludeRelationships includeRelationships,
                            java.lang.String renditionFilter,
                            java.lang.Boolean includePolicyIds,
                            java.lang.Boolean includeAcl,
                            ExtensionsData extension)
Description copied from class: AbstractCmisService
Gets the specified information for the object specified by id.

Implementation Hints:

Specified by:
getObject in interface ObjectService
Specified by:
getObject in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
objectId - the identifier for the object
filter - (optional) a comma-separated list of query names that defines which properties must be returned by the repository (default is repository specific)
includeAllowableActions - (optional) if true, then the repository must return the available actions for the object (default is false)
includeRelationships - (optional) indicates what relationships in which the object participates must be returned (default is IncludeRelationships.NONE)
renditionFilter - (optional) indicates what set of renditions the repository must return whose kind matches this filter (default is "cmis:none")
includePolicyIds - (optional) if true, then the repository must return the policy ids for the object (default is false)
includeAcl - (optional) if true, then the repository must return the ACL for the object (default is false)

getObjectByPath

public ObjectData getObjectByPath(java.lang.String repositoryId,
                                  java.lang.String path,
                                  java.lang.String filter,
                                  java.lang.Boolean includeAllowableActions,
                                  IncludeRelationships includeRelationships,
                                  java.lang.String renditionFilter,
                                  java.lang.Boolean includePolicyIds,
                                  java.lang.Boolean includeAcl,
                                  ExtensionsData extension)
Description copied from class: AbstractCmisService
Gets the specified information for the object specified by path.

Implementation Hints:

Specified by:
getObjectByPath in interface ObjectService
Overrides:
getObjectByPath in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
path - the path to the object
filter - (optional) a comma-separated list of query names that defines which properties must be returned by the repository (default is repository specific)
includeAllowableActions - (optional) if true, then the repository must return the available actions for the object (default is false)
includeRelationships - (optional) indicates what relationships in which the object participates must be returned (default is IncludeRelationships.NONE)
renditionFilter - (optional) indicates what set of renditions the repository must return whose kind matches this filter (default is "cmis:none")
includePolicyIds - (optional) if true, then the repository must return the policy ids for the object (default is false)
includeAcl - (optional) if true, then the repository must return the ACL for the object (default is false)

getProperties

public Properties getProperties(java.lang.String repositoryId,
                                java.lang.String objectId,
                                java.lang.String filter,
                                ExtensionsData extension)
Description copied from class: AbstractCmisService
Gets the list of properties for an object.

Implementation Hints:

Specified by:
getProperties in interface ObjectService
Overrides:
getProperties in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
objectId - the identifier for the object
filter - (optional) a comma-separated list of query names that defines which properties must be returned by the repository (default is repository specific)

getRenditions

public java.util.List<RenditionData> getRenditions(java.lang.String repositoryId,
                                                   java.lang.String objectId,
                                                   java.lang.String renditionFilter,
                                                   java.math.BigInteger maxItems,
                                                   java.math.BigInteger skipCount,
                                                   ExtensionsData extension)
Description copied from class: AbstractCmisService
Gets the list of associated renditions for the specified object. Only rendition attributes are returned, not rendition stream.

Implementation Hints:

Specified by:
getRenditions in interface ObjectService
Overrides:
getRenditions in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
objectId - the identifier for the object
renditionFilter - (optional) indicates what set of renditions the repository must return whose kind matches this filter (default is "cmis:none")
maxItems - (optional) the maximum number of items to return in a response (default is repository specific)
skipCount - (optional) number of potential results that the repository must skip/page over before returning any results (default is 0)

moveObject

public void moveObject(java.lang.String repositoryId,
                       Holder<java.lang.String> objectId,
                       java.lang.String targetFolderId,
                       java.lang.String sourceFolderId,
                       ExtensionsData extension)
Description copied from class: AbstractCmisService
Moves the specified file-able object from one folder to another.

Implementation Hints:

Specified by:
moveObject in interface ObjectService
Overrides:
moveObject in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
objectId - the identifier for the object. The repository might return a different/new object id
targetFolderId - the identifier for the target folder
sourceFolderId - the identifier for the source folder

setContentStream

public void setContentStream(java.lang.String repositoryId,
                             Holder<java.lang.String> objectId,
                             java.lang.Boolean overwriteFlag,
                             Holder<java.lang.String> changeToken,
                             ContentStream contentStream,
                             ExtensionsData extension)
Description copied from class: AbstractCmisService
Sets the content stream for the specified document object.

Implementation Hints:

Specified by:
setContentStream in interface ObjectService
Overrides:
setContentStream in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
objectId - the identifier for the object. The repository might return a different/new object id
overwriteFlag - (optional) If true, then the repository must replace the existing content stream for the object (if any) with the input content stream. If If false, then the repository must only set the input content stream for the object if the object currently does not have a content stream (default is true)
changeToken - (optional) the last change token of this object that the client received. The repository might return a new change token (default is null)
contentStream - the content stream

updateProperties

public void updateProperties(java.lang.String repositoryId,
                             Holder<java.lang.String> objectId,
                             Holder<java.lang.String> changeToken,
                             Properties properties,
                             ExtensionsData extension)
Description copied from class: AbstractCmisService
Updates properties of the specified object.

Implementation Hints:

Specified by:
updateProperties in interface ObjectService
Overrides:
updateProperties in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
objectId - the identifier for the object. The repository might return a different/new object id
changeToken - (optional) the last change token of this object that the client received. The repository might return a new change token (default is null)
properties - the updated property values that must be applied to the object

getAllVersions

public java.util.List<ObjectData> getAllVersions(java.lang.String repositoryId,
                                                 java.lang.String objectId,
                                                 java.lang.String versionSeriesId,
                                                 java.lang.String filter,
                                                 java.lang.Boolean includeAllowableActions,
                                                 ExtensionsData extension)
Description copied from class: AbstractCmisService
Returns the list of all document objects in the specified version series, sorted by the property "cmis:creationDate" descending.

Implementation Hints:

Specified by:
getAllVersions in interface VersioningService
Overrides:
getAllVersions in class AbstractCmisService

getObjectOfLatestVersion

public ObjectData getObjectOfLatestVersion(java.lang.String repositoryId,
                                           java.lang.String objectId,
                                           java.lang.String versionSeriesId,
                                           java.lang.Boolean major,
                                           java.lang.String filter,
                                           java.lang.Boolean includeAllowableActions,
                                           IncludeRelationships includeRelationships,
                                           java.lang.String renditionFilter,
                                           java.lang.Boolean includePolicyIds,
                                           java.lang.Boolean includeAcl,
                                           ExtensionsData extension)
Description copied from class: AbstractCmisService
Get the latest document object in the version series.

Implementation Hints:

Specified by:
getObjectOfLatestVersion in interface VersioningService
Overrides:
getObjectOfLatestVersion in class AbstractCmisService

getPropertiesOfLatestVersion

public Properties getPropertiesOfLatestVersion(java.lang.String repositoryId,
                                               java.lang.String objectId,
                                               java.lang.String versionSeriesId,
                                               java.lang.Boolean major,
                                               java.lang.String filter,
                                               ExtensionsData extension)
Description copied from class: AbstractCmisService
Get a subset of the properties for the latest document object in the version series.

Implementation Hints:

Specified by:
getPropertiesOfLatestVersion in interface VersioningService
Overrides:
getPropertiesOfLatestVersion in class AbstractCmisService

getAcl

public Acl getAcl(java.lang.String repositoryId,
                  java.lang.String objectId,
                  java.lang.Boolean onlyBasicPermissions,
                  ExtensionsData extension)
Description copied from class: AbstractCmisService
Get the ACL currently applied to the specified object.

Implementation Hints:

Specified by:
getAcl in interface AclService
Overrides:
getAcl in class AbstractCmisService
Parameters:
repositoryId - the identifier for the repository
objectId - the identifier for the object
onlyBasicPermissions - (optional) an indicator if only basic permissions should be returned (default is true)


Copyright © 2009-2011 The Apache Software Foundation. All Rights Reserved.