/// <summary> /// This method will NOT BE called from outside the project to interact will the flight center facades /// </summary> /// <param name="username"></param> /// <param name="password"></param> /// <param name="facade"></param> /// <param name="loginToken"></param> /// <returns></returns> internal override bool TryLogin(string username, string password, out FacadeBase facade, out ILoginToken loginToken) { loginToken = null; facade = new AnnonymousUserFacadeMSSQL(); LoginToken <AirlineCompany> airlineToken; if (TryAirLineLogin(username, password, out airlineToken)) { loginToken = airlineToken; facade = new LoggedInAirlineFacadeMSSQL(); return(true); } LoginToken <Customer> customerToken; if (TryCustomerLogin(username, password, out customerToken)) { loginToken = customerToken; facade = new LoggedInCustomerFacadeMSSQL(); return(true); } LoginToken <Administrator> administratorToken; if (TryAdministratorLogin(username, password, out administratorToken)) { loginToken = administratorToken; facade = new LoggedInAdministratorFacadeMSSQL(); return(true); } return(false); }
}//SINGELTON public bool Login(string username, string password, out FacadeBase facade, out ILoginToken loginToken) { bool result = false; loginToken = null; facade = null; try { result = _loginService.TryLogin(username, password, out facade, out loginToken); } catch (WrongPasswordException ex) { // TODO // write later into log file - log4net result = false; } return(result); }//RETURNS USER AND ITS FACADE