From: <fg...@us...> - 2010-05-10 08:51:44
|
Revision: 2382 http://openutils.svn.sourceforge.net/openutils/?rev=2382&view=rev Author: fgiust Date: 2010-05-10 08:51:38 +0000 (Mon, 10 May 2010) Log Message: ----------- MEDIA-141 Updates from pre-4.0 to 4.2 fails with magnolia 4.3 due changes in binary nodedata handling which affects MoveOriginalNodeTask Modified Paths: -------------- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MoveOriginalNodeTask.java Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MoveOriginalNodeTask.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MoveOriginalNodeTask.java 2010-05-09 18:10:22 UTC (rev 2381) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MoveOriginalNodeTask.java 2010-05-10 08:51:38 UTC (rev 2382) @@ -28,16 +28,19 @@ import info.magnolia.module.delta.Task; import info.magnolia.module.delta.TaskExecutionException; +import java.io.InputStream; import java.util.Collection; import java.util.List; import javax.jcr.RepositoryException; +import javax.jcr.Value; import javax.jcr.nodetype.ConstraintViolationException; import net.sourceforge.openutils.mgnlmedia.media.configuration.MediaConfigurationManager; import net.sourceforge.openutils.mgnlmedia.media.lifecycle.MediaModule; import net.sourceforge.openutils.mgnlmedia.media.types.impl.BaseTypeHandler; +import org.apache.commons.io.IOUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -87,9 +90,11 @@ for (Content media : medias) { NodeData nd = media.getNodeData(nodedataOldName); - if (nd.getValue() != null) + Value value = nd.getValue(); + if (value != null) { - NodeData ndNew = media.createNodeData(BaseTypeHandler.ORGINAL_NODEDATA_NAME, nd.getValue()); + InputStream stream = value.getStream(); + NodeData ndNew = media.createNodeData(BaseTypeHandler.ORGINAL_NODEDATA_NAME, stream); for (String attributeName : ((List<String>) nd.getAttributeNames())) { try @@ -101,6 +106,7 @@ // go on } } + IOUtils.closeQuietly(stream); nd.delete(); } // media.deleteNodeData(nd.getName()); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |