/// <summary> /// Gets commits from specified branch in specified repository. /// </summary> /// <param name="repository">The repository data.</param> /// <param name="branch">The branch data.</param> /// <returns>ClientResponse instance with collections of commits.</returns> public async Task <ClientResponse <IEnumerable <Commit> > > GetBranchCommits(BasicRepositoryData repository, Branch branch) { if (repository == null || branch == null) { var clientResponse = new ClientResponse <IEnumerable <Commit> >() { Message = MessagesHelper.EmptyDataMessage, Status = OperationStatus.EmptyData }; return(clientResponse); } return(await this.GetBranchCommits(repository.Owner.Login, repository.Name, branch.Name)); }
/// <summary> /// Gets branches list of specified repository. /// </summary> /// <param name="repositoryData">The data of repository.</param> /// <returns>ClientResponse instance with collection of branches.</returns> public async Task <ClientResponse <IEnumerable <Branch> > > GetBranchList(BasicRepositoryData repositoryData) { if (repositoryData == null) { var clientResponse = new ClientResponse <IEnumerable <Branch> > { Message = MessagesHelper.EmptyDataMessage, Status = OperationStatus.EmptyData }; return(clientResponse); } return(await this.GetBranchList(repositoryData.Owner.Login, repositoryData.Name)); }
/// <summary> /// Get full repository data based on basic repository data. /// </summary> /// <param name="repositoryData">Basic repository data.</param> /// <returns>Full repository data of specified repository.</returns> public async Task <ClientResponse <FullRepositoryData> > GetFullRepositoryData(BasicRepositoryData repositoryData) { var url = $"/{UrlConstants.RepositoriesUrlPart}/{repositoryData.Owner.Login}/{repositoryData.Name}"; HttpResponseMessage httpresponse = await this.requestSender.SendGetRequestToGitHubApiAsync(url); var clientresponse = new ClientResponse <FullRepositoryData>(); return(await this.requestSender.ProcessHttpResponse <FullRepositoryData>( httpresponse, MessagesHelper.GenerateUserOrRepositoryNotFoundMessage(repositoryData.Owner.Login, repositoryData.Name))); }