diff --git a/Octokit.Reactive/Clients/IObservableOrganizationMembersClient.cs b/Octokit.Reactive/Clients/IObservableOrganizationMembersClient.cs index 514872ca..986e9fd4 100644 --- a/Octokit.Reactive/Clients/IObservableOrganizationMembersClient.cs +++ b/Octokit.Reactive/Clients/IObservableOrganizationMembersClient.cs @@ -27,6 +27,29 @@ namespace Octokit.Reactive /// IObservable GetAll(string org); + /// + /// + /// List all users who are members of an organization. A member is a user that + /// belongs to at least 1 team in the organization. + /// + /// + /// If the authenticated user is also an owner of this organization then both + /// concealed and public member will be returned. + /// + /// + /// If the requester is not an owner of the organization the query will be redirected + /// to the public members list. + /// + /// + /// + /// See the API documentation + /// for more information. + /// + /// The login for the organization + /// The filter expression to use + /// + public IObservable GetAll(string org, string filter); + /// /// List all users who have publicized their membership of the organization. /// diff --git a/Octokit.Reactive/Clients/IObservableTeamsClient.cs b/Octokit.Reactive/Clients/IObservableTeamsClient.cs index 10e48abb..1edae168 100644 --- a/Octokit.Reactive/Clients/IObservableTeamsClient.cs +++ b/Octokit.Reactive/Clients/IObservableTeamsClient.cs @@ -71,5 +71,12 @@ namespace Octokit.Reactive /// The user to check. /// if the user is a member of the team; otherwise. IObservable IsMember(int id, string login); + + /// + /// Returns all team's repositories. + /// + /// Thrown when a general API error occurs. + /// The team's repositories + public IObservable GetRepositories(int id); } } diff --git a/Octokit.Reactive/Clients/ObservableOrganizationMembersClient.cs b/Octokit.Reactive/Clients/ObservableOrganizationMembersClient.cs index 8fc09701..c3eba9cd 100644 --- a/Octokit.Reactive/Clients/ObservableOrganizationMembersClient.cs +++ b/Octokit.Reactive/Clients/ObservableOrganizationMembersClient.cs @@ -49,6 +49,36 @@ namespace Octokit.Reactive return _connection.GetAndFlattenAllPages(ApiUrls.Members(org)); } + /// + /// + /// List all users who are members of an organization. A member is a user that + /// belongs to at least 1 team in the organization. + /// + /// + /// If the authenticated user is also an owner of this organization then both + /// concealed and public member will be returned. + /// + /// + /// If the requester is not an owner of the organization the query will be redirected + /// to the public members list. + /// + /// + /// + /// See the API documentation + /// for more information. + /// + /// The login for the organization + /// The filter expression to use + /// + public IObservable GetAll(string org, string filter) + { + Ensure.ArgumentNotNullOrEmptyString(org, "org"); + Ensure.ArgumentNotNullOrEmptyString(filter, "filter"); + + + return _connection.GetAndFlattenAllPages(ApiUrls.Members(org, filter)); + } + /// /// List all users who have publicized their membership of the organization. /// diff --git a/Octokit.Reactive/Clients/ObservableTeamsClient.cs b/Octokit.Reactive/Clients/ObservableTeamsClient.cs index bdbdff8c..c2dda7c2 100644 --- a/Octokit.Reactive/Clients/ObservableTeamsClient.cs +++ b/Octokit.Reactive/Clients/ObservableTeamsClient.cs @@ -107,5 +107,14 @@ namespace Octokit.Reactive return _client.IsMember(id, login).ToObservable(); } + /// + /// Returns all team's repositories. + /// + /// Thrown when a general API error occurs. + /// The team's repositories + public IObservable GetRepositories(int id) + { + return _connection.GetAndFlattenAllPages(ApiUrls.TeamRepositories(id)); + } } } diff --git a/Octokit/Clients/TeamsClient.cs b/Octokit/Clients/TeamsClient.cs index 31529faf..092ced4c 100644 --- a/Octokit/Clients/TeamsClient.cs +++ b/Octokit/Clients/TeamsClient.cs @@ -139,7 +139,7 @@ namespace Octokit Ensure.ArgumentNotNullOrEmptyString(login, "login"); var endpoint = ApiUrls.TeamMember(id, login); - return ApiConnection.Connection.Put(endpoint); + return ApiConnection.Put(endpoint); } /// @@ -150,9 +150,7 @@ namespace Octokit public Task RemoveMember(int id, string login) { Ensure.ArgumentNotNullOrEmptyString(login, "login"); - - var endpoint = ApiUrls.TeamMember(id, login); - return ApiConnection.Delete(endpoint); + return ApiConnection.Delete(ApiUrls.TeamMember(id, login)); } ///