diff --git a/openvidu-server/src/main/java/io/openvidu/server/OpenViduServer.java b/openvidu-server/src/main/java/io/openvidu/server/OpenViduServer.java index 755d9824..d83cb892 100644 --- a/openvidu-server/src/main/java/io/openvidu/server/OpenViduServer.java +++ b/openvidu-server/src/main/java/io/openvidu/server/OpenViduServer.java @@ -19,6 +19,8 @@ import java.io.IOException; import java.net.URL; import java.util.List; +import javax.ws.rs.ProcessingException; + import org.kurento.jsonrpc.JsonUtils; import org.kurento.jsonrpc.internal.server.config.JsonRpcConfiguration; import org.kurento.jsonrpc.server.JsonRpcConfigurer; @@ -199,7 +201,15 @@ public class OpenViduServer implements JsonRpcConfigurer { RecordingService recordingService = context.getBean(RecordingService.class); System.out.println("Recording module required: Downloading openvidu/openvidu-recording Docker image (800 MB aprox)"); - if (recordingService.recordingImageExistsLocally()) { + boolean imageExists = false; + try { + imageExists = recordingService.recordingImageExistsLocally(); + } catch (ProcessingException exception) { + log.error("Exception connecting to Docker daemon: you need Docker installed in this machine to enable OpenVidu recorder service"); + throw new RuntimeException("Exception connecting to Docker daemon: you need Docker installed in this machine to enable OpenVidu recorder service"); + } + + if (imageExists) { System.out.println("Docker image already exists locally"); } else { Thread t = new Thread(() -> { diff --git a/openvidu-server/src/main/java/io/openvidu/server/recording/RecordingService.java b/openvidu-server/src/main/java/io/openvidu/server/recording/RecordingService.java index 10acac9f..d632afdb 100644 --- a/openvidu-server/src/main/java/io/openvidu/server/recording/RecordingService.java +++ b/openvidu-server/src/main/java/io/openvidu/server/recording/RecordingService.java @@ -6,6 +6,8 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import javax.ws.rs.ProcessingException; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -104,6 +106,8 @@ public class RecordingService { imageExists = true; } catch (NotFoundException nfe) { imageExists = false; + } catch (ProcessingException e) { + throw e; } return imageExists; } diff --git a/openvidu-test-e2e/pom.xml b/openvidu-test-e2e/pom.xml index 20d8f0c4..945e6a34 100644 --- a/openvidu-test-e2e/pom.xml +++ b/openvidu-test-e2e/pom.xml @@ -149,7 +149,7 @@ io.openvidu openvidu-java-client - 1.1.0 + 1.7.0 diff --git a/openvidu-test-e2e/src/test/java/io/openvidu/test/e2e/OpenViduTestAppE2eTest.java b/openvidu-test-e2e/src/test/java/io/openvidu/test/e2e/OpenViduTestAppE2eTest.java index 6bfda505..50a2054c 100644 --- a/openvidu-test-e2e/src/test/java/io/openvidu/test/e2e/OpenViduTestAppE2eTest.java +++ b/openvidu-test-e2e/src/test/java/io/openvidu/test/e2e/OpenViduTestAppE2eTest.java @@ -19,7 +19,6 @@ package io.openvidu.test.e2e; import static java.lang.invoke.MethodHandles.lookup; import static org.slf4j.LoggerFactory.getLogger; -import static org.hamcrest.CoreMatchers.is; import static org.openqa.selenium.OutputType.BASE64; import org.slf4j.Logger; @@ -31,7 +30,6 @@ import org.junit.jupiter.api.*; import org.junit.jupiter.api.extension.ExtendWith; import org.junit.runner.RunWith; import org.junit.platform.runner.JUnitPlatform; -import org.json.simple.JSONObject; import org.junit.Assert; import org.openqa.selenium.By;