public ObservablePullRequestsClient(IGitHubClient client)
        {
            Ensure.ArgumentNotNull(client, nameof(client));

            _client       = client.Repository.PullRequest;
            _connection   = client.Connection;
            Review        = new ObservablePullRequestReviewsClient(client);
            ReviewComment = new ObservablePullRequestReviewCommentsClient(client);
            ReviewRequest = new ObservablePullRequestReviewRequestsClient(client);
        }
        public ObservableGitHubClient(IGitHubClient gitHubClient)
        {
            Ensure.ArgumentNotNull(gitHubClient, "githubClient");

            _gitHubClient     = gitHubClient;
            Authorization     = new ObservableAuthorizationsClient(gitHubClient);
            Activity          = new ObservableActivitiesClient(gitHubClient);
            Issue             = new ObservableIssuesClient(gitHubClient);
            Miscellaneous     = new ObservableMiscellaneousClient(gitHubClient);
            Oauth             = new ObservableOauthClient(gitHubClient);
            Organization      = new ObservableOrganizationsClient(gitHubClient);
            PullRequest       = new ObservablePullRequestsClient(gitHubClient);
            PullRequestReview = new ObservablePullRequestReviewsClient(gitHubClient);
            Repository        = new ObservableRepositoriesClient(gitHubClient);
            User       = new ObservableUsersClient(gitHubClient);
            Git        = new ObservableGitDatabaseClient(gitHubClient);
            Gist       = new ObservableGistsClient(gitHubClient);
            Search     = new ObservableSearchClient(gitHubClient);
            Enterprise = new ObservableEnterpriseClient(gitHubClient);
            Migration  = new ObservableMigrationClient(gitHubClient);
            Reaction   = new ObservableReactionsClient(gitHubClient);
        }