From 6a8e85c763d5c96291c5bdf73fc6ec555cb34fe3 Mon Sep 17 00:00:00 2001 From: pabloFuente Date: Tue, 29 Sep 2020 14:20:45 +0200 Subject: [PATCH] openvidu-server: KmsManager#atLeastOneConnectedAndRunningKms --- .../java/io/openvidu/server/kurento/kms/KmsManager.java | 8 ++++++++ 1 file changed, 8 insertions(+) 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 f93112c3..a77c718f 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 @@ -23,6 +23,7 @@ import java.util.Collections; import java.util.List; import java.util.Map; import java.util.NoSuchElementException; +import java.util.Optional; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; @@ -121,6 +122,13 @@ public abstract class KmsManager { } } + public synchronized boolean atLeastOneConnectedAndRunningKms() { + Optional optional = this.kmss.values().stream() + .filter(kms -> kms.isKurentoClientConnected() && mediaNodeStatusManager.isRunning(kms.getId())) + .findFirst(); + return optional.isPresent(); + } + public synchronized List getKmssSortedByLoad() { List kmsLoads = getKmsLoads(); Collections.sort(kmsLoads);