X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Finternal%2FImageManagerImpl.java;h=122c24e3554d7886e457a3884c1f69135647dd4d;hb=c873a0359345503b8e3ca07828bd99d525ec7cc0;hp=db36f719f44694cab9c3e0011abb8ebdc7339720;hpb=998cdf60d00ffc35d987bdb373a9676b095f16f8;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/internal/ImageManagerImpl.java b/org.argeo.cms/src/org/argeo/cms/internal/ImageManagerImpl.java index db36f719f..122c24e35 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/ImageManagerImpl.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/ImageManagerImpl.java @@ -24,7 +24,7 @@ import org.argeo.cms.CmsException; import org.argeo.cms.CmsImageManager; import org.argeo.cms.CmsNames; import org.argeo.cms.CmsTypes; -import org.argeo.cms.CmsUtils; +import org.argeo.cms.util.CmsUtils; import org.argeo.jcr.JcrUtils; import org.eclipse.rap.rwt.RWT; import org.eclipse.rap.rwt.service.ResourceManager; @@ -164,24 +164,25 @@ public class ImageManagerImpl implements CmsImageManager, CmsNames { /** @return null if not available */ @Override public String getImageUrl(Node node) throws RepositoryException { - String name = getResourceName(node); - ResourceManager resourceManager = RWT.getResourceManager(); - if (!resourceManager.isRegistered(name)) { - InputStream inputStream = null; - Binary binary = getImageBinary(node); - if (binary == null) - return null; - try { - inputStream = binary.getStream(); - resourceManager.register(name, inputStream); - } finally { - IOUtils.closeQuietly(inputStream); - JcrUtils.closeQuietly(binary); - } - if (log.isDebugEnabled()) - log.debug("Registered image " + name); - } - return resourceManager.getLocation(name); + return CmsUtils.getDataPath(node); + // String name = getResourceName(node); + // ResourceManager resourceManager = RWT.getResourceManager(); + // if (!resourceManager.isRegistered(name)) { + // InputStream inputStream = null; + // Binary binary = getImageBinary(node); + // if (binary == null) + // return null; + // try { + // inputStream = binary.getStream(); + // resourceManager.register(name, inputStream); + // } finally { + // IOUtils.closeQuietly(inputStream); + // JcrUtils.closeQuietly(binary); + // } + // if (log.isTraceEnabled()) + // log.trace("Registered image " + name); + // } + // return resourceManager.getLocation(name); } protected String getResourceName(Node node) throws RepositoryException { @@ -225,7 +226,7 @@ public class ImageManagerImpl implements CmsImageManager, CmsNames { if (parentNode.hasNode(fileName)) { Node node = parentNode.getNode(fileName); previousResourceName = getResourceName(node); - if (node.hasNode(JCR_CONTENT)){ + if (node.hasNode(JCR_CONTENT)) { node.getNode(JCR_CONTENT).remove(); node.addNode(JCR_CONTENT, NT_RESOURCE); } @@ -245,7 +246,8 @@ public class ImageManagerImpl implements CmsImageManager, CmsNames { // reset resource manager ResourceManager resourceManager = RWT.getResourceManager(); - if (resourceManager.isRegistered(previousResourceName)) { + if (previousResourceName != null + && resourceManager.isRegistered(previousResourceName)) { resourceManager.unregister(previousResourceName); if (log.isDebugEnabled()) log.debug("Unregistered image " + previousResourceName);