mirror of
https://github.com/jlengrand/github-api.git
synced 2026-03-11 08:21:23 +00:00
46 lines
1.2 KiB
Java
46 lines
1.2 KiB
Java
package org.kohsuke.github;
|
|
|
|
import java.util.Iterator;
|
|
|
|
import javax.annotation.Nonnull;
|
|
|
|
/**
|
|
* Iterable for workflow runs listing.
|
|
*/
|
|
class GHWorkflowRunsIterable extends PagedIterable<GHWorkflowRun> {
|
|
private final GHRepository owner;
|
|
private final GitHubRequest request;
|
|
|
|
private GHWorkflowRunsPage result;
|
|
|
|
public GHWorkflowRunsIterable(GHRepository owner, GitHubRequest request) {
|
|
this.owner = owner;
|
|
this.request = request;
|
|
}
|
|
|
|
@Nonnull
|
|
@Override
|
|
public PagedIterator<GHWorkflowRun> _iterator(int pageSize) {
|
|
return new PagedIterator<>(
|
|
adapt(GitHubPageIterator
|
|
.create(owner.getRoot().getClient(), GHWorkflowRunsPage.class, request, pageSize)),
|
|
null);
|
|
}
|
|
|
|
protected Iterator<GHWorkflowRun[]> adapt(final Iterator<GHWorkflowRunsPage> base) {
|
|
return new Iterator<GHWorkflowRun[]>() {
|
|
public boolean hasNext() {
|
|
return base.hasNext();
|
|
}
|
|
|
|
public GHWorkflowRun[] next() {
|
|
GHWorkflowRunsPage v = base.next();
|
|
if (result == null) {
|
|
result = v;
|
|
}
|
|
return v.getWorkflowRuns(owner);
|
|
}
|
|
};
|
|
}
|
|
}
|