/// <summary> /// Authenticates with the specified credentials, and returns a session or null if the authentication failed. /// </summary> public async Task<string> AuthenticateAsync( string userName, string password, bool rememberMe ) { var keyResponse = await _client.GetAsync( OAuth2Url, TokenRequestParameters ); string requestKey = GetUrlParameterValue( keyResponse.RequestUrl, TequilaRequestKeyParameter ); if ( await AuthenticateAsync( userName, password, requestKey ) ) { var codeResponse = await _client.GetAsync( OAuth2Url, CodeRequestParameters ); string code = GetUrlParameterValue( codeResponse.RequestUrl, TequilaCodeParameter ); var sessionRequest = new SessionRequest { TequilaToken = code, RememberMe = rememberMe }; var sessionResponse = await _authenticationService.GetSessionAsync( sessionRequest ); if ( sessionResponse.Status == ResponseStatus.Success ) { return sessionResponse.Session; } } return null; }
public Task<SessionResponse> GetSessionAsync( SessionRequest request ) { return Task.FromResult( new SessionResponse() ); }