From b25a029c5d8cfa154c55ed4a2fa9ab7794514224 Mon Sep 17 00:00:00 2001 From: pabloFuente Date: Fri, 25 Jan 2019 14:43:54 +0100 Subject: [PATCH] openvidu-server: update file permissions when stopping composed audio-only recs --- .../service/ComposedRecordingService.java | 2 ++ .../recording/service/RecordingService.java | 17 +++++++++++++++++ .../service/SingleStreamRecordingService.java | 14 -------------- 3 files changed, 19 insertions(+), 14 deletions(-) diff --git a/openvidu-server/src/main/java/io/openvidu/server/recording/service/ComposedRecordingService.java b/openvidu-server/src/main/java/io/openvidu/server/recording/service/ComposedRecordingService.java index 47460524..a66f65ad 100644 --- a/openvidu-server/src/main/java/io/openvidu/server/recording/service/ComposedRecordingService.java +++ b/openvidu-server/src/main/java/io/openvidu/server/recording/service/ComposedRecordingService.java @@ -365,6 +365,8 @@ public class ComposedRecordingService extends RecordingService { long finalSize = videoFile.length(); long finalDuration = compositeWrapper.getDuration(); + this.updateFilePermissions(filesPath); + this.sealRecordingMetadataFile(recording, finalSize, finalDuration, filesPath + RecordingManager.RECORDING_ENTITY_FILE + recording.getId()); diff --git a/openvidu-server/src/main/java/io/openvidu/server/recording/service/RecordingService.java b/openvidu-server/src/main/java/io/openvidu/server/recording/service/RecordingService.java index 780ab1a3..3b15cf80 100644 --- a/openvidu-server/src/main/java/io/openvidu/server/recording/service/RecordingService.java +++ b/openvidu-server/src/main/java/io/openvidu/server/recording/service/RecordingService.java @@ -17,6 +17,8 @@ package io.openvidu.server.recording.service; +import java.io.IOException; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -27,6 +29,7 @@ import io.openvidu.java.client.RecordingProperties; import io.openvidu.server.config.OpenviduConfig; import io.openvidu.server.core.Session; import io.openvidu.server.recording.Recording; +import io.openvidu.server.utils.CommandExecutor; import io.openvidu.server.utils.CustomFileWriter; public abstract class RecordingService { @@ -126,6 +129,20 @@ public abstract class RecordingService { return new PropertiesRecordingId(properties, recordingId); } + protected void updateFilePermissions(String folder) { + String command = "chmod -R 777 " + folder; + try { + String response = CommandExecutor.execCommand("/bin/sh", "-c", command); + if ("".equals(response)) { + log.info("Individual recording file permissions successfully updated"); + } else { + log.error("Individual recording file permissions failed to update: {}", response); + } + } catch (IOException | InterruptedException e) { + log.error("Individual recording file permissions failed to update. Error: {}", e.getMessage()); + } + } + protected String getShortSessionId(Session session) { return session.getSessionId().substring(session.getSessionId().lastIndexOf('/') + 1, session.getSessionId().length()); diff --git a/openvidu-server/src/main/java/io/openvidu/server/recording/service/SingleStreamRecordingService.java b/openvidu-server/src/main/java/io/openvidu/server/recording/service/SingleStreamRecordingService.java index 91004bc4..ec9f9935 100644 --- a/openvidu-server/src/main/java/io/openvidu/server/recording/service/SingleStreamRecordingService.java +++ b/openvidu-server/src/main/java/io/openvidu/server/recording/service/SingleStreamRecordingService.java @@ -448,18 +448,4 @@ public class SingleStreamRecordingService extends RecordingService { } } - private void updateFilePermissions(String folder) { - String command = "chmod -R 777 " + folder; - try { - String response = CommandExecutor.execCommand("/bin/sh", "-c", command); - if ("".equals(response)) { - log.info("Individual recording file permissions successfully updated"); - } else { - log.error("Individual recording file permissions failed to update: {}", response); - } - } catch (IOException | InterruptedException e) { - log.error("Individual recording file permissions failed to update. Error: {}", e.getMessage()); - } - } - }