X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms.ui%2Fsrc%2Forg%2Fargeo%2Fcms%2Fui%2Finternal%2FJcrFileUploadReceiver.java;h=c2399968b0372b11ce547a7f2cc518faa1d2f855;hb=94ec9b5a0282c8119ee9831688124bc96f3a62b8;hp=0b76a6f01aabde441c20d6ce917e07027292ea3e;hpb=4b0f656244f364957088bc4dbcfb0c0f692fdc69;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms.ui/src/org/argeo/cms/ui/internal/JcrFileUploadReceiver.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/internal/JcrFileUploadReceiver.java index 0b76a6f01..c2399968b 100644 --- a/org.argeo.cms.ui/src/org/argeo/cms/ui/internal/JcrFileUploadReceiver.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/internal/JcrFileUploadReceiver.java @@ -11,20 +11,23 @@ import javax.jcr.RepositoryException; import javax.jcr.nodetype.NodeType; import org.apache.commons.io.FilenameUtils; -import org.argeo.cms.CmsException; import org.argeo.cms.ui.CmsImageManager; +import org.argeo.cms.ui.widgets.Img; +import org.argeo.jcr.JcrException; import org.argeo.jcr.JcrUtils; import org.eclipse.rap.fileupload.FileDetails; import org.eclipse.rap.fileupload.FileUploadReceiver; public class JcrFileUploadReceiver extends FileUploadReceiver { + private Img img; private final Node parentNode; private final String nodeName; private final CmsImageManager imageManager; /** If nodeName is null, use the uploaded file name */ - public JcrFileUploadReceiver(Node parentNode, String nodeName, CmsImageManager imageManager) { + public JcrFileUploadReceiver(Img img, Node parentNode, String nodeName, CmsImageManager imageManager) { super(); + this.img = img; this.parentNode = parentNode; this.nodeName = nodeName; this.imageManager = imageManager; @@ -36,13 +39,8 @@ public class JcrFileUploadReceiver extends FileUploadReceiver { String fileName = nodeName != null ? nodeName : details.getFileName(); String contentType = details.getContentType(); if (isImage(details.getFileName(), contentType)) { - imageManager.uploadImage(parentNode, fileName, stream); + imageManager.uploadImage(img.getNode(),parentNode, fileName, stream, contentType); return; - // InputStream inputStream = new ByteArrayInputStream(arr); - // ImageData id = new ImageData(inputStream); - // fileNode.addMixin(CmsTypes.CMS_IMAGE); - // fileNode.setProperty(CMS_IMAGE_WIDTH, id.width); - // fileNode.setProperty(CMS_IMAGE_HEIGHT, id.height); } Node fileNode; @@ -60,7 +58,7 @@ public class JcrFileUploadReceiver extends FileUploadReceiver { processNewFile(fileNode); fileNode.getSession().save(); } catch (RepositoryException e) { - throw new CmsException("cannot receive " + details, e); + throw new JcrException("Cannot receive " + details, e); } }