Class GitHubSCMSourceRequest
java.lang.Object
jenkins.scm.api.trait.SCMSourceRequest
org.jenkinsci.plugins.github_branch_source.GitHubSCMSourceRequest
- All Implemented Interfaces:
Closeable,AutoCloseable
public class GitHubSCMSourceRequest
extends jenkins.scm.api.trait.SCMSourceRequest
The
SCMSourceRequest for GitHub.- Since:
- 2.2.0
-
Nested Class Summary
Nested classes/interfaces inherited from class jenkins.scm.api.trait.SCMSourceRequest
jenkins.scm.api.trait.SCMSourceRequest.IntermediateLambda<I extends Object>, jenkins.scm.api.trait.SCMSourceRequest.LazyRevisionLambda<H extends jenkins.scm.api.SCMHead,R extends jenkins.scm.api.SCMRevision, I extends Object>, jenkins.scm.api.trait.SCMSourceRequest.ProbeLambda<H extends jenkins.scm.api.SCMHead, I extends Object>, jenkins.scm.api.trait.SCMSourceRequest.RevisionLambda<H extends jenkins.scm.api.SCMHead, R extends jenkins.scm.api.SCMRevision>, jenkins.scm.api.trait.SCMSourceRequest.Witness<H extends jenkins.scm.api.SCMHead, R extends jenkins.scm.api.SCMRevision> -
Method Summary
Modifier and TypeMethodDescriptionfinal voidDeprecated.rate limit checking is done automaticallyvoidclose()final Iterable<org.kohsuke.github.GHBranch>Returns the branch details or an empty list if either the request did not specify toisFetchBranches()or if the branch details have not been provided bysetBranches(Iterable)yet.Returns the names of the repository collaborators ornullif those details have not been provided yet.final Set<jenkins.scm.api.mixin.ChangeRequestCheckoutStrategy>Returns theChangeRequestCheckoutStrategyto create for each fork pull request.org.kohsuke.github.GitHubReturns theGitHubAPI connector to use for the request.final Set<jenkins.scm.api.mixin.ChangeRequestCheckoutStrategy>Returns theChangeRequestCheckoutStrategyto create for each origin pull request.org.kohsuke.github.GHPermissionTypegetPermissions(String username) Returns the permissions of the supplied user.Returns the permission source.Returns theChangeRequestCheckoutStrategyto create for each pull request.final Set<jenkins.scm.api.mixin.ChangeRequestCheckoutStrategy>getPRStrategies(boolean fork) Returns theChangeRequestCheckoutStrategyto create for pull requests of the specified type.Iterable<org.kohsuke.github.GHPullRequest>Returns the pull request details or an empty list if either the request did not specify toisFetchPRs()or if the pull request details have not been provided bysetPullRequests(Iterable)yet.org.kohsuke.github.GHRepositoryReturns theGHRepository.Gets requested origin branch names.Returns requested pull request numbers.Gets requested tag names.final Iterable<org.kohsuke.github.GHRef>getTags()Returns the branch details or an empty list if either the request did not specify toisFetchBranches()or if the branch details have not been provided bysetBranches(Iterable)yet.final booleanReturnstrueif branch details need to be fetched.final booleanReturnstrueif fork pull request details need to be fetched.final booleanReturnstrueif origin pull request details need to be fetched.final booleanReturnstrueif pull request details need to be fetched.final booleanReturnstrueif tag details need to be fetched.final voidsetBranches(Iterable<org.kohsuke.github.GHBranch> branches) Provides the requests with the branch details.final voidsetCollaboratorNames(Set<String> collaboratorNames) Provides the request with the names of the repository collaborators.voidsetGitHub(org.kohsuke.github.GitHub gitHub) Provides theGitHubAPI connector to use for the request.voidsetPermissionsSource(GitHubPermissionsSource permissionsSource) Sets the permission source.voidsetPullRequests(Iterable<org.kohsuke.github.GHPullRequest> pullRequests) Provides the requests with the pull request details.voidsetRepository(org.kohsuke.github.GHRepository repository) Sets theGHRepository.final voidProvides the requests with the tag details.Methods inherited from class jenkins.scm.api.trait.SCMSourceRequest
getCriteria, isComplete, isExcluded, isTrusted, listener, manage, process, process, process
-
Method Details
-
isFetchBranches
public final boolean isFetchBranches()Returnstrueif branch details need to be fetched.- Returns:
trueif branch details need to be fetched.
-
isFetchTags
public final boolean isFetchTags()Returnstrueif tag details need to be fetched.- Returns:
trueif tag details need to be fetched.
-
isFetchPRs
public final boolean isFetchPRs()Returnstrueif pull request details need to be fetched.- Returns:
trueif pull request details need to be fetched.
-
isFetchOriginPRs
public final boolean isFetchOriginPRs()Returnstrueif origin pull request details need to be fetched.- Returns:
trueif origin pull request details need to be fetched.
-
isFetchForkPRs
public final boolean isFetchForkPRs()Returnstrueif fork pull request details need to be fetched.- Returns:
trueif fork pull request details need to be fetched.
-
getOriginPRStrategies
@NonNull public final Set<jenkins.scm.api.mixin.ChangeRequestCheckoutStrategy> getOriginPRStrategies()Returns theChangeRequestCheckoutStrategyto create for each origin pull request.- Returns:
- the
ChangeRequestCheckoutStrategyto create for each origin pull request.
-
getForkPRStrategies
@NonNull public final Set<jenkins.scm.api.mixin.ChangeRequestCheckoutStrategy> getForkPRStrategies()Returns theChangeRequestCheckoutStrategyto create for each fork pull request.- Returns:
- the
ChangeRequestCheckoutStrategyto create for each fork pull request.
-
getPRStrategies
@NonNull public final Set<jenkins.scm.api.mixin.ChangeRequestCheckoutStrategy> getPRStrategies(boolean fork) Returns theChangeRequestCheckoutStrategyto create for pull requests of the specified type.- Parameters:
fork-trueto return strategies for the fork pull requests,falsefor origin pull requests.- Returns:
- the
ChangeRequestCheckoutStrategyto create for each pull request.
-
getPRStrategies
public final Map<Boolean,Set<jenkins.scm.api.mixin.ChangeRequestCheckoutStrategy>> getPRStrategies()Returns theChangeRequestCheckoutStrategyto create for each pull request.- Returns:
- a map of the
ChangeRequestCheckoutStrategyto create for each pull request keyed by whether the strategy applies to forks or not (Boolean.FALSEis the key for origin pull requests)
-
getRequestedPullRequestNumbers
Returns requested pull request numbers.- Returns:
- the requested pull request numbers or
nullif the request was not scoped to a subset of pull requests.
-
getRequestedOriginBranchNames
Gets requested origin branch names.- Returns:
- the requested origin branch names or
nullif the request was not scoped to a subset of branches.
-
getRequestedTagNames
Gets requested tag names.- Returns:
- the requested tag names or
nullif the request was not scoped to a subset of tags.
-
setPullRequests
Provides the requests with the pull request details.- Parameters:
pullRequests- the pull request details.
-
getPullRequests
Returns the pull request details or an empty list if either the request did not specify toisFetchPRs()or if the pull request details have not been provided bysetPullRequests(Iterable)yet.- Returns:
- the details of pull requests, may be limited by
getRequestedPullRequestNumbers()or may be empty if notisFetchPRs()
-
setBranches
Provides the requests with the branch details.- Parameters:
branches- the branch details.
-
getBranches
Returns the branch details or an empty list if either the request did not specify toisFetchBranches()or if the branch details have not been provided bysetBranches(Iterable)yet.- Returns:
- the branch details (may be empty)
-
setTags
Provides the requests with the tag details.- Parameters:
tags- the tag details.
-
getTags
Returns the branch details or an empty list if either the request did not specify toisFetchBranches()or if the branch details have not been provided bysetBranches(Iterable)yet.- Returns:
- the branch details (may be empty)
-
setCollaboratorNames
Provides the request with the names of the repository collaborators.- Parameters:
collaboratorNames- the names of the repository collaborators.
-
getCollaboratorNames
Returns the names of the repository collaborators ornullif those details have not been provided yet.- Returns:
- the names of the repository collaborators or
nullif those details have not been provided yet.
-
checkApiRateLimit
Deprecated.rate limit checking is done automaticallyChecks the API rate limit and sleeps if over-used until the remaining limit is on-target for expected usage.- Throws:
IOException- if the rate limit could not be obtained.InterruptedException- if interrupted while waiting.
-
getGitHub
@CheckForNull public org.kohsuke.github.GitHub getGitHub()Returns theGitHubAPI connector to use for the request.- Returns:
- the
GitHubAPI connector to use for the request ornullif caller should establish their own.
-
setGitHub
public void setGitHub(@CheckForNull org.kohsuke.github.GitHub gitHub) Provides theGitHubAPI connector to use for the request.- Parameters:
gitHub-GitHubAPI connector to use for the request.
-
getRepository
public org.kohsuke.github.GHRepository getRepository()Returns theGHRepository.- Returns:
- the
GHRepository.
-
setRepository
public void setRepository(org.kohsuke.github.GHRepository repository) Sets theGHRepository.- Parameters:
repository- theGHRepository.
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Overrides:
closein classjenkins.scm.api.trait.SCMSourceRequest- Throws:
IOException
-
getPermissions
public org.kohsuke.github.GHPermissionType getPermissions(String username) throws IOException, InterruptedException Returns the permissions of the supplied user.- Parameters:
username- the user.- Returns:
- the permissions of the supplied user.
- Throws:
IOException- if the permissions could not be retrieved.InterruptedException- if interrupted while retrieving the permissions.
-
getPermissionsSource
Returns the permission source.- Returns:
- the permission source.
-
setPermissionsSource
Sets the permission source.- Parameters:
permissionsSource- the permission source.
-