You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-scm@portals.apache.org by es...@apache.org on 2007/07/13 07:24:56 UTC
svn commit: r555878 - in
/portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble:
AbstractArchiveAssembler.java file/FileAssembler.java
Author: esm
Date: Thu Jul 12 22:24:55 2007
New Revision: 555878
URL: http://svn.apache.org/viewvc?view=rev&rev=555878
Log:
[PLUTO-390]: renameTo(File) is implementation specific. If the rename fails, copy the file instead. (trunk)
Modified:
portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/AbstractArchiveAssembler.java
portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/file/FileAssembler.java
Modified: portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/AbstractArchiveAssembler.java
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/AbstractArchiveAssembler.java?view=diff&rev=555878&r1=555877&r2=555878
==============================================================================
--- portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/AbstractArchiveAssembler.java (original)
+++ portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/AbstractArchiveAssembler.java Thu Jul 12 22:24:55 2007
@@ -19,6 +19,7 @@
import java.io.File;
import java.io.IOException;
+import org.apache.commons.io.FileUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.pluto.util.UtilityException;
@@ -61,7 +62,12 @@
dest = File.createTempFile( source.getName(), ".tmp" );
config.setDestination( dest );
assembleInternal( config );
- dest.renameTo( source );
+ // renameTo() is impl-specific
+ boolean success = dest.renameTo( source );
+ if (! success ) {
+ // do it the old-fashioned way
+ FileUtils.copyFile( dest, source );
+ }
} else {
if ( LOG.isDebugEnabled() ) {
LOG.debug( "Performing assembly of " + config.getSource().getAbsolutePath() + " to " +
Modified: portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/file/FileAssembler.java
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/file/FileAssembler.java?view=diff&rev=555878&r1=555877&r2=555878
==============================================================================
--- portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/file/FileAssembler.java (original)
+++ portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/file/FileAssembler.java Thu Jul 12 22:24:55 2007
@@ -22,6 +22,7 @@
import java.io.IOException;
import java.io.InputStream;
+import org.apache.commons.io.FileUtils;
import org.apache.pluto.util.UtilityException;
import org.apache.pluto.util.assemble.AssemblerConfig;
import org.apache.pluto.util.assemble.WebXmlRewritingAssembler;
@@ -61,7 +62,11 @@
//Move the temp file to the destination location
destinationDescriptor.delete();
- tempXml.renameTo(destinationDescriptor);
+ // renameTo() is impl-specific
+ boolean success = tempXml.renameTo(destinationDescriptor);
+ if (! success) {
+ FileUtils.copyFile( tempXml, destinationDescriptor );
+ }
}
else {
destinationDescriptor.getParentFile().mkdirs();