From 48e2defc9eaef6709d092754be53d7280422d19f Mon Sep 17 00:00:00 2001 From: Robert von Burg Date: Fri, 10 Jan 2014 23:13:41 +0100 Subject: [PATCH] [Bugfix] fixed a bug where FileHelper.copy() didn't recursively copy --- .../java/ch/eitchnet/utils/helper/FileHelper.java | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/main/java/ch/eitchnet/utils/helper/FileHelper.java b/src/main/java/ch/eitchnet/utils/helper/FileHelper.java index 862598d9b..eb0725308 100644 --- a/src/main/java/ch/eitchnet/utils/helper/FileHelper.java +++ b/src/main/java/ch/eitchnet/utils/helper/FileHelper.java @@ -234,8 +234,9 @@ public class FileHelper { } /** - * Copy a given list of {@link File Files}. The renameTo method does not allow action across NFS mounted filesystems - * this method is the workaround + *

+ * Copy a given list of {@link File Files}. Recursively copies the files and directories to the destination. + *

* * @param srcFiles * The source files to copy @@ -255,8 +256,14 @@ public class FileHelper { for (File srcFile : srcFiles) { File dstFile = new File(dstDirectory, srcFile.getName()); - if (!copy(srcFile, dstFile, checksum)) - return false; + if (srcFile.isDirectory()) { + dstFile.mkdir(); + if (!copy(srcFile.listFiles(), dstFile, checksum)) + return false; + } else { + if (!copy(srcFile, dstFile, checksum)) + return false; + } } return true;