Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/dao/hibernate/class-use/CredentialDAO.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/dao/hibernate/class-use/CredentialDAO.html (.../CredentialDAO.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/dao/hibernate/class-use/CredentialDAO.html (.../CredentialDAO.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.dao.hibernate.CredentialDAO Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/dao/hibernate/class-use/NodeDAO.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/dao/hibernate/class-use/NodeDAO.html (.../NodeDAO.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/dao/hibernate/class-use/NodeDAO.html (.../NodeDAO.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.dao.hibernate.NodeDAO Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/dao/hibernate/class-use/WorkspaceDAO.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/dao/hibernate/class-use/WorkspaceDAO.html (.../WorkspaceDAO.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/dao/hibernate/class-use/WorkspaceDAO.html (.../WorkspaceDAO.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.dao.hibernate.WorkspaceDAO Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/IRepositoryAdmin.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/IRepositoryAdmin.html (.../IRepositoryAdmin.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/IRepositoryAdmin.html (.../IRepositoryAdmin.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + IRepositoryAdmin Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/IRepositoryService.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/IRepositoryService.html (.../IRepositoryService.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/IRepositoryService.html (.../IRepositoryService.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + IRepositoryService Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/RepositoryProxy.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/RepositoryProxy.html (.../RepositoryProxy.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/RepositoryProxy.html (.../RepositoryProxy.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + RepositoryProxy Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/SimpleCredentials.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/SimpleCredentials.html (.../SimpleCredentials.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/SimpleCredentials.html (.../SimpleCredentials.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + SimpleCredentials Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/SimpleRepository.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/SimpleRepository.html (.../SimpleRepository.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/SimpleRepository.html (.../SimpleRepository.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + SimpleRepository @@ -476,9 +476,9 @@
Parameters:
credentials - The credentials of the user
workspaceName - the name of a workspace.
Returns:
a valid ITicket for the user to access the repository.
Throws: +
AccessDeniedException - User is not allowed to access this workspace.
LoginException - Login authentication fails. -
WorkspaceNotFoundException - Workspace name doesn't exist. -
AccessDeniedException - User is not allowed to access this workspace. +
WorkspaceNotFoundException - Workspace name doesn't exist.

@@ -655,8 +655,8 @@
Parameters:
ticket - ticket issued on login. Identifies tool and workspace - mandatory
istream - new file, as an input stream - mandatory
mimeType - mime type of file - optional
versionDescription - human readable comment about the version - optional
Returns:
nodeKey (uuid and version)
Throws: -
InvalidParameterException - if a required parameter is missing
FileException - if unable to save node due to file error +
InvalidParameterException - if a required parameter is missing
AccessDeniedException - if ticket doesn't allow this action
@@ -688,8 +688,8 @@
Parameters:
ticket - ticket issued on login. Identifies tool and workspace - mandatory
dirPath - directory path containing files - mandatory
startFile - relative path of initial file - optional
versionDescription - human readable comment about the version - optional
Returns:
nodeKey (uuid and version)
Throws: -
InvalidParameterException - if a required parameter is missing
FileException - if unable to save node due to file error +
InvalidParameterException - if a required parameter is missing
AccessDeniedException - if ticket doesn't allow this action
@@ -755,8 +755,8 @@
Returns:
node.
Throws:
AccessDeniedException - if ticket doesn't allow this action -
FileException - if unable to save node due to file error -
ItemNotFoundException - if node with uuid cannot be found +
ItemNotFoundException - if node with uuid cannot be found +
FileException - if unable to save node due to file error

@@ -782,9 +782,9 @@
Parameters:
ticket -
uuid - uuid of the package node
version - version of the package node
Returns:
list of all nodes for package.
Throws: -
AccessDeniedException +
FileException
ItemNotFoundException -
FileException +
AccessDeniedException

@@ -865,10 +865,10 @@
Parameters:
ticket - ticket issued on login. Identifies tool and workspace - mandatory
uuid - unique id of the file - mandatory
istream - new file, as an input stream - mandatory
versionDescription - human readable comment about the version - optional
mimeType - mime type of file - optional
Throws: -
FileException - if unable to save node due to file error
InvalidParameterException - if a required parameter is missing -
ItemNotFoundException - if node with uuid cannot be found -
AccessDeniedException - if ticket doesn't allow this action
+
AccessDeniedException - if ticket doesn't allow this action +
FileException - if unable to save node due to file error +
ItemNotFoundException - if node with uuid cannot be found

@@ -901,10 +901,10 @@
Parameters:
ticket - ticket issued on login. Identifies tool and workspace - mandatory
uuid - unique id of the package - mandatory
dirPath - directory path containing files - mandatory
startFile - relative path of initial file - optional
versionDescription - human readable comment about the version - optional
Returns:
nodeKey (uuid and version)
Throws: +
FileException - if unable to save node due to file error
AccessDeniedException - if ticket doesn't allow this action
ItemNotFoundException - if node with uuid cannot be found -
InvalidParameterException - if a required parameter is missing -
FileException - if unable to save node due to file error +
InvalidParameterException - if a required parameter is missing

@@ -964,8 +964,8 @@
Returns:
the list of file(paths) that could not be deleted. The db entries will have been deleted but these files could not be deleted.
Throws: -
ItemNotFoundException - if node with uuid cannot be found
InvalidParameterException - if a required parameter is missing +
ItemNotFoundException - if node with uuid cannot be found
AccessDeniedException - if ticket doesn't allow this action
@@ -1003,8 +1003,8 @@
Returns:
the list of file(paths) that could not be deleted. The db entries will have been deleted but these files could not be deleted.
Throws: -
InvalidParameterException - if a required parameter is missing
ItemNotFoundException - if node with uuid cannot be found +
InvalidParameterException - if a required parameter is missing
AccessDeniedException - if ticket doesn't allow this action
Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/SimpleTicket.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/SimpleTicket.html (.../SimpleTicket.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/SimpleTicket.html (.../SimpleTicket.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + SimpleTicket Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/SimpleVersionedNode.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/SimpleVersionedNode.html (.../SimpleVersionedNode.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/SimpleVersionedNode.html (.../SimpleVersionedNode.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + SimpleVersionedNode Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/IRepositoryAdmin.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/IRepositoryAdmin.html (.../IRepositoryAdmin.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/IRepositoryAdmin.html (.../IRepositoryAdmin.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Interface org.lamsfoundation.lams.contentrepository.service.IRepositoryAdmin Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/IRepositoryService.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/IRepositoryService.html (.../IRepositoryService.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/IRepositoryService.html (.../IRepositoryService.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Interface org.lamsfoundation.lams.contentrepository.service.IRepositoryService @@ -114,6 +114,22 @@  IRepositoryService +ToolDownload.getRepositoryService() + +
+            + + + +abstract  IRepositoryService +Download.getRepositoryService() + +
+            + + + + IRepositoryService IToolContentHandler.getRepositoryService()
Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/RepositoryProxy.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/RepositoryProxy.html (.../RepositoryProxy.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/RepositoryProxy.html (.../RepositoryProxy.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.service.RepositoryProxy Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/SimpleCredentials.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/SimpleCredentials.html (.../SimpleCredentials.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/SimpleCredentials.html (.../SimpleCredentials.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.service.SimpleCredentials Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/SimpleRepository.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/SimpleRepository.html (.../SimpleRepository.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/SimpleRepository.html (.../SimpleRepository.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.service.SimpleRepository Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/SimpleTicket.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/SimpleTicket.html (.../SimpleTicket.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/SimpleTicket.html (.../SimpleTicket.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.service.SimpleTicket Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/SimpleVersionedNode.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/SimpleVersionedNode.html (.../SimpleVersionedNode.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/class-use/SimpleVersionedNode.html (.../SimpleVersionedNode.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.service.SimpleVersionedNode Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/package-frame.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/package-frame.html (.../package-frame.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/package-frame.html (.../package-frame.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + org.lamsfoundation.lams.contentrepository.service Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/package-summary.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/package-summary.html (.../package-summary.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/package-summary.html (.../package-summary.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + org.lamsfoundation.lams.contentrepository.service Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/package-tree.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/package-tree.html (.../package-tree.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/package-tree.html (.../package-tree.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + org.lamsfoundation.lams.contentrepository.service Class Hierarchy Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/package-use.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/package-use.html (.../package-use.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/service/package-use.html (.../package-use.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Package org.lamsfoundation.lams.contentrepository.service Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/AddFileContentAction.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/AddFileContentAction.html (.../AddFileContentAction.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/AddFileContentAction.html (.../AddFileContentAction.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + AddFileContentAction Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/Download.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/Download.html (.../Download.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/Download.html (.../Download.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Download Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/LoginRepositoryAction.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/LoginRepositoryAction.html (.../LoginRepositoryAction.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/LoginRepositoryAction.html (.../LoginRepositoryAction.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + LoginRepositoryAction Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/NodeSelectionAction.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/NodeSelectionAction.html (.../NodeSelectionAction.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/NodeSelectionAction.html (.../NodeSelectionAction.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + NodeSelectionAction Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/RepositoryDispatchAction.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/RepositoryDispatchAction.html (.../RepositoryDispatchAction.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/RepositoryDispatchAction.html (.../RepositoryDispatchAction.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + RepositoryDispatchAction Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/TestLogin.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/TestLogin.html (.../TestLogin.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/TestLogin.html (.../TestLogin.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + TestLogin Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/AddFileContentAction.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/AddFileContentAction.html (.../AddFileContentAction.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/AddFileContentAction.html (.../AddFileContentAction.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.struts.action.AddFileContentAction Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/Download.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/Download.html (.../Download.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/Download.html (.../Download.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.struts.action.Download Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/LoginRepositoryAction.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/LoginRepositoryAction.html (.../LoginRepositoryAction.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/LoginRepositoryAction.html (.../LoginRepositoryAction.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.struts.action.LoginRepositoryAction Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/NodeSelectionAction.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/NodeSelectionAction.html (.../NodeSelectionAction.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/NodeSelectionAction.html (.../NodeSelectionAction.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.struts.action.NodeSelectionAction Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/RepositoryDispatchAction.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/RepositoryDispatchAction.html (.../RepositoryDispatchAction.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/RepositoryDispatchAction.html (.../RepositoryDispatchAction.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.struts.action.RepositoryDispatchAction Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/TestLogin.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/TestLogin.html (.../TestLogin.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/class-use/TestLogin.html (.../TestLogin.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.struts.action.TestLogin Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/package-frame.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/package-frame.html (.../package-frame.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/package-frame.html (.../package-frame.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + org.lamsfoundation.lams.contentrepository.struts.action Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/package-summary.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/package-summary.html (.../package-summary.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/package-summary.html (.../package-summary.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + org.lamsfoundation.lams.contentrepository.struts.action Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/package-tree.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/package-tree.html (.../package-tree.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/package-tree.html (.../package-tree.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + org.lamsfoundation.lams.contentrepository.struts.action Class Hierarchy Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/package-use.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/package-use.html (.../package-use.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/action/package-use.html (.../package-use.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Package org.lamsfoundation.lams.contentrepository.struts.action Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/AddFileContentForm.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/AddFileContentForm.html (.../AddFileContentForm.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/AddFileContentForm.html (.../AddFileContentForm.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + AddFileContentForm Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/LoginRepositoryForm.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/LoginRepositoryForm.html (.../LoginRepositoryForm.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/LoginRepositoryForm.html (.../LoginRepositoryForm.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + LoginRepositoryForm Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/NodeSelectionForm.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/NodeSelectionForm.html (.../NodeSelectionForm.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/NodeSelectionForm.html (.../NodeSelectionForm.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + NodeSelectionForm Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/class-use/AddFileContentForm.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/class-use/AddFileContentForm.html (.../AddFileContentForm.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/class-use/AddFileContentForm.html (.../AddFileContentForm.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.struts.form.AddFileContentForm Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/class-use/LoginRepositoryForm.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/class-use/LoginRepositoryForm.html (.../LoginRepositoryForm.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/class-use/LoginRepositoryForm.html (.../LoginRepositoryForm.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.struts.form.LoginRepositoryForm Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/class-use/NodeSelectionForm.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/class-use/NodeSelectionForm.html (.../NodeSelectionForm.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/class-use/NodeSelectionForm.html (.../NodeSelectionForm.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Class org.lamsfoundation.lams.contentrepository.struts.form.NodeSelectionForm Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/package-frame.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/package-frame.html (.../package-frame.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/package-frame.html (.../package-frame.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + org.lamsfoundation.lams.contentrepository.struts.form Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/package-summary.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/package-summary.html (.../package-summary.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/package-summary.html (.../package-summary.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + org.lamsfoundation.lams.contentrepository.struts.form Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/package-tree.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/package-tree.html (.../package-tree.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/package-tree.html (.../package-tree.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + org.lamsfoundation.lams.contentrepository.struts.form Class Hierarchy Index: lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/package-use.html =================================================================== diff -u -rc678d9c6d714a78885f0a83a16f198ca726a4799 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/package-use.html (.../package-use.html) (revision c678d9c6d714a78885f0a83a16f198ca726a4799) +++ lams_contentrepository/doc/org/lamsfoundation/lams/contentrepository/struts/form/package-use.html (.../package-use.html) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -2,7 +2,7 @@ - + Uses of Package org.lamsfoundation.lams.contentrepository.struts.form Index: lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/Download.java =================================================================== diff -u -re16f09694ef763b1acafa32958762c90332b8228 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/Download.java (.../Download.java) (revision e16f09694ef763b1acafa32958762c90332b8228) +++ lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/Download.java (.../Download.java) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -42,42 +42,43 @@ import org.lamsfoundation.lams.contentrepository.PropertyName; import org.lamsfoundation.lams.contentrepository.RepositoryCheckedException; import org.lamsfoundation.lams.contentrepository.ValueFormatException; +import org.lamsfoundation.lams.contentrepository.service.IRepositoryService; import org.springframework.web.context.WebApplicationContext; import org.springframework.web.context.support.WebApplicationContextUtils; /** * This is a specialised servlet that supports the downloading of single * files and the rendering of packages. - * + *

* It has a rather odd format - you can call it initially with - * the file/package uuid (and optional version) using - * download?uuid=<uuid>&version=<version>. + * the file/package uuid (and optional version and preferDownload parameters) using
+ * download?uuid=<uuid>&version=<version>&preferDownload=[true|false]. + *

* If it is a file, then the file is downloaded. If it is a package, then - * it redirects to download/<uuid>/<version>/relPath + * it redirects to download/<uuid>/<version>/relPath?preferDownload=false * where the <uuid> and <version> are the uuid and version * of the package node. - * + *

* The download/<uuid>/<version>/relPath should only be used * internally - the servlet should be called with the parameter * version initially. - * + *

* This / format allows the relative pathed links * within an html file to work properly. - * + *

* If you want to try to download the file rather than display the file, * add the parameter preferDownload=true to the url. This is only meaningful * for a file - it is ignored for packages. - * - * The servlet accesses the content repository via a tool's ToolContentHandler - * implementation. It looks for the bean IToolContentHandler.SPRING_BEAN_NAME - * in the web based Spring context. If you do not have a ToolContentHandler - * implementation then this servlet will not work. If you have an implementation - * but you use a different name for the bean in the Spring context, then you - * will need to override the getToolContentHandler() method in this servlet. - * @see org.lamsfoundation.lams.contentrepository.client.IToolContentHandler + *

+ * This is an abstract class, to allow other modules to customise the + * repository access. To implement, you must implement getTicket() + * and getRepositoryService(). If you are using ToolContentHandler, + * then you can use ToolDownload, which is a concrete implementation + * of this class using the ToolContentHandler. * * @author Fiona Malikoff + * @see org.lamsfoundation.lams.contentrepository.client.ToolDownload */ /* A package node could be handled by either getting the @@ -102,34 +103,27 @@ */ -public class Download extends HttpServlet { +public abstract class Download extends HttpServlet { public static final String UUID_NAME = "uuid"; public static final String VERSION_NAME = "version"; public static final String PREFER_DOWNLOAD = "preferDownload"; protected static Logger log = Logger.getLogger(Download.class); - protected static IToolContentHandler toolContentHandler = null; - + private static final String expectedFormat = "Expected format /download?" +UUID_NAME +"&" +VERSION_NAME - +"= (version number optional) or /download///"; - /** - * Constructor of the object. - */ - public Download() { - super(); - } + +"=" + +PREFER_DOWNLOAD + +"= (version number optional) or /download///"; - /** - * Destruction of the servlet.
- */ - public void destroy() { - super.destroy(); - } + /** Get the ticket that may be used to access the repository. +*/ + public abstract ITicket getTicket() throws RepositoryCheckedException; + public abstract IRepositoryService getRepositoryService() throws RepositoryCheckedException; /** * The doGet method of the servlet.
@@ -158,7 +152,7 @@ long start = System.currentTimeMillis(); - ITicket ticket = getToolContentHandler().getTicket(false); + ITicket ticket = getTicket(); if ( ticket == null ) { throw new RepositoryCheckedException("Unable to get ticket - getTicket(false) returned null"); } @@ -244,15 +238,15 @@ * the call here so it can be debugged. */ private IVersionedNode getFileItem(ITicket ticket, Long uuid, Long version, String relPathString) - throws AccessDeniedException, ItemNotFoundException, FileException { + throws RepositoryCheckedException { try { IVersionedNode node = null; if ( relPathString != null ) { // get file in package - node = getToolContentHandler().getRepositoryService().getFileItem(ticket,uuid, version, relPathString); + node = getRepositoryService().getFileItem(ticket,uuid, version, relPathString); } else { // get node - node = getToolContentHandler().getRepositoryService().getFileItem(ticket,uuid, version); + node = getRepositoryService().getFileItem(ticket,uuid, version); } return node; } catch ( RuntimeException e ) { @@ -374,15 +368,6 @@ doGet(request, response); } - public IToolContentHandler getToolContentHandler() { - if ( toolContentHandler == null ) { - log.debug("Download servlet calling context and getting repository singleton."); - WebApplicationContext wac = WebApplicationContextUtils.getRequiredWebApplicationContext(getServletContext()); - toolContentHandler = (IToolContentHandler)wac.getBean(IToolContentHandler.SPRING_BEAN_NAME); - } - return toolContentHandler; - } - protected static Long getLong(String longAsString) { try { return new Long(longAsString); Index: lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/IToolContentHandler.java =================================================================== diff -u -re16f09694ef763b1acafa32958762c90332b8228 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/IToolContentHandler.java (.../IToolContentHandler.java) (revision e16f09694ef763b1acafa32958762c90332b8228) +++ lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/IToolContentHandler.java (.../IToolContentHandler.java) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -33,17 +33,14 @@ import org.lamsfoundation.lams.contentrepository.service.IRepositoryService; /** - * ToolContentHander is an abstract class that implements most of the functionality - * of the interface. Each tool extends the abstract class and implements the remaining - * functionality (which is tool specific). - * - * This interface exists so that the Download servlet (@see org.lamsfoundation.lams.contentrepository.client.Download.java) - * can get to the Repository via ToolContentHandler. It needs to call the tool's + * IToolContentHandler defines the ContentHandler interface used by the tools. + * This interface exists so that the ToolDownload servlet can get to the + * Repository via ToolContentHandler. It needs to call the tool's * concrete class, which must be defined in the Spring context as "toolContentHandler" - * (see SPRING_BEAN_NAME). The Download servlet looks for it by name, so if you change - * the name, you will also need to extend the Download servlet to use your own name. + * (see SPRING_BEAN_NAME). * - * For more details on using this class, @see org.lamsfoundation.lams.contentrepository.client.ToolContentHandler. + * @see org.lamsfoundation.lams.contentrepository.client.ToolContentHandler + * @see org.lamsfoundation.lams.contentrepository.client.Download * @author Fiona Malikoff */ public interface IToolContentHandler { Index: lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/ToolContentHandler.java =================================================================== diff -u -re16f09694ef763b1acafa32958762c90332b8228 -r0913afb336848e1d400326b0219be2a1d301cab8 --- lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/ToolContentHandler.java (.../ToolContentHandler.java) (revision e16f09694ef763b1acafa32958762c90332b8228) +++ lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/ToolContentHandler.java (.../ToolContentHandler.java) (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -66,7 +66,7 @@ * It must include a parameter repositoryService, which references a local * value of repositoryService. The "repositoryService" is defined in the * Content Repository's applicationContext.xml. The name "toolContentHandler" - * (IToolContentHandler.SPRING_BEAN_NAME) is also essential as the Download servlet + * (IToolContentHandler.SPRING_BEAN_NAME) is also essential as the ToolDownload servlet * looks for it by this name. * * For example: Index: lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/ToolDownload.java =================================================================== diff -u --- lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/ToolDownload.java (revision 0) +++ lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/ToolDownload.java (revision 0913afb336848e1d400326b0219be2a1d301cab8) @@ -0,0 +1,117 @@ +/* +Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org) + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 +USA + +http://www.gnu.org/licenses/gpl.txt +*/ +package org.lamsfoundation.lams.contentrepository.client; + +import org.lamsfoundation.lams.contentrepository.ITicket; +import org.lamsfoundation.lams.contentrepository.RepositoryCheckedException; +import org.lamsfoundation.lams.contentrepository.service.IRepositoryService; +import org.springframework.web.context.WebApplicationContext; +import org.springframework.web.context.support.WebApplicationContextUtils; + +/** + * Implements the Download servlet, using the ToolContentHandler + * to manage the connection to the repository. + *

+ * Tool's can use this class "as is" to download single files + * previously saved in the content repository. + *

+ * The servlet accesses the content repository via a tool's ToolContentHandler + * implementation. It looks for the bean IToolContentHandler.SPRING_BEAN_NAME + * in the web based Spring context. If you do not have a ToolContentHandler + * implementation then this servlet will not work, or if you use a different + * name for the bean in the Spring context, then you should derive a new + * concrete class from the Download servlet. + *

+ * Sample servlet definition:

+ *  <servlet>
+ *      <description>Instructions Download</description>
+ *      <display-name>Instructions Download</display-name>
+ *      <servlet-name>download</servlet-name>
+ *      <servlet-class>org.lamsfoundation.lams.contentrepository.client.ToolDownload</servlet-class>
+ *      <load-on-startup>3</load-on-startup>
+ *  </servlet>
+ * 
+ *

+ * Sample mapping definition:

+ * 	<servlet-mapping>
+ *		<servlet-name>download</servlet-name>
+ *		<url-pattern>/download/*</url-pattern>
+ * 	</servlet-mapping>
+ * 
+ *

+ * Sample HTML calls:

+ *  <table>
+ *  <tr>
+ *   <td>Filename</td>
+ *   <td></td>
+ *   <td></td>
+ *  </tr>
+ *  <tr>
+ *   <td>SomeFile.jpg</td>
+ *   <td><a href='javascript:launchInstructionsPopup("/lams/tool/lafrum11/download/?uuid=19&preferDownload=false")' class="button">View</a></td>
+ *   <td><a href="/lams/tool/lafrum11/download/?uuid=19&preferDownload=true">Download</a></td>
+ *  </tr>
+ * 
+ *

+ * The launchInstructionsPopup() method is defined in common.js, available as http://.../lams/common.js. + *

+ * For an example of this servlet being used, have a look at the lams_tool_imscp project. + * The jsps/authoring/forum/instructions.jsp calls the servlet and includes/header.jsp + * loads the common.js file. + *

+ * For more details on the request parameters recognised by the ToolDownload servlet, see + * the parent class (Download). + * + * @author Fiona Malikoff + * @see org.lamsfoundation.lams.contentrepository.client.IToolContentHandler + * @see org.lamsfoundation.lams.contentrepository.client.Download + */ +public class ToolDownload extends Download { + + protected static IToolContentHandler toolContentHandler = null; + + /* (non-Javadoc) + * @see org.lamsfoundation.lams.contentrepository.client.Download#getTicket() + */ + public ITicket getTicket() throws RepositoryCheckedException { + getToolContentHandler(); // make sure it is set up + return toolContentHandler != null ? toolContentHandler.getTicket(false):null; + } + + /* (non-Javadoc) + * @see org.lamsfoundation.lams.contentrepository.client.Download#getRepositoryService() + */ + public IRepositoryService getRepositoryService() throws RepositoryCheckedException { + getToolContentHandler(); // make sure it is set up + return toolContentHandler != null? toolContentHandler.getRepositoryService() : null; + } + + protected IToolContentHandler getToolContentHandler() { + if ( toolContentHandler == null ) { + log.debug("ToolDownload servlet calling context and getting repository singleton."); + WebApplicationContext wac = WebApplicationContextUtils.getRequiredWebApplicationContext(getServletContext()); + toolContentHandler = (IToolContentHandler)wac.getBean(IToolContentHandler.SPRING_BEAN_NAME); + } + return toolContentHandler; + } + + +}