Example #1
0
        public async Task <OAuthCompleteInformation> Authorize(Func <string, Task <string> > extractVerifier)
        {
            var res = await RequestToken();

            if ((res == null) || (!TokenIsPartialOrValid))
            {
                return(null);
            }

            var url      = GetAuthorizeUrl();
            var verifier = await extractVerifier(url);

            return(_CompleteInformation = await Access(verifier));
        }
Example #2
0
        private async Task <OAuthCompleteInformation> RequestToken()
        {
            if (_CompleteInformation != null)
            {
                return(_CompleteInformation);
            }

            if (_TokenInformation?.PartialOrValid == true)
            {
                return(null);
            }

            var requestTokenClient = GetRequestTokenClient(RequestUrl);

            _TokenInformation = await GetTokenInformationFromRequest(requestTokenClient, _RequestTokenUrl);

            if (!TokenIsValid)
            {
                return(null);
            }

            return(_CompleteInformation = new OAuthCompleteInformation(_ConsumerInformation, _TokenInformation));
        }