public void logout(Organizer org, ISwimObserver client) { ISwimObserver localClient = loggedClients[org.Id]; if (localClient == null) { throw new SwimException("User " + org.Id + " is not logged in."); } loggedClients.Remove(org.Id); }
public virtual void logout(Organizer org, ISwimObserver obs) { { sendRequest(new LogoutRequest(org)); Response response = readResponse(); closeConnection(); if (response is ErrorResponse) { ErrorResponse err = (ErrorResponse)response; throw new SwimException(err.Message); } } }
private void closeConnection() { finished = true; try { stream.Close(); //output.close(); connection.Close(); _waitHandle.Close(); client = null; } catch (Exception e) { Console.WriteLine(e.StackTrace); } }
public virtual void login(Organizer org, ISwimObserver client) { initializeConnection(); sendRequest(new LoginRequest(org)); Response response = readResponse(); if (response is OkResponse) { this.client = client; return; } if (response is ErrorResponse) { ErrorResponse err = (ErrorResponse)response; closeConnection(); throw new SwimException(err.Message); } }
public void login(Organizer org, ISwimObserver client) { orgRepo.checkUserPass(org); if (org != null) { if (!orgRepo.checkUserPass(org)) { throw new SwimException("Username or password wrong!"); } if (loggedClients.ContainsKey(org.Id)) { throw new SwimException("User already logged in."); } loggedClients[org.Id] = client; } else { throw new SwimException("Authentication failed."); } }