public async Task <ITwitterResult <ITwitterCredentials> > RequestCredentials(IRequestCredentialsParameters parameters, ITwitterRequest request) { var twitterResult = await _authQueryExecutor.RequestCredentials(parameters, request).ConfigureAwait(false); var oAuthToken = twitterResult.RawResult.GetURLParameter("oauth_token"); var oAuthTokenSecret = twitterResult.RawResult.GetURLParameter("oauth_token_secret"); if (oAuthToken == null || oAuthTokenSecret == null) { throw new TwitterAuthException(twitterResult, "Invalid authentication response"); } var credentials = new TwitterCredentials( parameters.AuthRequest.ConsumerKey, parameters.AuthRequest.ConsumerSecret, oAuthToken, oAuthTokenSecret); return(new TwitterResult <ITwitterCredentials> { Request = twitterResult.Request, Response = twitterResult.Response, DataTransferObject = credentials }); }
public string GetRequestCredentialsQuery(IRequestCredentialsParameters parameters) { var query = new StringBuilder(Resources.Auth_RequestAccessToken); query.AddFormattedParameterToQuery(parameters.FormattedCustomQueryParameters); return(query.ToString()); }
public Task <ITwitterResult> RequestCredentialsAsync(IRequestCredentialsParameters parameters, ITwitterRequest request) { var oAuthWebRequestGenerator = _oAuthWebRequestGeneratorFactory.Create(); var callbackParameter = oAuthWebRequestGenerator.GenerateParameter("oauth_verifier", parameters.VerifierCode, true, true, false); request.Query.Url = _queryGenerator.GetRequestCredentialsQuery(parameters); request.Query.HttpMethod = HttpMethod.POST; request.Query.TwitterCredentials = new TwitterCredentials(parameters.AuthRequest.ConsumerKey, parameters.AuthRequest.ConsumerSecret); request.TwitterClientHandler = new AuthHttpHandler(callbackParameter, parameters.AuthRequest, oAuthWebRequestGenerator); return(_twitterAccessor.ExecuteRequestAsync(request)); }
public void Validate(IRequestCredentialsParameters parameters) { if (parameters == null) { throw new ArgumentNullException(nameof(parameters)); } if (string.IsNullOrEmpty(parameters.VerifierCode)) { throw new ArgumentNullException($"{nameof(parameters.VerifierCode)}", "If you received a null verifier code, the authentication failed"); } if (parameters.AuthRequest == null) { throw new ArgumentNullException($"{nameof(parameters.AuthRequest)}"); } ThrowIfInvalidConsumerCredentials($"{nameof(parameters.AuthRequest)}", parameters.AuthRequest); }
public void Validate(IRequestCredentialsParameters parameters) { _authClientParametersValidator.Validate(parameters); }
public async Task <ITwitterCredentials> RequestCredentialsAsync(IRequestCredentialsParameters parameters) { var twitterResult = await _authRequester.RequestCredentialsAsync(parameters).ConfigureAwait(false); return(twitterResult?.Model); }
public async Task <ITwitterCredentials> RequestCredentials(IRequestCredentialsParameters parameters) { var twitterResult = await _authRequester.RequestCredentials(parameters).ConfigureAwait(false); return(twitterResult?.DataTransferObject); }
public Task <ITwitterResult <ITwitterCredentials> > RequestCredentials(IRequestCredentialsParameters parameters) { _validator.Validate(parameters); return(ExecuteRequest(request => _authController.RequestCredentials(parameters, request))); }