openvidu-server: refactor KmsManager#incrementActiveRecordings with more info

pull/574/head
pabloFuente 2020-12-02 13:30:46 +01:00
parent 6a844ae145
commit 0561c6aab7
3 changed files with 10 additions and 4 deletions

View File

@ -27,6 +27,9 @@ import javax.annotation.PostConstruct;
import org.kurento.client.KurentoClient;
import org.kurento.commons.exception.KurentoException;
import io.openvidu.java.client.RecordingProperties;
import io.openvidu.server.core.Session;
public class FixedOneKmsManager extends KmsManager {
@Override
@ -65,9 +68,9 @@ public class FixedOneKmsManager extends KmsManager {
}
@Override
public void incrementActiveRecordings(String mediaNodeId, String recordingId, String sessionId) {
public void incrementActiveRecordings(RecordingProperties properties, String recordingId, Session session) {
try {
this.getKmss().iterator().next().incrementActiveRecordings(recordingId, sessionId);
this.getKmss().iterator().next().incrementActiveRecordings(recordingId, session.getSessionId());
} catch (NoSuchElementException e) {
log.error("There is no KMS available when incrementing active recordings");
}

View File

@ -42,8 +42,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import com.google.gson.JsonObject;
import io.openvidu.java.client.RecordingProperties;
import io.openvidu.server.config.OpenviduConfig;
import io.openvidu.server.core.IdentifierPrefixes;
import io.openvidu.server.core.Session;
import io.openvidu.server.kurento.core.KurentoSession;
import io.openvidu.server.utils.MediaNodeStatusManager;
import io.openvidu.server.utils.QuarantineKiller;
@ -356,7 +358,8 @@ public abstract class KmsManager {
public abstract boolean isMediaNodeAvailableForRecording(String mediaNodeId);
public abstract void incrementActiveRecordings(String mediaNodeId, String recordingId, String sessionId);
public abstract void incrementActiveRecordings(RecordingProperties recordingProperties, String recordingId,
Session session);
public abstract void decrementActiveRecordings(String mediaNodeId, String recordingId);

View File

@ -273,7 +273,7 @@ public class RecordingManager {
// INCREMENT ACTIVE RECORDINGS OF MEDIA NODE HERE. IF MEDIA NODE IS NOT
// AVAILABLE FOR STARTING NEW RECORDINGS THIS METHOD THROWS AN EXCEPTION
kmsManager.incrementActiveRecordings(properties.mediaNode(), recordingId, session.getSessionId());
kmsManager.incrementActiveRecordings(properties, recordingId, session);
try {
if (session.recordingLock.tryLock(15, TimeUnit.SECONDS)) {