From b6c91a65c22b84f89c812340bc450c86ff21feab Mon Sep 17 00:00:00 2001 From: =?utf8?q?V=C3=A1s=C3=A1ry=20D=C3=A1niel?= Date: Fri, 23 Feb 2024 00:08:26 +0100 Subject: [PATCH] WS archive first look --- client/Maestro/Configuration/dev-local.json | 7 ++- client/Maestro/MaestroForm.resx | 2 +- .../run-mediacube-server.launch | 1 - .../WEB-INF/web.xml | 11 +++++ .../MediaCubeAPIWSArchiveServlet.java | 21 +++++++++ .../MediaCubeAPIWSArchiveSocket.java | 44 +++++++++++++++++++ 6 files changed, 83 insertions(+), 3 deletions(-) create mode 100644 server/user.jobengine.osgi.services/src/user/jobengine/osgi/ws/mediacube/MediaCubeAPIWSArchiveServlet.java create mode 100644 server/user.jobengine.osgi.services/src/user/jobengine/osgi/ws/mediacube/MediaCubeAPIWSArchiveSocket.java diff --git a/client/Maestro/Configuration/dev-local.json b/client/Maestro/Configuration/dev-local.json index 1e7e988b..59793284 100644 --- a/client/Maestro/Configuration/dev-local.json +++ b/client/Maestro/Configuration/dev-local.json @@ -49,6 +49,10 @@ "server": { "address": "http://localvm:9090/services/rest/jobengine/", "timeout": 1000 + }, + "wsArchiveServer": { + "address": "ws://localhost:9080/services/wsapi-archive", + "timeout": 1000 } } @@ -59,7 +63,8 @@ "processor": "UNCTargetProcessor", "outputFormat": "%ID%", "remote": { - "address": "file://c:/_video/t1" + "address": "file://c:/_video/t1", + "password": "Dn8t4gfHcK98o8hyPgLDhr5SgSji4JCxsfpMJsODikUp3nXgrM0UNCi45lLAK8ZOnmEneO44P9qpJ4QDqhctN6MxZodjJgdZTyoZKmSa+ECzEzLr/wPYNgxVaXrVotEy" } }, { diff --git a/client/Maestro/MaestroForm.resx b/client/Maestro/MaestroForm.resx index 7ca218c8..c3dcafe9 100644 --- a/client/Maestro/MaestroForm.resx +++ b/client/Maestro/MaestroForm.resx @@ -128,7 +128,7 @@ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAS - CAAAAk1TRnQBSQFMAgEBAgEAAdgBAgHYAQIBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo + CAAAAk1TRnQBSQFMAgEBAgEAAeABAgHgAQIBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA diff --git a/server/-configuration/run-mediacube-server.launch b/server/-configuration/run-mediacube-server.launch index d8214b64..dc9e0b79 100644 --- a/server/-configuration/run-mediacube-server.launch +++ b/server/-configuration/run-mediacube-server.launch @@ -38,7 +38,6 @@ - diff --git a/server/user.jobengine.osgi.services/WEB-INF/web.xml b/server/user.jobengine.osgi.services/WEB-INF/web.xml index f89da867..773a1551 100644 --- a/server/user.jobengine.osgi.services/WEB-INF/web.xml +++ b/server/user.jobengine.osgi.services/WEB-INF/web.xml @@ -54,6 +54,17 @@ /wsapi/* + + WS-MEDIACUBEAPI-ARCHIVE + user.jobengine.osgi.ws.mediacube.MediaCubeAPIWSArchiveServlet + 1 + + + WS-MEDIACUBEAPI-ARCHIVE + /wsapi-archive/* + + + MEDIAFILE diff --git a/server/user.jobengine.osgi.services/src/user/jobengine/osgi/ws/mediacube/MediaCubeAPIWSArchiveServlet.java b/server/user.jobengine.osgi.services/src/user/jobengine/osgi/ws/mediacube/MediaCubeAPIWSArchiveServlet.java new file mode 100644 index 00000000..7886e6b7 --- /dev/null +++ b/server/user.jobengine.osgi.services/src/user/jobengine/osgi/ws/mediacube/MediaCubeAPIWSArchiveServlet.java @@ -0,0 +1,21 @@ +package user.jobengine.osgi.ws.mediacube; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.eclipse.jetty.websocket.servlet.WebSocketServlet; +import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; + +@SuppressWarnings("serial") +public class MediaCubeAPIWSArchiveServlet extends WebSocketServlet { + private static final Logger logger = LogManager.getLogger(); + + public MediaCubeAPIWSArchiveServlet() { + logger.info("Created"); + } + + @Override + public void configure(WebSocketServletFactory factory) { + factory.register(MediaCubeAPIWSArchiveSocket.class); + // factory.getPolicy().setMaxBinaryMessageSize(110000); + } +} diff --git a/server/user.jobengine.osgi.services/src/user/jobengine/osgi/ws/mediacube/MediaCubeAPIWSArchiveSocket.java b/server/user.jobengine.osgi.services/src/user/jobengine/osgi/ws/mediacube/MediaCubeAPIWSArchiveSocket.java new file mode 100644 index 00000000..a70e292a --- /dev/null +++ b/server/user.jobengine.osgi.services/src/user/jobengine/osgi/ws/mediacube/MediaCubeAPIWSArchiveSocket.java @@ -0,0 +1,44 @@ +package user.jobengine.osgi.ws.mediacube; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.eclipse.jetty.websocket.api.Session; +import org.eclipse.jetty.websocket.api.WebSocketAdapter; + +public class MediaCubeAPIWSArchiveSocket extends WebSocketAdapter { + private static final Logger logger = LogManager.getLogger(); + + public MediaCubeAPIWSArchiveSocket() { + logger.info("EventSocket created"); + } + + @Override + public void onWebSocketClose(int statusCode, String reason) { + super.onWebSocketClose(statusCode, reason); + logger.info("Socket Closed: [{}]", reason); + } + + @Override + public void onWebSocketConnect(Session sess) { + super.onWebSocketConnect(sess); + logger.info("Socket Connected: " + sess); + } + + @Override + public void onWebSocketError(Throwable cause) { + super.onWebSocketError(cause); + logger.info("Error: [{}]", String.valueOf(cause.getMessage())); + } + + @Override + public void onWebSocketBinary(byte[] payload, int offset, int len) { + super.onWebSocketBinary(payload, offset, len); + logger.info("Data len {}", len); + } + + @Override + public void onWebSocketText(String message) { + logger.info("File name {}", message); + } + +} -- 2.54.0