Package jenkins.plugins.git
Class GitSCMSourceContext<C extends GitSCMSourceContext<C,R>,R extends GitSCMSourceRequest>
- java.lang.Object
-
- jenkins.scm.api.trait.SCMSourceContext<C,R>
-
- jenkins.plugins.git.GitSCMSourceContext<C,R>
-
- Type Parameters:
C
- the type ofGitSCMSourceContext
so that theSCMSourceContext.withTrait(SCMSourceTrait)
etc methods can be chained easily by subclasses.R
- the type ofGitSCMSourceRequest
produced bynewRequest(SCMSource, TaskListener)
.
public class GitSCMSourceContext<C extends GitSCMSourceContext<C,R>,R extends GitSCMSourceRequest> extends jenkins.scm.api.trait.SCMSourceContext<C,R>
TheSCMSourceContext
for aAbstractGitSCMSource
.- Since:
- 3.4.0
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
GitSCMSourceContext.RefNameMapping
-
Constructor Summary
Constructors Constructor Description GitSCMSourceContext(jenkins.scm.api.SCMSourceCriteria criteria, jenkins.scm.api.SCMHeadObserver observer)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<org.eclipse.jgit.transport.RefSpec>
asRefSpecs()
Converts the ref spec templates intoRefSpec
instances.Collection<GitSCMSourceContext.RefNameMapping>
getRefNameMappings()
String
gitTool()
Returns the name of theGitTool
to use ornull
to use the default.boolean
ignoreOnPushNotifications()
Returnstrue
if push notifications should be ignored.R
newRequest(jenkins.scm.api.SCMSource source, TaskListener listener)
boolean
pruneRefs()
Returnstrue
if theGitSCMSourceRequest
needs to be prune aware.C
pruneRefs(boolean include)
Adds a requirement for git ref pruning to anyGitSCMSourceRequest
for this context.List<String>
refSpecs()
Returns the list of ref specs to use.String
remoteName()
Returns the name to give the remote.boolean
wantBranches()
Returnstrue
if theGitSCMSourceRequest
will need information about branches.C
wantBranches(boolean include)
Adds a requirement for branch details to anyGitSCMSourceRequest
for this context.C
wantOtherRef(GitSCMSourceContext.RefNameMapping other)
Adds a requirement for details of additional refs to anyGitSCMSourceRequest
for this context.boolean
wantOtherRefs()
Returnstrue
if theGitSCMSourceRequest
will need information about other refs.boolean
wantTags()
Returnstrue
if theGitSCMSourceRequest
will need information about tags.C
wantTags(boolean include)
Adds a requirement for tag details to anyGitSCMSourceRequest
for this context.C
withGitTool(String gitTool)
Configures theToolInstallation.getName()
to use.C
withIgnoreOnPushNotifications(boolean ignoreOnPushNotifications)
Configures whether push notifications should be ignored.C
withoutRefSpecs()
Clears the specified ref specs.C
withRefSpec(String refSpec)
Adds the specified ref spec.C
withRefSpecs(List<String> refSpecs)
Adds the specified ref specs.C
withRemoteName(String remoteName)
Configures the remote name to use for the git repository.
-
-
-
Method Detail
-
wantBranches
public final boolean wantBranches()
Returnstrue
if theGitSCMSourceRequest
will need information about branches.- Returns:
true
if theGitSCMSourceRequest
will need information about branches.
-
wantTags
public final boolean wantTags()
Returnstrue
if theGitSCMSourceRequest
will need information about tags.- Returns:
true
if theGitSCMSourceRequest
will need information about tags.
-
pruneRefs
public final boolean pruneRefs()
Returnstrue
if theGitSCMSourceRequest
needs to be prune aware.- Returns:
true
if theGitSCMSourceRequest
needs to be prune aware.
-
wantOtherRefs
public final boolean wantOtherRefs()
Returnstrue
if theGitSCMSourceRequest
will need information about other refs.- Returns:
true
if theGitSCMSourceRequest
will need information about other refs.
-
getRefNameMappings
@NonNull public Collection<GitSCMSourceContext.RefNameMapping> getRefNameMappings()
-
gitTool
@CheckForNull public final String gitTool()
Returns the name of theGitTool
to use ornull
to use the default.- Returns:
- the name of the
GitTool
to use ornull
to use the default.
-
ignoreOnPushNotifications
public final boolean ignoreOnPushNotifications()
Returnstrue
if push notifications should be ignored.- Returns:
true
if push notifications should be ignored.
-
refSpecs
@NonNull public final List<String> refSpecs()
Returns the list of ref specs to use.- Returns:
- the list of ref specs to use.
-
remoteName
@NonNull public final String remoteName()
Returns the name to give the remote.- Returns:
- the name to give the remote.
-
wantBranches
@NonNull public C wantBranches(boolean include)
Adds a requirement for branch details to anyGitSCMSourceRequest
for this context.- Parameters:
include
-true
to add the requirement orfalse
to leave the requirement as is (makes simpler with method chaining)- Returns:
this
for method chaining.
-
wantTags
@NonNull public C wantTags(boolean include)
Adds a requirement for tag details to anyGitSCMSourceRequest
for this context.- Parameters:
include
-true
to add the requirement orfalse
to leave the requirement as is (makes simpler with method chaining)- Returns:
this
for method chaining.
-
pruneRefs
@NonNull public C pruneRefs(boolean include)
Adds a requirement for git ref pruning to anyGitSCMSourceRequest
for this context.- Parameters:
include
-true
to add the requirement orfalse
to leave the requirement as is (makes simpler with method chaining)- Returns:
this
for method chaining.
-
wantOtherRef
@NonNull public C wantOtherRef(GitSCMSourceContext.RefNameMapping other)
Adds a requirement for details of additional refs to anyGitSCMSourceRequest
for this context.- Parameters:
other
- The specification for that other ref- Returns:
this
for method chaining.
-
withGitTool
@NonNull public final C withGitTool(String gitTool)
Configures theToolInstallation.getName()
to use.- Parameters:
gitTool
- theToolInstallation.getName()
ornull
to use the system default.- Returns:
this
for method chaining.
-
withIgnoreOnPushNotifications
@NonNull public final C withIgnoreOnPushNotifications(boolean ignoreOnPushNotifications)
Configures whether push notifications should be ignored.- Parameters:
ignoreOnPushNotifications
-true
to ignore push notifications.- Returns:
this
for method chaining.
-
withRefSpec
@NonNull public final C withRefSpec(@NonNull String refSpec)
Adds the specified ref spec. If no ref specs were previously defined then the supplied ref spec will replaceAbstractGitSCMSource.REF_SPEC_DEFAULT
. The ref spec is expected to be processed for substitution ofAbstractGitSCMSource.REF_SPEC_REMOTE_NAME_PLACEHOLDER_STR
byAbstractGitSCMSource.getRemote()
before use.- Parameters:
refSpec
- the ref spec template to add.- Returns:
this
for method chaining.- See Also:
withoutRefSpecs()
-
withRefSpecs
@NonNull public final C withRefSpecs(List<String> refSpecs)
Adds the specified ref specs. If no ref specs were previously defined then the supplied ref specs will replaceAbstractGitSCMSource.REF_SPEC_DEFAULT
. The ref spec is expected to be processed for substitution ofAbstractGitSCMSource.REF_SPEC_REMOTE_NAME_PLACEHOLDER_STR
byAbstractGitSCMSource.getRemote()
before use.- Parameters:
refSpecs
- the ref spec templates to add.- Returns:
this
for method chaining.- See Also:
withoutRefSpecs()
-
withoutRefSpecs
@NonNull public final C withoutRefSpecs()
Clears the specified ref specs. If no ref specs are subsequently defined thenAbstractGitSCMSource.REF_SPEC_DEFAULT
will be used as the ref spec template.- Returns:
this
for method chaining.
-
withRemoteName
@NonNull public final C withRemoteName(String remoteName)
Configures the remote name to use for the git repository.- Parameters:
remoteName
- the remote name to use for the git repository (null
or the empty string are equivalent to passingAbstractGitSCMSource.DEFAULT_REMOTE_NAME
).- Returns:
this
for method chaining.
-
asRefSpecs
@NonNull public final List<org.eclipse.jgit.transport.RefSpec> asRefSpecs()
Converts the ref spec templates intoRefSpec
instances.- Returns:
- the list of
RefSpec
instances.
-
newRequest
@NonNull public R newRequest(@NonNull jenkins.scm.api.SCMSource source, TaskListener listener)
- Specified by:
newRequest
in classjenkins.scm.api.trait.SCMSourceContext<C extends GitSCMSourceContext<C,R>,R extends GitSCMSourceRequest>
-
-