Interface ResourceService
- All Superinterfaces:
Serializable
- All Known Implementing Classes:
ResourceServiceImpl
All CRUD as well as versioning functionalities against logicalDOC will be
handled through this service pattern. Therefore it is called the most
common-class where changes must be done during the time. Security mechanism
are also implemented through every method. Therefore the caller
(WebDAV-Implementation) has just pass the required path or
- Author:
- Sebastian Wenzky
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addBookmark
(Resource resource, WebdavSession session) void
checkout
(Resource resource, WebdavSession session) Versioning-part.void
copy
(Resource source, Resource destination, String newName, WebdavSession session) Copying of a resource within logicalDOC.createResource
(Resource parentResource, String name, boolean isCollection, ImportContext context, WebdavSession session) Handle of resource creation by passed parent resource as well as the most import parameters needed for a resource creation.void
deleteBookmark
(Resource resource, WebdavSession session) void
deleteResource
(Resource resource, WebdavSession session) Deletion of a resource within logicalDOC.getChildByName
(Resource parentResource, String name) Based on the parent resource it will be tried to get a child by a specific namegetChildResources
(Resource parentResource) On passing a validgetHistory
(Resource resource) Versioning-part.getParentResource
(Resource resource) Based on the current resource location it will be turned back the upper resourcegetParentResource
(String location, long userId, WebdavSession session) Based on a location pathgetResource
(String location, WebdavSession session) On passing a location as well as the current session you gettin back the appropriated resource.move
(Resource target, Resource destination, String newName, WebdavSession session) Moves a resource named target to the folder dictionary destinationGets the stream for a resourcevoid
uncheckout
(Resource resource, WebdavSession session) Cancels a checkoutvoid
updateResource
(Resource resource, ImportContext context, WebdavSession session) Updating a resource on passing all new properties though a valid resource object.
-
Method Details
-
getResource
Resource getResource(String location, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException On passing a location as well as the current session you gettin back the appropriated resource.- Parameters:
location
- The location retrieved through (@see DavResourceLocator#getResourcePath())session
- The current session- Returns:
- the DAV resource
- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication
-
getChildResources
List<Resource> getChildResources(Resource parentResource) throws org.apache.jackrabbit.webdav.DavException On passing a valid- Parameters:
parentResource
- The resource(mostly a folder) from which are all direct childs has to be fetched and turned back s- Returns:
- direct childs of the parent resource
- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication- See Also:
-
createResource
Resource createResource(Resource parentResource, String name, boolean isCollection, ImportContext context, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException Handle of resource creation by passed parent resource as well as the most import parameters needed for a resource creation.- Parameters:
parentResource
- The parent resource(mostly a folder)name
- the filename and titlename of the childisCollection
- is the resource folder?context
- for inputstreamsession
- the current session- Returns:
- the newly created
Resource
- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication
-
updateResource
void updateResource(Resource resource, ImportContext context, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException Updating a resource on passing all new properties though a valid resource object. This resource object must correspond on the ID attribute with a valid resource in logicalDOC.- Parameters:
resource
- The updateable resourcecontext
- the ImportContextsession
- the current session- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication
-
getChildByName
Resource getChildByName(Resource parentResource, String name) throws org.apache.jackrabbit.webdav.DavException Based on the parent resource it will be tried to get a child by a specific name- Parameters:
parentResource
- The parent resourcename
- name of the child must be- Returns:
- The resource that matches, else it will be returned null
- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication
-
getParentResource
Based on the current resource location it will be turned back the upper resource- Parameters:
resource
- the current resource- Returns:
- the parent resource
- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication
-
getParentResource
Resource getParentResource(String location, long userId, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException Based on a location path- Parameters:
location
- the resource pathuserId
- the user idsession
- the current session- Returns:
- the parent resource
- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication- See Also:
-
the system tries to get the parent resource
-
move
Resource move(Resource target, Resource destination, String newName, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException Moves a resource named target to the folder dictionary destination- Parameters:
target
- the resource that is involveddestination
- the destination folder of the move operationnewName
- optional different name to give to the moved itemsession
- the current session- Returns:
- the moved resource
- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication
-
streamOut
Gets the stream for a resource- Parameters:
resource
- the DAV resource- Returns:
- the stream of the resource
- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communicationn
-
deleteResource
void deleteResource(Resource resource, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException Deletion of a resource within logicalDOC.- Parameters:
resource
- a valid resourcesession
- the current session- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication
-
copy
void copy(Resource source, Resource destination, String newName, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException Copying of a resource within logicalDOC.- Parameters:
source
- the DAV resourcedestination
- target resource (must be a folder)newName
- optional new name for the copied resourcesession
- the current session- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication
-
checkout
void checkout(Resource resource, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException Versioning-part. Checkout causes the system to make a version "overwriteable" to put a new version on it.- Parameters:
resource
- The appropriated resource that has to be checked outsession
- the current session- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication
-
getHistory
Versioning-part. Based upon the current resource, the versionhistory is returned matches to this resource.- Parameters:
resource
- The appropriated resource- Returns:
- All Versions
-
uncheckout
void uncheckout(Resource resource, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException Cancels a checkout- Parameters:
resource
- the DAV resourcesession
- the current session- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication
-
addBookmark
void addBookmark(Resource resource, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException - Throws:
org.apache.jackrabbit.webdav.DavException
-
deleteBookmark
void deleteBookmark(Resource resource, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException - Throws:
org.apache.jackrabbit.webdav.DavException
-