Implement observable oauth client

Rx will never die
This commit is contained in:
Haacked
2014-04-22 08:38:53 -07:00
parent 5d70f885b7
commit 9e0fb886ca
5 changed files with 61 additions and 2 deletions

View File

@@ -0,0 +1,28 @@
using System;
using System.Reactive.Linq;
using System.Reactive.Threading.Tasks;
namespace Octokit.Reactive
{
public class ObservableOauthClient : IObservableOauthClient
{
readonly IGitHubClient _client;
public ObservableOauthClient(IGitHubClient client)
{
Ensure.ArgumentNotNull(client, "client");
_client = client;
}
public IObservable<Uri> GetGitHubLoginUrl(OauthLoginRequest request)
{
return Observable.Return(_client.Oauth.GetGitHubLoginUrl(request));
}
public IObservable<OauthToken> CreateAccessToken(OauthTokenRequest request)
{
return _client.Oauth.CreateAccessToken(request).ToObservable();
}
}
}