public ApiResponse <Token> GetAccessToken <T>(T credentials) where T : IOAuthCredentials { ClientCredentials credentials1 = (object)credentials as ClientCredentials; if (credentials1 != null) { return(this.GetAccessToken(credentials1)); } PasswordCredentials credentials2 = (object)credentials as PasswordCredentials; if (credentials2 != null) { return(this.GetAccessToken(credentials2)); } AuthorizationCodeCredentials credentials3 = (object)credentials as AuthorizationCodeCredentials; if (credentials3 != null) { return(this.GetAccessToken(credentials3)); } RefreshTokenCredentials credentials4 = (object)credentials as RefreshTokenCredentials; if (credentials4 != null) { return(this.GetAccessToken(credentials4)); } throw new AuthenticationException("Unsupported credential type"); }
public ApiResponse <Token> GetAccessToken(AuthorizationCodeCredentials credentials) { return(this.GetAccessToken((IDictionary <string, string>) new Dictionary <string, string>() { { "code", credentials.Code }, { "redirect_uri", credentials.RedirectUri }, { "client_id", credentials.ClientId }, { "client_secret", credentials.ClientSecret }, { "grant_type", credentials.GrantType } }, (string)null)); }
public async Task <ApiResponse <Token> > GetAccessTokenAsync <T>(T credentials, CancellationToken cancellationToken = default(CancellationToken)) where T : IOAuthCredentials { ClientCredentials credentials1 = (object)(T)credentials as ClientCredentials; if (credentials1 != null) { return(await this.GetAccessTokenAsync(credentials1, cancellationToken)); } PasswordCredentials credentials2 = (object)(T)credentials as PasswordCredentials; if (credentials2 != null) { return(await this.GetAccessTokenAsync(credentials2, cancellationToken)); } AuthorizationCodeCredentials credentials3 = (object)(T)credentials as AuthorizationCodeCredentials; if (credentials3 != null) { return(await this.GetAccessTokenAsync(credentials3, cancellationToken)); } RefreshTokenCredentials credentials4 = (object)(T)credentials as RefreshTokenCredentials; if (credentials4 != null) { return(await this.GetAccessTokenAsync(credentials4, cancellationToken)); } throw new AuthenticationException("Unsupported credential type"); }
public async Task <ApiResponse <Token> > GetAccessTokenAsync(AuthorizationCodeCredentials credentials, CancellationToken cancellationToken = default(CancellationToken)) { return(await this.GetAccessTokenAsync((IDictionary <string, string>) new Dictionary <string, string>() { { "code", credentials.Code }, { "redirect_uri", credentials.RedirectUri }, { "client_id", credentials.ClientId }, { "client_secret", credentials.ClientSecret }, { "grant_type", credentials.GrantType } }, (string)null, cancellationToken)); }