public async Task ExecuteAsync(StudyRoomSessionParticipantDisconnectedCommand message, CancellationToken token) { var studyRoom = await _studyRoomRepository.LoadAsync(message.RoomId, token); var studyRoomSession = studyRoom.GetCurrentSession(); if (studyRoomSession == null) { return; } var sessionParticipant = studyRoomSession.ParticipantDisconnections.FirstOrDefault(); if (sessionParticipant == null) { var sessionDisconnect = new SessionParticipantDisconnect(studyRoomSession); await _sessionDisconnectRepository.AddAsync(sessionDisconnect, token); } }
public SessionParticipantDisconnectEvent(SessionParticipantDisconnect sessionDisconnect) { SessionDisconnect = sessionDisconnect; }