You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2022/06/27 02:39:19 UTC
[openmeetings] 01/02: OPENMEETINGS-2742 Introduce openmeetings-mdeiaserver module.
This is an automated email from the ASF dual-hosted git repository.
solomax pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openmeetings.git
commit f827bbb4ed72a49db972fbebaabf60721821f4ac
Author: Sebastian <se...@apache.org>
AuthorDate: Sun Jun 19 11:33:34 2022 +1200
OPENMEETINGS-2742 Introduce openmeetings-mdeiaserver module.
---
openmeetings-core/pom.xml | 8 +--
openmeetings-mediaserver/pom.xml | 61 ++++++++++++++++++++++
.../mediaserver}/remote/AbstractStream.java | 2 +-
.../mediaserver}/remote/IStreamProcessor.java | 2 +-
.../openmeetings/mediaserver}/remote/KRoom.java | 6 +--
.../openmeetings/mediaserver}/remote/KStream.java | 14 ++---
.../mediaserver}/remote/KTestStream.java | 14 ++---
.../mediaserver}/remote/KurentoHandler.java | 2 +-
.../mediaserver}/remote/StreamProcessor.java | 8 +--
.../remote/StreamProcessorActions.java | 6 +--
.../mediaserver}/remote/TestStreamProcessor.java | 10 ++--
.../mediaserver}/remote/BaseMockedTest.java | 10 +++-
.../remote/TestNotConnectedMocked.java | 2 +-
.../remote/TestRecordingFlowMocked.java | 2 +-
.../mediaserver}/remote/TestRoomFlowMocked.java | 2 +-
.../mediaserver}/remote/TestSetupFlowMocked.java | 9 ++--
openmeetings-web/pom.xml | 4 ++
.../web/admin/connection/ConnectionsPanel.java | 4 +-
.../web/admin/connection/KStreamDto.java | 2 +-
.../apache/openmeetings/web/app/Application.java | 2 +-
.../apache/openmeetings/web/app/ClientManager.java | 2 +-
.../apache/openmeetings/web/app/TimerService.java | 2 +-
.../openmeetings/web/common/OmWebSocketPanel.java | 4 +-
.../apache/openmeetings/web/room/RoomPanel.java | 6 +--
.../openmeetings/web/room/menu/RoomMenuPanel.java | 4 +-
.../openmeetings/web/room/sidebar/RoomSidebar.java | 2 +-
.../openmeetings/web/room/wb/InterviewWbPanel.java | 2 +-
pom.xml | 12 +++++
28 files changed, 145 insertions(+), 59 deletions(-)
diff --git a/openmeetings-core/pom.xml b/openmeetings-core/pom.xml
index 723b6f9e0..02360662b 100644
--- a/openmeetings-core/pom.xml
+++ b/openmeetings-core/pom.xml
@@ -85,10 +85,6 @@
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
</dependency>
- <dependency>
- <groupId>org.kurento</groupId>
- <artifactId>kurento-client</artifactId>
- </dependency>
<dependency>
<groupId>org.asteriskjava</groupId>
<artifactId>asterisk-java</artifactId>
@@ -103,6 +99,10 @@
<artifactId>jakarta.activation</artifactId> <!-- required for jakarta.mail -->
<version>2.0.1</version>
</dependency>
+ <dependency>
+ <groupId>javax.annotation</groupId>
+ <artifactId>javax.annotation-api</artifactId>
+ </dependency>
<!-- Test dependencies -->
<dependency>
<groupId>org.junit.jupiter</groupId>
diff --git a/openmeetings-mediaserver/pom.xml b/openmeetings-mediaserver/pom.xml
new file mode 100644
index 000000000..fd0a0fe2a
--- /dev/null
+++ b/openmeetings-mediaserver/pom.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.apache.openmeetings</groupId>
+ <artifactId>openmeetings-parent</artifactId>
+ <version>7.0.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
+ </parent>
+ <artifactId>openmeetings-mediaserver</artifactId>
+ <packaging>jar</packaging>
+ <name>Openmeetings MediaServer</name>
+ <description>Module for OpenMeetings MediaServer classes and services</description>
+ <properties>
+ <site.basedir>${project.parent.basedir}</site.basedir>
+ <autoModuleName>apache.openmeetings.core</autoModuleName>
+ </properties>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.openmeetings</groupId>
+ <artifactId>openmeetings-util</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.openmeetings</groupId>
+ <artifactId>openmeetings-core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.openmeetings</groupId>
+ <artifactId>openmeetings-db</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.kurento</groupId>
+ <artifactId>kurento-client</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.openmeetings</groupId>
+ <artifactId>openmeetings-util</artifactId>
+ <version>${project.version}</version>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+</project>
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/AbstractStream.java b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/AbstractStream.java
similarity index 98%
rename from openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/AbstractStream.java
rename to openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/AbstractStream.java
index f07e051d2..0dc76efc8 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/AbstractStream.java
+++ b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/AbstractStream.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.openmeetings.core.remote;
+package org.apache.openmeetings.mediaserver.remote;
import org.kurento.client.CertificateKeyType;
import org.kurento.client.MediaPipeline;
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/IStreamProcessor.java b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/IStreamProcessor.java
similarity index 94%
rename from openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/IStreamProcessor.java
rename to openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/IStreamProcessor.java
index f14228573..eacf0e402 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/IStreamProcessor.java
+++ b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/IStreamProcessor.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.openmeetings.core.remote;
+package org.apache.openmeetings.mediaserver.remote;
public interface IStreamProcessor {
void release(AbstractStream stream, boolean releaseStream);
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KRoom.java b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/KRoom.java
similarity index 97%
rename from openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KRoom.java
rename to openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/KRoom.java
index 04c9a0818..5409e243f 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KRoom.java
+++ b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/KRoom.java
@@ -16,12 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.openmeetings.core.remote;
+package org.apache.openmeetings.mediaserver.remote;
import static java.util.UUID.randomUUID;
-import static org.apache.openmeetings.core.remote.KurentoHandler.PARAM_ICE;
-import static org.apache.openmeetings.core.remote.KurentoHandler.newKurentoMsg;
import static org.apache.openmeetings.db.util.ApplicationHelper.ensureApplication;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.PARAM_ICE;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.newKurentoMsg;
import java.util.Date;
import java.util.Optional;
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KStream.java b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/KStream.java
similarity index 97%
rename from openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KStream.java
rename to openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/KStream.java
index 52462c8eb..447209c9c 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KStream.java
+++ b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/KStream.java
@@ -19,16 +19,16 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.openmeetings.core.remote;
+package org.apache.openmeetings.mediaserver.remote;
import static java.util.UUID.randomUUID;
import static java.util.concurrent.CompletableFuture.delayedExecutor;
-import static org.apache.openmeetings.core.remote.KurentoHandler.PARAM_CANDIDATE;
-import static org.apache.openmeetings.core.remote.KurentoHandler.PARAM_ICE;
-import static org.apache.openmeetings.core.remote.KurentoHandler.TAG_ROOM;
-import static org.apache.openmeetings.core.remote.KurentoHandler.TAG_STREAM_UID;
-import static org.apache.openmeetings.core.remote.KurentoHandler.getFlowoutTimeout;
-import static org.apache.openmeetings.core.remote.KurentoHandler.newKurentoMsg;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.PARAM_CANDIDATE;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.PARAM_ICE;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.TAG_ROOM;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.TAG_STREAM_UID;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.getFlowoutTimeout;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.newKurentoMsg;
import static org.apache.openmeetings.util.OmFileHelper.getRecUri;
import static org.apache.openmeetings.util.OmFileHelper.getRecordingChunk;
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KTestStream.java b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/KTestStream.java
similarity index 93%
rename from openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KTestStream.java
rename to openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/KTestStream.java
index a4f0f8555..24ade96e7 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KTestStream.java
+++ b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/KTestStream.java
@@ -16,15 +16,15 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.openmeetings.core.remote;
+package org.apache.openmeetings.mediaserver.remote;
import static java.util.UUID.randomUUID;
-import static org.apache.openmeetings.core.remote.KurentoHandler.MODE_TEST;
-import static org.apache.openmeetings.core.remote.KurentoHandler.PARAM_CANDIDATE;
-import static org.apache.openmeetings.core.remote.KurentoHandler.TAG_MODE;
-import static org.apache.openmeetings.core.remote.KurentoHandler.TAG_ROOM;
-import static org.apache.openmeetings.core.remote.KurentoHandler.sendError;
-import static org.apache.openmeetings.core.remote.TestStreamProcessor.newTestKurentoMsg;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.MODE_TEST;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.PARAM_CANDIDATE;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.TAG_MODE;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.TAG_ROOM;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.sendError;
+import static org.apache.openmeetings.mediaserver.remote.TestStreamProcessor.newTestKurentoMsg;
import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_WEBM;
import static org.apache.openmeetings.util.OmFileHelper.TEST_SETUP_PREFIX;
import static org.apache.openmeetings.util.OmFileHelper.getStreamsDir;
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KurentoHandler.java b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/KurentoHandler.java
similarity index 99%
rename from openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KurentoHandler.java
rename to openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/KurentoHandler.java
index 3c3d1300e..f13a18ced 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KurentoHandler.java
+++ b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/KurentoHandler.java
@@ -17,7 +17,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.openmeetings.core.remote;
+package org.apache.openmeetings.mediaserver.remote;
import static java.util.concurrent.TimeUnit.MILLISECONDS;
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/StreamProcessor.java b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/StreamProcessor.java
similarity index 98%
rename from openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/StreamProcessor.java
rename to openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/StreamProcessor.java
index 2ef4b79f0..8d1e2d748 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/StreamProcessor.java
+++ b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/StreamProcessor.java
@@ -17,11 +17,11 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.openmeetings.core.remote;
+package org.apache.openmeetings.mediaserver.remote;
-import static org.apache.openmeetings.core.remote.KurentoHandler.PARAM_ICE;
-import static org.apache.openmeetings.core.remote.KurentoHandler.activityAllowed;
-import static org.apache.openmeetings.core.remote.KurentoHandler.newKurentoMsg;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.PARAM_ICE;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.activityAllowed;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.newKurentoMsg;
import static org.apache.openmeetings.util.OpenmeetingsVariables.isRecordingsEnabled;
import java.util.Collection;
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/StreamProcessorActions.java b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/StreamProcessorActions.java
similarity index 95%
rename from openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/StreamProcessorActions.java
rename to openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/StreamProcessorActions.java
index b80a290bc..5c4cb1b59 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/StreamProcessorActions.java
+++ b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/StreamProcessorActions.java
@@ -17,10 +17,10 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.openmeetings.core.remote;
+package org.apache.openmeetings.mediaserver.remote;
-import static org.apache.openmeetings.core.remote.KurentoHandler.PARAM_CANDIDATE;
-import static org.apache.openmeetings.core.remote.KurentoHandler.sendError;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.PARAM_CANDIDATE;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.sendError;
import org.apache.openmeetings.core.util.WebSocketHelper;
import org.apache.openmeetings.db.entity.basic.Client;
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/TestStreamProcessor.java b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/TestStreamProcessor.java
similarity index 88%
rename from openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/TestStreamProcessor.java
rename to openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/TestStreamProcessor.java
index 3bd7bdec6..e9a8faf50 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/TestStreamProcessor.java
+++ b/openmeetings-mediaserver/src/main/java/org/apache/openmeetings/mediaserver/remote/TestStreamProcessor.java
@@ -17,12 +17,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.openmeetings.core.remote;
+package org.apache.openmeetings.mediaserver.remote;
-import static org.apache.openmeetings.core.remote.KurentoHandler.MODE_TEST;
-import static org.apache.openmeetings.core.remote.KurentoHandler.PARAM_CANDIDATE;
-import static org.apache.openmeetings.core.remote.KurentoHandler.PARAM_ICE;
-import static org.apache.openmeetings.core.remote.KurentoHandler.TAG_MODE;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.MODE_TEST;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.PARAM_CANDIDATE;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.PARAM_ICE;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.TAG_MODE;
import java.util.Map;
import java.util.Map.Entry;
diff --git a/openmeetings-core/src/test/java/org/apache/openmeetings/core/remote/BaseMockedTest.java b/openmeetings-mediaserver/src/test/java/org/apache/openmeetings/mediaserver/remote/BaseMockedTest.java
similarity index 91%
rename from openmeetings-core/src/test/java/org/apache/openmeetings/core/remote/BaseMockedTest.java
rename to openmeetings-mediaserver/src/test/java/org/apache/openmeetings/mediaserver/remote/BaseMockedTest.java
index b425e172b..a2d065013 100644
--- a/openmeetings-core/src/test/java/org/apache/openmeetings/core/remote/BaseMockedTest.java
+++ b/openmeetings-mediaserver/src/test/java/org/apache/openmeetings/mediaserver/remote/BaseMockedTest.java
@@ -17,7 +17,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.openmeetings.core.remote;
+package org.apache.openmeetings.mediaserver.remote;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyBoolean;
@@ -41,6 +41,14 @@ import org.apache.openmeetings.db.dao.label.LabelDao;
import org.apache.openmeetings.db.entity.basic.IWsClient;
import org.apache.openmeetings.db.entity.label.OmLanguage;
import org.apache.openmeetings.db.util.ApplicationHelper;
+import org.apache.openmeetings.mediaserver.remote.AbstractStream;
+import org.apache.openmeetings.mediaserver.remote.KRoom;
+import org.apache.openmeetings.mediaserver.remote.KStream;
+import org.apache.openmeetings.mediaserver.remote.KTestStream;
+import org.apache.openmeetings.mediaserver.remote.KurentoHandler;
+import org.apache.openmeetings.mediaserver.remote.StreamProcessor;
+import org.apache.openmeetings.mediaserver.remote.StreamProcessorActions;
+import org.apache.openmeetings.mediaserver.remote.TestStreamProcessor;
import org.apache.wicket.injection.Injector;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.extension.ExtendWith;
diff --git a/openmeetings-core/src/test/java/org/apache/openmeetings/core/remote/TestNotConnectedMocked.java b/openmeetings-mediaserver/src/test/java/org/apache/openmeetings/mediaserver/remote/TestNotConnectedMocked.java
similarity index 98%
rename from openmeetings-core/src/test/java/org/apache/openmeetings/core/remote/TestNotConnectedMocked.java
rename to openmeetings-mediaserver/src/test/java/org/apache/openmeetings/mediaserver/remote/TestNotConnectedMocked.java
index a951ed136..80a799807 100644
--- a/openmeetings-core/src/test/java/org/apache/openmeetings/core/remote/TestNotConnectedMocked.java
+++ b/openmeetings-mediaserver/src/test/java/org/apache/openmeetings/mediaserver/remote/TestNotConnectedMocked.java
@@ -17,7 +17,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.openmeetings.core.remote;
+package org.apache.openmeetings.mediaserver.remote;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
diff --git a/openmeetings-core/src/test/java/org/apache/openmeetings/core/remote/TestRecordingFlowMocked.java b/openmeetings-mediaserver/src/test/java/org/apache/openmeetings/mediaserver/remote/TestRecordingFlowMocked.java
similarity index 99%
rename from openmeetings-core/src/test/java/org/apache/openmeetings/core/remote/TestRecordingFlowMocked.java
rename to openmeetings-mediaserver/src/test/java/org/apache/openmeetings/mediaserver/remote/TestRecordingFlowMocked.java
index b8ddf50c9..00aa5f8ad 100644
--- a/openmeetings-core/src/test/java/org/apache/openmeetings/core/remote/TestRecordingFlowMocked.java
+++ b/openmeetings-mediaserver/src/test/java/org/apache/openmeetings/mediaserver/remote/TestRecordingFlowMocked.java
@@ -17,7 +17,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.openmeetings.core.remote;
+package org.apache.openmeetings.mediaserver.remote;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
diff --git a/openmeetings-core/src/test/java/org/apache/openmeetings/core/remote/TestRoomFlowMocked.java b/openmeetings-mediaserver/src/test/java/org/apache/openmeetings/mediaserver/remote/TestRoomFlowMocked.java
similarity index 98%
rename from openmeetings-core/src/test/java/org/apache/openmeetings/core/remote/TestRoomFlowMocked.java
rename to openmeetings-mediaserver/src/test/java/org/apache/openmeetings/mediaserver/remote/TestRoomFlowMocked.java
index 422905684..3fd44cb87 100644
--- a/openmeetings-core/src/test/java/org/apache/openmeetings/core/remote/TestRoomFlowMocked.java
+++ b/openmeetings-mediaserver/src/test/java/org/apache/openmeetings/mediaserver/remote/TestRoomFlowMocked.java
@@ -17,7 +17,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.openmeetings.core.remote;
+package org.apache.openmeetings.mediaserver.remote;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
diff --git a/openmeetings-core/src/test/java/org/apache/openmeetings/core/remote/TestSetupFlowMocked.java b/openmeetings-mediaserver/src/test/java/org/apache/openmeetings/mediaserver/remote/TestSetupFlowMocked.java
similarity index 90%
rename from openmeetings-core/src/test/java/org/apache/openmeetings/core/remote/TestSetupFlowMocked.java
rename to openmeetings-mediaserver/src/test/java/org/apache/openmeetings/mediaserver/remote/TestSetupFlowMocked.java
index bf355a5c2..ebd151795 100644
--- a/openmeetings-core/src/test/java/org/apache/openmeetings/core/remote/TestSetupFlowMocked.java
+++ b/openmeetings-mediaserver/src/test/java/org/apache/openmeetings/mediaserver/remote/TestSetupFlowMocked.java
@@ -17,11 +17,11 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.openmeetings.core.remote;
+package org.apache.openmeetings.mediaserver.remote;
-import static org.apache.openmeetings.core.remote.KurentoHandler.MODE_TEST;
-import static org.apache.openmeetings.core.remote.KurentoHandler.PARAM_CANDIDATE;
-import static org.apache.openmeetings.core.remote.KurentoHandler.TAG_MODE;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.MODE_TEST;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.PARAM_CANDIDATE;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.TAG_MODE;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
@@ -29,6 +29,7 @@ import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import org.apache.openmeetings.db.entity.basic.WsClient;
+import org.apache.openmeetings.mediaserver.remote.KurentoHandler;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.kurento.client.MediaPipeline;
diff --git a/openmeetings-web/pom.xml b/openmeetings-web/pom.xml
index 500bd57ba..45331cbcf 100644
--- a/openmeetings-web/pom.xml
+++ b/openmeetings-web/pom.xml
@@ -489,6 +489,10 @@
<groupId>org.apache.openmeetings</groupId>
<artifactId>openmeetings-install</artifactId>
</dependency>
+ <dependency>
+ <groupId>org.apache.openmeetings</groupId>
+ <artifactId>openmeetings-mediaserver</artifactId>
+ </dependency>
<dependency>
<groupId>org.apache.openmeetings</groupId>
<artifactId>openmeetings-webservice</artifactId>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
index c630a6454..5869cc044 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
@@ -28,8 +28,6 @@ import java.util.Iterator;
import java.util.List;
import java.util.stream.Stream;
-import org.apache.openmeetings.core.remote.KurentoHandler;
-import org.apache.openmeetings.core.remote.StreamProcessor;
import org.apache.openmeetings.db.dao.user.IUserManager;
import org.apache.openmeetings.db.entity.IDataProviderEntity;
import org.apache.openmeetings.db.entity.basic.Client;
@@ -48,6 +46,8 @@ import org.apache.wicket.markup.repeater.Item;
import org.apache.wicket.markup.repeater.RepeatingView;
import org.apache.wicket.model.ResourceModel;
import org.apache.wicket.spring.injection.annot.SpringBean;
+import org.apache.openmeetings.mediaserver.remote.KurentoHandler;
+import org.apache.openmeetings.mediaserver.remote.StreamProcessor;
import de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxLink;
import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/KStreamDto.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/KStreamDto.java
index 75265a71e..fa42b5aa1 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/KStreamDto.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/KStreamDto.java
@@ -20,10 +20,10 @@ package org.apache.openmeetings.web.admin.connection;
import java.util.Date;
-import org.apache.openmeetings.core.remote.KStream;
import org.apache.openmeetings.db.entity.IDataProviderEntity;
import org.apache.openmeetings.db.entity.basic.Client.StreamType;
import org.apache.openmeetings.db.entity.record.RecordingChunk.Type;
+import org.apache.openmeetings.mediaserver.remote.KStream;
/**
* A KStream for the Wicket UI to display. This object can be serialized, otherwise
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
index 728d717c1..916be049b 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
@@ -47,7 +47,6 @@ import java.util.stream.Stream;
import javax.websocket.WebSocketContainer;
import org.apache.openmeetings.IApplication;
-import org.apache.openmeetings.core.remote.KStream;
import org.apache.openmeetings.core.sip.SipManager;
import org.apache.openmeetings.core.util.ChatWebSocketHelper;
import org.apache.openmeetings.core.util.WebSocketHelper;
@@ -133,6 +132,7 @@ import org.apache.wicket.settings.ExceptionSettings;
import org.apache.wicket.spring.injection.annot.SpringComponentInjector;
import org.apache.wicket.util.string.Strings;
import org.apache.wicket.validation.validator.UrlValidator;
+import org.apache.openmeetings.mediaserver.remote.KStream;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java
index f447cf24e..ab4f427a8 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java
@@ -35,7 +35,6 @@ import java.util.concurrent.ConcurrentHashMap;
import java.util.function.Function;
import java.util.stream.Stream;
-import org.apache.openmeetings.core.remote.KurentoHandler;
import org.apache.openmeetings.db.dao.log.ConferenceLogDao;
import org.apache.openmeetings.db.entity.basic.Client;
import org.apache.openmeetings.db.entity.log.ConferenceLog;
@@ -43,6 +42,7 @@ import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.manager.IClientManager;
import org.apache.openmeetings.db.util.ws.RoomMessage;
import org.apache.openmeetings.db.util.ws.TextRoomMessage;
+import org.apache.openmeetings.mediaserver.remote.KurentoHandler;
import org.apache.openmeetings.web.pages.auth.SignInPage;
import org.apache.wicket.request.mapper.parameter.PageParameters;
import org.apache.wicket.util.string.StringValue;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/TimerService.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/TimerService.java
index 256841e51..1e94ec5f2 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/TimerService.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/TimerService.java
@@ -29,7 +29,6 @@ import java.util.function.Predicate;
import javax.annotation.PostConstruct;
-import org.apache.openmeetings.core.remote.KurentoHandler;
import org.apache.openmeetings.core.sip.SipManager;
import org.apache.openmeetings.core.util.WebSocketHelper;
import org.apache.openmeetings.db.entity.basic.Client;
@@ -39,6 +38,7 @@ import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.db.util.ws.RoomMessage;
import org.apache.openmeetings.db.util.ws.TextRoomMessage;
import org.apache.wicket.ThreadContext;
+import org.apache.openmeetings.mediaserver.remote.KurentoHandler;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmWebSocketPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmWebSocketPanel.java
index 9edecc382..4faed1687 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmWebSocketPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmWebSocketPanel.java
@@ -18,13 +18,12 @@
*/
package org.apache.openmeetings.web.common;
-import static org.apache.openmeetings.core.remote.KurentoHandler.KURENTO_TYPE;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.KURENTO_TYPE;
import java.io.IOException;
import java.util.concurrent.atomic.AtomicBoolean;
-import org.apache.openmeetings.core.remote.KurentoHandler;
import org.apache.openmeetings.core.util.WebSocketHelper;
import org.apache.openmeetings.db.entity.basic.Client;
import org.apache.openmeetings.db.entity.basic.IWsClient;
@@ -44,6 +43,7 @@ import org.apache.wicket.protocol.ws.api.message.ConnectedMessage;
import org.apache.wicket.protocol.ws.api.message.ErrorMessage;
import org.apache.wicket.protocol.ws.api.message.TextMessage;
import org.apache.wicket.spring.injection.annot.SpringBean;
+import org.apache.openmeetings.mediaserver.remote.KurentoHandler;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
index 3a4152b35..198107737 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
@@ -20,13 +20,13 @@ package org.apache.openmeetings.web.room;
import static de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal.BUTTON_MARKUP_ID;
import static java.time.Duration.ZERO;
-import static org.apache.openmeetings.core.remote.KurentoHandler.activityAllowed;
import static org.apache.openmeetings.core.util.ChatWebSocketHelper.ID_USER_PREFIX;
import static org.apache.openmeetings.db.entity.calendar.Appointment.allowedStart;
import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_PDF;
import static org.apache.openmeetings.web.app.WebSession.getDateFormat;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
import static org.apache.openmeetings.web.room.wb.WbPanel.WB_JS_REFERENCE;
+import static org.apache.openmeetings.mediaserver.remote.KurentoHandler.activityAllowed;
import java.io.IOException;
import java.nio.file.Files;
@@ -38,8 +38,6 @@ import java.util.Set;
import java.util.stream.Stream;
import org.apache.commons.text.StringEscapeUtils;
-import org.apache.openmeetings.core.remote.KurentoHandler;
-import org.apache.openmeetings.core.remote.StreamProcessor;
import org.apache.openmeetings.core.util.WebSocketHelper;
import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
import org.apache.openmeetings.db.dao.file.FileItemDao;
@@ -100,6 +98,8 @@ import org.apache.wicket.spring.injection.annot.SpringBean;
import org.apache.wicket.util.resource.FileResourceStream;
import org.apache.wicket.util.resource.IResourceStream;
import org.apache.wicket.util.string.Strings;
+import org.apache.openmeetings.mediaserver.remote.KurentoHandler;
+import org.apache.openmeetings.mediaserver.remote.StreamProcessor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
index d96d16f2a..db54eebbb 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
@@ -34,8 +34,6 @@ import java.util.Date;
import java.util.List;
import org.apache.commons.lang3.time.FastDateFormat;
-import org.apache.openmeetings.core.remote.KurentoHandler;
-import org.apache.openmeetings.core.remote.StreamProcessor;
import org.apache.openmeetings.core.util.WebSocketHelper;
import org.apache.openmeetings.db.dao.basic.ChatDao;
import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
@@ -65,6 +63,8 @@ import org.apache.wicket.model.Model;
import org.apache.wicket.request.flow.RedirectToUrlException;
import org.apache.wicket.spring.injection.annot.SpringBean;
import org.apache.wicket.util.string.Strings;
+import org.apache.openmeetings.mediaserver.remote.KurentoHandler;
+import org.apache.openmeetings.mediaserver.remote.StreamProcessor;
import com.github.openjson.JSONObject;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
index 79101d4d8..c91659b8b 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
@@ -20,7 +20,6 @@ package org.apache.openmeetings.web.room.sidebar;
import static org.apache.openmeetings.web.app.Application.kickUser;
-import org.apache.openmeetings.core.remote.StreamProcessor;
import org.apache.openmeetings.core.util.WebSocketHelper;
import org.apache.openmeetings.db.entity.basic.Client;
import org.apache.openmeetings.db.entity.room.Room.Right;
@@ -40,6 +39,7 @@ import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.panel.Panel;
import org.apache.wicket.spring.injection.annot.SpringBean;
import org.apache.wicket.util.string.Strings;
+import org.apache.openmeetings.mediaserver.remote.StreamProcessor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/InterviewWbPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/InterviewWbPanel.java
index f820baffd..24e708d45 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/InterviewWbPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/InterviewWbPanel.java
@@ -20,13 +20,13 @@ package org.apache.openmeetings.web.room.wb;
import java.io.IOException;
-import org.apache.openmeetings.core.remote.StreamProcessor;
import org.apache.openmeetings.db.entity.basic.Client;
import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.db.entity.room.Room.Right;
import org.apache.openmeetings.web.room.RoomPanel;
import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
import org.apache.wicket.spring.injection.annot.SpringBean;
+import org.apache.openmeetings.mediaserver.remote.StreamProcessor;
import com.github.openjson.JSONObject;
diff --git a/pom.xml b/pom.xml
index 1dd83e725..3cfb5f6c2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -133,6 +133,7 @@
<apacheds-test-framework.version>2.0.0.AM26</apacheds-test-framework.version>
<swagger.version>2.2.1</swagger.version>
<bytebuddy.version>1.12.12</bytebuddy.version>
+ <annotation-api.version>1.3.2</annotation-api.version>
<!-- Exclude all generated code -->
<sonar.exclusions>file:**/generated-sources/**, file:**/jquery-ui.css, file:**/cssemoticons.js, file:**/bootstrap-confirmation.js</sonar.exclusions>
<sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
@@ -423,6 +424,11 @@
<artifactId>openmeetings-core</artifactId>
<version>${project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.apache.openmeetings</groupId>
+ <artifactId>openmeetings-mediaserver</artifactId>
+ <version>${project.version}</version>
+ </dependency>
<dependency>
<groupId>org.apache.openmeetings</groupId>
<artifactId>openmeetings-db</artifactId>
@@ -954,6 +960,11 @@
<artifactId>swagger-annotations</artifactId>
<version>${swagger.version}</version>
</dependency>
+ <dependency>
+ <groupId>javax.annotation</groupId>
+ <artifactId>javax.annotation-api</artifactId>
+ <version>${annotation-api.version}</version>
+ </dependency>
<!-- TESTS -->
<dependency>
@@ -1700,6 +1711,7 @@
<module>openmeetings-util</module>
<module>openmeetings-db</module>
<module>openmeetings-core</module>
+ <module>openmeetings-mediaserver</module>
<module>openmeetings-install</module>
<module>openmeetings-service</module>
<module>openmeetings-webservice</module>