BB.UI.Web.MVC.Controllers.Utils.PlaylistHub.OnDisconnected C# (CSharp) Method

OnDisconnected() public method

public OnDisconnected ( bool stopCalled ) : Task
stopCalled bool
return Task
        public override Task OnDisconnected(bool stopCalled)
        {
            var key = connectedGroupUsers.Keys.Single(p => p.Equals(Context.ConnectionId));
            var model = connectedGroupUsers.FirstOrDefault(f => f.Key.Equals(Context.ConnectionId)).Value;
            if (playlistMasters.Values.Any(p => p.Equals(Context.ConnectionId)))
                {
                    Clients.OthersInGroup(model.GroupName).stopMusicPlaying();
                    playlistMasters.Remove(model.GroupName);
                }
            
            connectedGroupUsers.Remove(key);
            Clients.Group(model.GroupName).modifyListeners(connectedGroupUsers.Values.ToList().FindAll(p => p.GroupName == model.GroupName).Count + " party people attending", connectedGroupUsers.Values.ToList().FindAll(p => p.GroupName == model.GroupName));
            return base.OnDisconnected(stopCalled);
        }