C
- the type of SCMSourceContext
R
- the type of SCMSourceRequest
produced by this context.public abstract class SCMSourceContext<C extends SCMSourceContext<C,R>,R extends SCMSourceRequest> extends Object
SCMSource
is processing requests. In general this is used as a builder
for SCMSourceRequest
instances through newRequest(SCMSource, TaskListener)
but there
are some cases (such as SCMHeadEvent
processing) where only the context is required and as such this
type will be instantiated to obtain the context but no SCMSourceRequest
will be created. Conventions:
final
or abstract
unless there is a documented reason for
allowing overridesC
and be called "withXxx"return Collections.unmodifiableList(theList);
rather than the concurrency safe
return Collections.unmodifiableList(new ArrayList<>(theList));
Constructor and Description |
---|
SCMSourceContext(SCMSourceCriteria criteria,
SCMHeadObserver observer)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
List<SCMHeadAuthority<?,?,?>> |
authorities()
Returns the (possibly empty) list of
SCMHeadAuthority instances that can define trust. |
List<SCMSourceCriteria> |
criteria()
Returns the (possibly empty) list of criteria that must be met by a candidate
SCMHead . |
List<SCMHeadFilter> |
filters()
Returns the (possibly empty) list of
SCMSourceRequest dependent filters. |
abstract R |
newRequest(SCMSource source,
TaskListener listener)
Creates a new
SCMSourceRequest . |
SCMHeadObserver |
observer()
Returns the
SCMHeadObserver . |
List<SCMHeadPrefilter> |
prefilters()
Returns the (possibly empty) list of
SCMSourceRequest independent pre-filters. |
C |
withAuthority(SCMHeadAuthority authority)
Adds an additional
SCMHeadAuthority . |
C |
withCriteria(SCMSourceCriteria criteria)
Adds an additional
SCMSourceCriteria . |
C |
withFilter(SCMHeadFilter filter)
Adds an additional
SCMHeadFilter . |
C |
withPrefilter(SCMHeadPrefilter prefilter)
Adds an additional
SCMHeadPrefilter . |
C |
withTrait(SCMSourceTrait trait)
Adds an additional
SCMSourceTrait . |
C |
withTraits(Collection<SCMSourceTrait> traits)
Adds additional
SCMSourceTrait s. |
C |
withTraits(SCMSourceTrait... traits)
Adds additional
SCMSourceTrait s. |
public SCMSourceContext(@CheckForNull SCMSourceCriteria criteria, @NonNull SCMHeadObserver observer)
criteria
- (optional) criteria.observer
- the SCMHeadObserver
.@NonNull public final List<SCMHeadAuthority<?,?,?>> authorities()
SCMHeadAuthority
instances that can define trust.SCMHeadAuthority
instances that can define trust.@NonNull public final List<SCMSourceCriteria> criteria()
SCMHead
.SCMHead
.@NonNull public final List<SCMHeadFilter> filters()
SCMSourceRequest
dependent filters.SCMSourceRequest
dependent filters.@NonNull public final List<SCMHeadPrefilter> prefilters()
SCMSourceRequest
independent pre-filters.SCMSourceRequest
independent pre-filters.@NonNull public final SCMHeadObserver observer()
SCMHeadObserver
.SCMHeadObserver
.@NonNull public final C withAuthority(@CheckForNull SCMHeadAuthority authority)
SCMHeadAuthority
.authority
- the SCMHeadAuthority
.this
for method chaining.@NonNull public final C withCriteria(@CheckForNull SCMSourceCriteria criteria)
SCMSourceCriteria
.criteria
- the SCMSourceCriteria
.this
for method chaining.@NonNull public final C withFilter(@CheckForNull SCMHeadFilter filter)
SCMHeadFilter
.filter
- the SCMHeadFilter
.this
for method chaining.@NonNull public final C withPrefilter(@CheckForNull SCMHeadPrefilter prefilter)
SCMHeadPrefilter
.prefilter
- the SCMHeadPrefilter
.this
for method chaining.@NonNull public final C withTrait(@NonNull SCMSourceTrait trait)
SCMSourceTrait
.trait
- the SCMSourceTrait
.this
for method chaining.@NonNull public final C withTraits(@NonNull SCMSourceTrait... traits)
SCMSourceTrait
s.traits
- the SCMSourceTrait
s.this
for method chaining.@NonNull public final C withTraits(@NonNull Collection<SCMSourceTrait> traits)
SCMSourceTrait
s.traits
- the SCMSourceTrait
s.this
for method chaining.@NonNull public abstract R newRequest(@NonNull SCMSource source, @CheckForNull TaskListener listener)
SCMSourceRequest
.source
- the SCMSource
.listener
- the (optional) TaskListener
.R
Copyright © 2016–2022. All rights reserved.