@Override public List<PullRequest> getPullRequestsByRepository(Integer page, Integer pageSize, final String repository) { GitMetadata metadata = getRepositoryMetadata(repository); List<PullRequest> pullRequests = metadata.getPullRequests(); return this.paginate(page, pageSize, pullRequests); }
@Override public List<PullRequest> getPullRequestsByRepository(Integer page, Integer pageSize, final String repository) { GitMetadata metadata = getRepositoryMetadata(repository); List<PullRequest> pullRequests = metadata.getPullRequests(); return this.paginate(page, pageSize, pullRequests); }
public List<PullRequest> getPullRequestsByBranch(Integer page, Integer pageSize, final String repository, final String branch) { GitMetadata metadata = getRepositoryMetadata(repository); List<PullRequest> pullRequests = metadata.getPullRequests(elem -> elem.getTargetBranch().equals(branch)); return this.paginate(page, pageSize, pullRequests); }
@Override public List<PullRequest> getPullRequestsByBranch(Integer page, Integer pageSize, final String repository, final String branch) { GitMetadata metadata = getRepositoryMetadata(repository); List<PullRequest> pullRequests = metadata.getPullRequests(elem -> elem.getTargetBranch().equals(branch)); return this.paginate(page, pageSize, pullRequests); }
@Override public PullRequest acceptPullRequest(final PullRequest pullRequest) { checkNotNull("pullRequest", pullRequest); checkNotNull("id", pullRequest.getId()); checkNotEmpty("targetRepository", pullRequest.getTargetRepository()); String repository = pullRequest.getTargetRepository(); long id = pullRequest.getId(); final GitMetadata metadata = this.getRepositoryMetadata(repository); final PullRequest acceptPullRequest = metadata.getPullRequest(id); this.createHiddenBranch(acceptPullRequest); this.mergePullRequest(acceptPullRequest); this.changePullRequestStatus(repository, id, PullRequestStatus.MERGED); return this.getRepositoryMetadata(repository).getPullRequest(id); }
@Override public PullRequest acceptPullRequest(final PullRequest pullRequest) { checkNotNull("pullRequest", pullRequest); checkNotNull("id", pullRequest.getId()); checkNotEmpty("targetRepository", pullRequest.getTargetRepository()); String repository = pullRequest.getTargetRepository(); long id = pullRequest.getId(); final GitMetadata metadata = this.getRepositoryMetadata(repository); final PullRequest acceptPullRequest = metadata.getPullRequest(id); this.createHiddenBranch(acceptPullRequest); this.mergePullRequest(acceptPullRequest); this.changePullRequestStatus(repository, id, PullRequestStatus.MERGED); return this.getRepositoryMetadata(repository).getPullRequest(id); }
@Override public PullRequest rejectPullRequest(final PullRequest pullRequest) { checkNotNull("pullRequest", pullRequest); checkNotNull("id", pullRequest.getId()); checkNotEmpty("targetRepository", pullRequest.getTargetRepository()); String repository = pullRequest.getTargetRepository(); long id = pullRequest.getId(); this.changePullRequestStatus(repository, id, PullRequestStatus.REJECTED); return this.getRepositoryMetadata(repository).getPullRequest(id); }
@Override public PullRequest rejectPullRequest(final PullRequest pullRequest) { checkNotNull("pullRequest", pullRequest); checkNotNull("id", pullRequest.getId()); checkNotEmpty("targetRepository", pullRequest.getTargetRepository()); String repository = pullRequest.getTargetRepository(); long id = pullRequest.getId(); this.changePullRequestStatus(repository, id, PullRequestStatus.REJECTED); return this.getRepositoryMetadata(repository).getPullRequest(id); }
@Override public PullRequest closePullRequest(final PullRequest pullRequest) { checkNotNull("pullRequest", pullRequest); checkNotNull("id", pullRequest.getId()); checkNotEmpty("targetRepository", pullRequest.getTargetRepository()); String repository = pullRequest.getTargetRepository(); long id = pullRequest.getId(); this.changePullRequestStatus(repository, id, PullRequestStatus.CLOSED); return this.getRepositoryMetadata(repository).getPullRequest(id); }
@Override public PullRequest closePullRequest(final PullRequest pullRequest) { checkNotNull("pullRequest", pullRequest); checkNotNull("id", pullRequest.getId()); checkNotEmpty("targetRepository", pullRequest.getTargetRepository()); String repository = pullRequest.getTargetRepository(); long id = pullRequest.getId(); this.changePullRequestStatus(repository, id, PullRequestStatus.CLOSED); return this.getRepositoryMetadata(repository).getPullRequest(id); }
@Override public void deletePullRequest(final PullRequest pullRequest) { checkNotNull("pullRequest", pullRequest); checkNotNull("id", pullRequest.getId()); checkNotEmpty("targetRepository", pullRequest.getTargetRepository()); String repository = pullRequest.getTargetRepository(); long id = pullRequest.getId(); GitMetadata metadata = getRepositoryMetadata(repository); PullRequest removablePullRequest = metadata.getPullRequest(id); List<PullRequest> finalPullRequests = metadata.getPullRequests(); finalPullRequests.remove(removablePullRequest); GitMetadata storableMetadata = new GitMetadataImpl(metadata.getName(), metadata.getOrigin(), metadata.getForks(), finalPullRequests); this.metadataStore.write(storableMetadata.getName(), storableMetadata); this.deleteHiddenBranch(removablePullRequest); }
@Override public void deletePullRequest(final PullRequest pullRequest) { checkNotNull("pullRequest", pullRequest); checkNotNull("id", pullRequest.getId()); checkNotEmpty("targetRepository", pullRequest.getTargetRepository()); String repository = pullRequest.getTargetRepository(); long id = pullRequest.getId(); GitMetadata metadata = getRepositoryMetadata(repository); PullRequest removablePullRequest = metadata.getPullRequest(id); List<PullRequest> finalPullRequests = metadata.getPullRequests(); finalPullRequests.remove(removablePullRequest); GitMetadata storableMetadata = new GitMetadataImpl(metadata.getName(), metadata.getOrigin(), metadata.getForks(), finalPullRequests); this.metadataStore.write(storableMetadata.getName(), storableMetadata); this.deleteHiddenBranch(removablePullRequest); }
protected void changePullRequestStatus(final String repository, final long id, final PullRequestStatus status) { checkNotEmpty("repository", repository); checkNotNull("status", status); GitMetadata metadata = getRepositoryMetadata(repository); PullRequest pullRequest = metadata.getPullRequest(id); PullRequestImpl finalPullRequest = new PullRequestImpl(pullRequest.getId(), pullRequest.getSourceRepository(), pullRequest.getSourceBranch(), pullRequest.getTargetRepository(), pullRequest.getTargetBranch(), status); List<PullRequest> finalPullRequests = metadata.getPullRequests(elem -> elem.getId() != id); finalPullRequests.add(finalPullRequest); GitMetadata storableMetadata = new GitMetadataImpl(metadata.getName(), metadata.getOrigin(), metadata.getForks(), finalPullRequests); this.metadataStore.write(storableMetadata.getName(), storableMetadata); }
protected void changePullRequestStatus(final String repository, final long id, final PullRequestStatus status) { checkNotEmpty("repository", repository); checkNotNull("status", status); GitMetadata metadata = getRepositoryMetadata(repository); PullRequest pullRequest = metadata.getPullRequest(id); PullRequestImpl finalPullRequest = new PullRequestImpl(pullRequest.getId(), pullRequest.getSourceSpace(), pullRequest.getSourceRepository(), pullRequest.getSourceBranch(), pullRequest.getTargetSpace(), pullRequest.getTargetRepository(), pullRequest.getTargetBranch(), status); List<PullRequest> finalPullRequests = metadata.getPullRequests(elem -> elem.getId() != id); finalPullRequests.add(finalPullRequest); GitMetadata storableMetadata = new GitMetadataImpl(metadata.getName(), metadata.getOrigin(), metadata.getForks(), finalPullRequests); this.metadataStore.write(storableMetadata.getName(), storableMetadata); }