public static OfficePers getFromDTO(OfficePersonDTO officePersonDTO) { String username = officePersonDTO.Username; String pass = officePersonDTO.Password; return(new OfficePers(username, pass)); }
public void logout(OfficePers user, IClient client) { OfficePersonDTO officePersonDTO = DTOUtils.getDTO(user); sendRequest(new LogoutRequest(officePersonDTO)); Response response = readResponse(); closeConnection(); if (response is ErrorResponse) { ErrorResponse err = (ErrorResponse)response; throw new RaceException(err.Message); } }
public void login(OfficePers user, IClient client) { initializeConnection(); OfficePersonDTO udto = DTOUtils.getDTO(user); sendRequest(new LoginRequest(udto)); Response response = readResponse(); if (response is OKResponse) { this.client = client; return; } if (response is ErrorResponse) { ErrorResponse err = (ErrorResponse)response; closeConnection(); throw new RaceException(err.Message); } }
private Response handleRequest(Request request) { Console.WriteLine("Handle request pentru..." + request); Response response = null; if (request is LoginRequest) { Console.WriteLine("Login request..."); LoginRequest loginRequest = (LoginRequest)request; OfficePersonDTO userDTO = loginRequest.OfficePersonDTO(); OfficePers pers = DTOUtils.getFromDTO(userDTO); try { lock (server) { server.login(pers, this); username = pers.Username; } return(new OKResponse()); }catch (RaceException ex) { connected = false; return(new ErrorResponse(ex.Message)); } } if (request is LogoutRequest) { Console.WriteLine("Logout request..."); LogoutRequest logReq = (LogoutRequest)request; OfficePersonDTO dTO = logReq.OfficePersonDTO(); OfficePers user = DTOUtils.getFromDTO(dTO); try { lock (server) { server.logout(user, this); } connected = false; return(new OKResponse()); }catch (RaceException ex) { return(new ErrorResponse(ex.Message)); } } if (request is GetRacesRequest) { Console.WriteLine("Get all races request"); GetRacesRequest req = (GetRacesRequest)request; try { IList <Race> races = new List <Race>(); lock (server) { races = server.getAllRaces(); } IList <RaceDTO> raceDTOs = new List <RaceDTO>(); foreach (Race r in races) { RaceDTO raceDTO = DTOUtils.getDTO(r); raceDTOs.Add(raceDTO); } return(new GetRacesResponse((List <RaceDTO>)raceDTOs)); }catch (Exception ex) { throw new RaceException(ex.Message); } } if (request is GetContestantsRequest) { GetContestantsRequest req = (GetContestantsRequest)request; try { IList <Contestant> contestants = new List <Contestant>(); lock (server) { contestants = server.getAllContestants(); } IList <ContestantDTO> contestantDTOs = new List <ContestantDTO>(); foreach (Contestant c in contestants) { ContestantDTO dTO = DTOUtils.getDTO(c); contestantDTOs.Add(dTO); } return(new GetContestantsResponse((List <ContestantDTO>)contestantDTOs)); }catch (Exception e) { throw new RaceException(e.Message); } } if (request is SaveRegistrationRequest) { Console.WriteLine("Saving registration..."); SaveRegistrationRequest req = (SaveRegistrationRequest)request; RegistrationDTO registrationDTO = req.RegistrationDTO; try { lock (server) { server.addContestant(registrationDTO.Contestant.Name, registrationDTO.Contestant.Engine, registrationDTO.Contestant.Team, username); } return(new OKResponse()); } catch (Exception e) { Console.WriteLine(e.StackTrace); } } return(response); }