using System; using System.Diagnostics.CodeAnalysis; namespace Octokit.Reactive { public interface IObservablePullRequestsClient { /// /// Gets a single Pull Request by number. /// /// /// http://developer.github.com/v3/pulls/#get-a-single-pull-request /// /// A result [SuppressMessage("Microsoft.Naming", "CA1716:IdentifiersShouldNotMatchKeywords", MessageId = "Get", Justification = "Method makes a network request")] IObservable Get(string owner, string name, int number); /// /// Gets all open pull requests for the repository. /// /// /// http://developer.github.com/v3/pulls/#list-pull-requests /// /// The owner of the repository /// The name of the repository /// A collection of results IObservable GetForRepository(string owner, string name); /// /// Query pull requests for the repository based on criteria /// /// /// http://developer.github.com/v3/pulls/#list-pull-requests /// /// The owner of the repository /// The name of the repository /// Used to filter and sort the list of pull requests returned /// A collection of results IObservable GetForRepository(string owner, string name, PullRequestRequest request); /// /// Creates a pull request for the specified repository. /// /// http://developer.github.com/v3/pulls/#create-a-pull-request /// The owner of the repository /// The name of the repository /// A instance describing the new PullRequest to create /// A created result IObservable Create(string owner, string name, NewPullRequest newPullRequest); /// /// Update a pull request for the specified repository. /// /// http://developer.github.com/v3/pulls/#update-a-pull-request /// The owner of the repository /// The name of the repository /// The PullRequest number /// An instance describing the changes to make to the PullRequest /// /// An updated result IObservable Update(string owner, string name, int number, PullRequestUpdate pullRequestUpdate); /// /// Merge a pull request. /// /// http://developer.github.com/v3/pulls/#merge-a-pull-request-merge-buttontrade /// The owner of the repository /// The name of the repository /// The pull request number /// A instance describing a pull request merge /// A result IObservable Merge(string owner, string name, int number, MergePullRequest mergePullRequest); /// /// Gets the pull request merge status. /// /// http://developer.github.com/v3/pulls/#get-if-a-pull-request-has-been-merged /// The owner of the repository /// The name of the repository /// The pull request number /// A result - true if the pull request has been merged, false otherwise IObservable Merged(string owner, string name, int number); /// /// Gets the list of commits on a pull request. /// /// http://developer.github.com/v3/pulls/#list-commits-on-a-pull-request /// The owner of the repository /// The name of the repository /// The pull request number /// A collection of results IObservable Commits(string owner, string name, int number); } }