From dafde88721721c88da99267ed49108b55a7e1a29 Mon Sep 17 00:00:00 2001 From: 0xb00bface <0xboobface@gmail.com> Date: Sun, 6 Dec 2020 14:22:28 +0100 Subject: [PATCH] Fix moving of segmented downloads --- CHANGELOG.md | 3 +++ .../main/java/ctbrec/recorder/postprocessing/Move.java | 9 +++++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c9802796..cca931c1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,9 +1,12 @@ 3.10.7 ======================== +* Fixed streaming of recordings from the server (the file path was duplicated + if single file was used) * Fixed credentials related bugs for Streamate and Stripchat They used the user name from Chaturbate for some requests. Whoopsie! * Renamed settings for Chaturbate's user name and password * Add setting to split recordings by size +* Fixed moving of segment recordings on the server (post-processing) 3.10.6 ======================== diff --git a/common/src/main/java/ctbrec/recorder/postprocessing/Move.java b/common/src/main/java/ctbrec/recorder/postprocessing/Move.java index 8070a080..3b33b736 100644 --- a/common/src/main/java/ctbrec/recorder/postprocessing/Move.java +++ b/common/src/main/java/ctbrec/recorder/postprocessing/Move.java @@ -6,6 +6,7 @@ import java.io.IOException; import java.nio.file.Files; import java.util.Objects; +import org.apache.commons.io.FileUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -15,7 +16,7 @@ import ctbrec.recorder.RecordingManager; public class Move extends AbstractPlaceholderAwarePostProcessor { - private static final Logger LOG = LoggerFactory.getLogger(Rename.class); + private static final Logger LOG = LoggerFactory.getLogger(Move.class); public static final String PATH_TEMPLATE = "path.template"; public static final String DEFAULT = "${modelSanitizedName}" + File.separatorChar + "${localDateTime}"; @@ -36,7 +37,11 @@ public class Move extends AbstractPlaceholderAwarePostProcessor { } LOG.info("Moving {} to {}", src.getName(), target.getParentFile().getCanonicalPath()); Files.createDirectories(target.getParentFile().toPath()); - Files.move(rec.getPostProcessedFile().toPath(), target.toPath()); + if (rec.getPostProcessedFile().isDirectory()) { + FileUtils.moveDirectory(rec.getPostProcessedFile(), target); + } else { + FileUtils.moveFile(rec.getPostProcessedFile(), target); + } rec.setPostProcessedFile(target); if (Objects.equals(src, rec.getAbsoluteFile())) { rec.setAbsoluteFile(target);