[Feature #13327] Checking upload permission before the upload starting
git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/widgets/workspace-uploader@181697 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
c1e9f1f89e
commit
dce66bf75c
|
@ -476,18 +476,24 @@ public class WorkspaceUploadServletStream extends HttpServlet implements Servlet
|
|||
}
|
||||
|
||||
final WorkspaceFolder destinationFolder = (WorkspaceFolder) destinationItem;
|
||||
|
||||
try {
|
||||
workspace.canUserWriteIntoFolder(destinationFolder.getId());
|
||||
} catch (Exception e1) {
|
||||
logger.warn("The user cannot write in the destination folder with id: {}",destinationFolder.getId());
|
||||
saveWorkspaceUploaderStatus(workspaceUploader, UPLOAD_STATUS.FAILED, "You are not authorized to write into folder: "+destinationFolder.getName(), request.getSession());
|
||||
sendError(response, "Internal error: You are not authorized to write into folder: "+destinationFolder.getName());
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
try {
|
||||
|
||||
//CHECKING IF THE USER CAN WRITE IN THE FOLDER
|
||||
boolean canWrite = workspace.canUserWriteIntoFolder(destinationFolder.getId());
|
||||
if(!canWrite) {
|
||||
String notAuthorizedError = "The user cannot write in the folder with id: "+destinationFolder.getId();
|
||||
String folderName = destinationFolder.getName();
|
||||
workspaceUploader.setUploadStatus(UPLOAD_STATUS.FAILED);
|
||||
workspaceUploader.setStatusDescription("You have not permission to upload in the folder: "+folderName);
|
||||
logger.info(notAuthorizedError);
|
||||
try {
|
||||
WsUtil.putWorkspaceUploaderInSession(request.getSession(), workspaceUploader);
|
||||
} catch (Exception e1) {
|
||||
logger.error("Error during WorkspaceUploaderItem session update: ",e1);
|
||||
}
|
||||
}
|
||||
|
||||
//Removing path from fileName
|
||||
String itemName = fileName;
|
||||
//Getting extension
|
||||
|
|
Loading…
Reference in New Issue