Class ResourceServiceImpl
- java.lang.Object
-
- com.logicaldoc.webdav.resource.service.ResourceServiceImpl
-
- All Implemented Interfaces:
ResourceService
,Serializable
public class ResourceServiceImpl extends Object implements ResourceService
Base implementation of a ResourceService- Author:
- Sebastian Wenzky
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ResourceServiceImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
checkout(Resource resource, WebdavSession session)
Versioning-part.void
copyResource(Resource destinationResource, Resource resource, WebdavSession session)
Copying of a resource within logicalDOC.Resource
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
deleteResource(Resource resource, WebdavSession session)
Deletion of a resource within logicalDOC.Resource
getChildByName(Resource parentResource, String name)
Based on the parent resource it will be tried to get a child by a specific nameList<Resource>
getChildResources(Resource parentResource)
On passing a validList<Resource>
getHistory(Resource resource)
Versioning-part.Resource
getParentResource(Resource resource)
Based on the current resource location it will be turned back the upper resourceResource
getParentResource(String resourcePath, long userId, WebdavSession session)
Based on a location pathResource
getResource(String requestPath, WebdavSession session)
On passing a location as well as the current session you gettin back the appropriated resource.boolean
isCheckedOut(Resource resource)
Resource
move(Resource source, Resource destination, WebdavSession session)
Moves a resource named target to the folder dictionary destinationboolean
resourceExists(Resource resource)
Check for existing resource(logically)void
setDocumentDAO(DocumentDAO documentDAO)
void
setDocumentManager(DocumentManager documentManager)
void
setFolderDAO(FolderDAO folderDAO)
void
setStorer(Storer storer)
void
setUserDAO(UserDAO userDAO)
void
setVersionDAO(VersionDAO versionDAO)
void
streamIn(Resource resource, InputStream is)
Sets the stream for a resourceInputStream
streamOut(Resource resource)
Gets the stream for a resourcevoid
uncheckout(Resource resource, WebdavSession session)
Cancels a checkoutResource
updateResource(Resource resource)
Updating a resource on passing all new properties though a valid resource object.void
updateResource(Resource resource, ImportContext context, WebdavSession session)
Updating a resource on passing all new properties though a valid resource object.
-
-
-
Method Detail
-
setUserDAO
public void setUserDAO(UserDAO userDAO)
-
setDocumentDAO
public void setDocumentDAO(DocumentDAO documentDAO)
-
setDocumentManager
public void setDocumentManager(DocumentManager documentManager)
-
getChildResources
public List<Resource> getChildResources(Resource parentResource) throws org.apache.jackrabbit.webdav.DavException
Description copied from interface:ResourceService
On passing a valid- Specified by:
getChildResources
in interfaceResourceService
- 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:
all resources (Folders as well as documents) will be returned - unsorted.
-
getResource
public Resource getResource(String requestPath, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException
Description copied from interface:ResourceService
On passing a location as well as the current session you gettin back the appropriated resource.- Specified by:
getResource
in interfaceResourceService
- Parameters:
requestPath
- 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
-
getParentResource
public Resource getParentResource(String resourcePath, long userId, WebdavSession session)
Description copied from interface:ResourceService
Based on a location path- Specified by:
getParentResource
in interfaceResourceService
- Parameters:
resourcePath
- the resource pathuserId
- the user idsession
- the current session- Returns:
- the parent resource
- See Also:
ResourceService.getChildByName(Resource, String)
-
createResource
public Resource createResource(Resource parentResource, String name, boolean isCollection, ImportContext context, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException
Description copied from interface:ResourceService
Handle of resource creation by passed parent resource as well as the most import parameters needed for a resource creation.- Specified by:
createResource
in interfaceResourceService
- 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
public void updateResource(Resource resource, ImportContext context, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException
Description copied from interface:ResourceService
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.- Specified by:
updateResource
in interfaceResourceService
- Parameters:
resource
- The updateable resourcecontext
- the ImportContextsession
- the current session- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication
-
getChildByName
public Resource getChildByName(Resource parentResource, String name)
Description copied from interface:ResourceService
Based on the parent resource it will be tried to get a child by a specific name- Specified by:
getChildByName
in interfaceResourceService
- Parameters:
parentResource
- The parent resourcename
- name of the child must be- Returns:
- The resource that matches, else it will be returned null
-
resourceExists
public boolean resourceExists(Resource resource)
Description copied from interface:ResourceService
Check for existing resource(logically)- Specified by:
resourceExists
in interfaceResourceService
- Parameters:
resource
- The Resource- Returns:
- True if found else false
-
updateResource
public Resource updateResource(Resource resource)
Description copied from interface:ResourceService
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.- Specified by:
updateResource
in interfaceResourceService
- Parameters:
resource
- The updateable resource- Returns:
- the updated resource
-
move
public Resource move(Resource source, Resource destination, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException
Description copied from interface:ResourceService
Moves a resource named target to the folder dictionary destination- Specified by:
move
in interfaceResourceService
- Parameters:
source
- the resource that is involveddestination
- the destination of the move operationsession
- the current session- Returns:
- the moved resource
- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication
-
deleteResource
public void deleteResource(Resource resource, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException
Description copied from interface:ResourceService
Deletion of a resource within logicalDOC.- Specified by:
deleteResource
in interfaceResourceService
- Parameters:
resource
- a valid resourcesession
- the current session- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication
-
copyResource
public void copyResource(Resource destinationResource, Resource resource, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException
Description copied from interface:ResourceService
Copying of a resource within logicalDOC. Not supported those days.- Specified by:
copyResource
in interfaceResourceService
- Parameters:
destinationResource
- target resourceresource
- the DAV resourcesession
- the current session- Throws:
org.apache.jackrabbit.webdav.DavException
- error in the DAV communication
-
getParentResource
public Resource getParentResource(Resource resource)
Description copied from interface:ResourceService
Based on the current resource location it will be turned back the upper resource- Specified by:
getParentResource
in interfaceResourceService
- Parameters:
resource
- the current resource- Returns:
- the parent resource
-
streamIn
public void streamIn(Resource resource, InputStream is)
Description copied from interface:ResourceService
Sets the stream for a resource- Specified by:
streamIn
in interfaceResourceService
- Parameters:
resource
- the DAV resourceis
- the stream gor the resource
-
streamOut
public InputStream streamOut(Resource resource)
Description copied from interface:ResourceService
Gets the stream for a resource- Specified by:
streamOut
in interfaceResourceService
- Parameters:
resource
- the DAV resource- Returns:
- the stream of the resource
-
checkout
public void checkout(Resource resource, WebdavSession session) throws org.apache.jackrabbit.webdav.DavException
Description copied from interface:ResourceService
Versioning-part. Checkout causes the system to make a version "overwriteable" to put a new version on it.- Specified by:
checkout
in interfaceResourceService
- 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
-
isCheckedOut
public boolean isCheckedOut(Resource resource) throws NumberFormatException, PersistenceException
-
getHistory
public List<Resource> getHistory(Resource resource)
Description copied from interface:ResourceService
Versioning-part. Based upon the current resource, the versionhistory is returned matches to this resource.- Specified by:
getHistory
in interfaceResourceService
- Parameters:
resource
- The appropriated resource- Returns:
- All Versions
-
uncheckout
public void uncheckout(Resource resource, WebdavSession session)
Description copied from interface:ResourceService
Cancels a checkout- Specified by:
uncheckout
in interfaceResourceService
- Parameters:
resource
- the DAV resourcesession
- the current session
-
setVersionDAO
public void setVersionDAO(VersionDAO versionDAO)
-
setFolderDAO
public void setFolderDAO(FolderDAO folderDAO)
-
setStorer
public void setStorer(Storer storer)
-
-