X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms.ui%2Fsrc%2Forg%2Fargeo%2Fcms%2Fui%2Finternal%2FJcrFileUploadReceiver.java;h=c2399968b0372b11ce547a7f2cc518faa1d2f855;hb=623a35d1a39522cf8b6a1d6c860ac60a2646f03d;hp=8edfb3e0033a870a2fd2d190c0d34399cdb48a4c;hpb=10aaa7aff828d944077aa2016be1987f2ed47fa8;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 8edfb3e00..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, contentType); + 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); } }