diff --git a/openvidu-server/src/main/java/io/openvidu/server/kurento/core/KurentoSessionManager.java b/openvidu-server/src/main/java/io/openvidu/server/kurento/core/KurentoSessionManager.java index 918e85c7..87cf7182 100644 --- a/openvidu-server/src/main/java/io/openvidu/server/kurento/core/KurentoSessionManager.java +++ b/openvidu-server/src/main/java/io/openvidu/server/kurento/core/KurentoSessionManager.java @@ -31,6 +31,8 @@ import java.util.concurrent.TimeUnit; import java.util.regex.Matcher; import java.util.regex.Pattern; +import javax.annotation.PreDestroy; + import org.apache.commons.lang3.RandomStringUtils; import org.kurento.client.GenericMediaElement; import org.kurento.client.IceCandidate; @@ -1444,4 +1446,11 @@ public class KurentoSessionManager extends SessionManager { return lessLoadedKms; } + @PreDestroy + @Override + public void close() { + super.close(); + this.kmsManager.closeAllKurentoClients(); + } + } diff --git a/openvidu-server/src/main/java/io/openvidu/server/kurento/kms/KmsManager.java b/openvidu-server/src/main/java/io/openvidu/server/kurento/kms/KmsManager.java index dae5cb19..dc3f0e21 100644 --- a/openvidu-server/src/main/java/io/openvidu/server/kurento/kms/KmsManager.java +++ b/openvidu-server/src/main/java/io/openvidu/server/kurento/kms/KmsManager.java @@ -31,7 +31,6 @@ import java.util.concurrent.locks.ReentrantLock; import java.util.stream.Collectors; import javax.annotation.PostConstruct; -import javax.annotation.PreDestroy; import org.apache.commons.lang3.RandomStringUtils; import org.kurento.jsonrpc.client.JsonRpcWSConnectionListener; @@ -343,8 +342,7 @@ public abstract class KmsManager { @PostConstruct protected abstract void postConstructInitKurentoClients(); - @PreDestroy - public void close() { + public void closeAllKurentoClients() { log.info("Closing all KurentoClients"); this.kmss.values().forEach(kms -> { if (kms.getKurentoClientReconnectTimer() != null) {