From 471cb428a9e663e014e78c4ec59c4563b47e2cfd Mon Sep 17 00:00:00 2001 From: Francesco Mangiacrapa Date: Tue, 18 Sep 2018 15:42:00 +0000 Subject: [PATCH] fix on upload archive git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/widgets/workspace-uploader@171509 82a268e6-3cf1-43bd-a215-b396298e98cf --- .../server/WorkspaceUploadServletStream.java | 46 ++++++++----------- 1 file changed, 19 insertions(+), 27 deletions(-) diff --git a/src/main/java/org/gcube/portlets/widgets/workspaceuploader/server/WorkspaceUploadServletStream.java b/src/main/java/org/gcube/portlets/widgets/workspaceuploader/server/WorkspaceUploadServletStream.java index aa240ac..72f1b6c 100644 --- a/src/main/java/org/gcube/portlets/widgets/workspaceuploader/server/WorkspaceUploadServletStream.java +++ b/src/main/java/org/gcube/portlets/widgets/workspaceuploader/server/WorkspaceUploadServletStream.java @@ -32,7 +32,6 @@ import org.apache.commons.fileupload.util.Streams; import org.apache.commons.io.FilenameUtils; import org.apache.commons.io.IOUtils; import org.apache.commons.lang.Validate; -import org.gcube.common.homelibrary.util.MimeTypeUtil; import org.gcube.common.portal.PortalContext; import org.gcube.common.storagehub.model.items.FolderItem; import org.gcube.common.storagehub.model.items.Item; @@ -103,6 +102,8 @@ public class WorkspaceUploadServletStream extends HttpServlet implements Servlet public static final String FILE = "File"; + public static final String ARCHIVE = "Archive"; + // public static final String D4ST = Extensions.REPORT_TEMPLATE.getName(); //extension of Report Template type // public static final String D4SR = Extensions.REPORT.getName(); //extension of Report type @@ -539,7 +540,23 @@ public class WorkspaceUploadServletStream extends HttpServlet implements Servlet String contentType = null; //It's set into HL - if(uploadType.compareTo(FILE)==0) {//IS FILE UPLOAD + + if(uploadType.compareTo(ARCHIVE)==0){ //UPLOAD ARCHIVE + + //TODO UPLOAD ARCHIVE + logger.debug("Archive content type: "+uploadItem.getContentType()); + workspaceUploader = WorkspaceUploaderMng.uploadArchive(storageHubWrapper, user, scopeGroupId, workspaceUploader, request, itemName, inputStream, destinationFolder, size); +// if (MimeTypeUtil.isZipContentType(uploadItem.getContentType())){ //UNZIP?? +// logger.debug("Unziping content"); +// //THE WORKSPACE HAS BEEN INSTANCIED ABOVE + + if(workspaceUploader==null) + throw new Exception("Error when creating uploader, it is null!"); + + sendMessage(response, workspaceUploader.getIdentifier()); + + }else{ //UPLOAD FILE. IT IS DEFAULT CASE + //I don't need to check this if(uploadType.compareTo(FILE)==0) {//IS FILE UPLOAD workspaceUploader = WorkspaceUploaderMng.uploadFile(storageHubWrapper, user, scopeGroupId, request, workspaceUploader, request.getSession(), itemName, inputStream, destinationFolder, contentType, isOverwrite, size); @@ -548,33 +565,8 @@ public class WorkspaceUploadServletStream extends HttpServlet implements Servlet sendMessage(response, workspaceUploader.getIdentifier()); - }else {//IS ARCHIVE UPLOAD - - //TODO UPLOAD ARCHIVE - logger.debug("Archive content type: "+uploadItem.getContentType()); - - if (MimeTypeUtil.isZipContentType(uploadItem.getContentType())){ //UNZIP?? - logger.debug("Unziping content"); - //THE WORKSPACE HAS BEEN INSTANCIED ABOVE - workspaceUploader = WorkspaceUploaderMng.uploadArchive(storageHubWrapper, user, scopeGroupId, workspaceUploader, request, itemName, inputStream, destinationFolder, size); - - if(workspaceUploader==null) - throw new Exception("Error when creating uploader, it is null!"); - - sendMessage(response, workspaceUploader.getIdentifier()); - } else{ - //THE WORKSPACE HAS BEEN INSTANCIED ABOVE. DEFAULT CASE IS UPLOADING A FILE - workspaceUploader = WorkspaceUploaderMng.uploadFile(storageHubWrapper, user, scopeGroupId, request, workspaceUploader, request.getSession(), itemName, inputStream, destinationFolder, contentType, isOverwrite, size); - - if(workspaceUploader==null) - throw new Exception("Error when creating uploader, it is null!"); - - sendMessage(response, workspaceUploader.getIdentifier()); - } } - //saveWorkspaceUploaderInSession(workspaceUploader, request.getSession()); -// file.delete(); } catch (InsufficientPrivilegesException e) { logger.error("Error creating elements", e); saveWorkspaceUploaderStatus(workspaceUploader, UPLOAD_STATUS.FAILED, "An error occurred in the upload. Insufficient privileges", request.getSession());