public IEnumerable <Profile> GetChatMembers(Guid id) { try { var list = _chatsRepository.GetChatMembers(id).ToList(); var profiles = new List <Profile>(); foreach (var profileId in list) { var profile = _profilesRepository.GetProfile(profileId); profiles.Add(profile); if ((DateTime.Now.TimeOfDay - profile.LastQueryDate.TimeOfDay).Minutes < 2 || !profile.IsOnline.Equals(true)) { continue; } _profilesRepository.LogoutProfile(profile.Id); profile.IsOnline = false; } return(profiles); } catch (SqlException exception) { var response = new HttpResponseMessage(HttpStatusCode.NotFound) { Content = new StringContent(exception.Message) }; throw new HttpResponseException(response); } }
public void Logout(Guid id) { try { _profilesRepository.LogoutProfile(id); } catch (SqlException exception) { var response = new HttpResponseMessage(HttpStatusCode.NotFound) { Content = new StringContent(exception.Message) }; throw new HttpResponseException(response); } catch (Exception exception) { var response = new HttpResponseMessage(HttpStatusCode.NonAuthoritativeInformation) { Content = new StringContent(exception.Message) }; throw new HttpResponseException(response); } }