@Internal
public interface ImmutablePlanCacheService
ImmutableChain
. This Service does not
check for permissions currently. Only works for Chain
.
Cache is disabled by default and should be explicitly enabled by application (preferably by calling initialiseCache()
)
CachedPlanManager
instead.Modifier and Type | Interface and Description |
---|---|
static interface |
ImmutablePlanCacheService.CacheInvalidator |
Modifier and Type | Method and Description |
---|---|
void |
cascadeInvalidate(PlanKey planKey)
Removes the cached reference for the passed plan and its children.
|
void |
disableCache()
Disable cache.
|
void |
enableCache()
Enable cache.
|
void |
enterDeletionCodeSection()
Marks the current thread as being able to see deleted plans.
|
<T extends PlanIdentifier> |
filterOutDeletedIfNeeded(Set<T> jobs)
Returns a set with deleted jobs removed.
|
Optional<ImmutableChain> |
getAnyPlan(Predicate<? super ImmutableChain> predicate)
Returns a plan matching the supplied predicate
|
Range<Integer> |
getBuildNumbersRange(PlanKey planKey)
Deprecated.
since 5.10
|
BambooCacheStats |
getCacheStats()
Retrieve cache statistics
|
void |
getChainsToInvalidateAndReindex(ImmutablePlanCacheService.CacheInvalidator invalidator,
Set<PlanKey> chainsToInvalidate,
Set<PlanKey> chainsToReindex)
Internal.
|
ImmutableChain |
getImmutableChainByKeyIfInCache(PlanKey planKey) |
ImmutableChain |
getImmutablePlanByKey(PlanKey planKey)
Returns a plan if one exists with the key.
|
PlanCacheIndices |
getIndices()
Returns the indices created for plan cache content.
|
<T extends ImmutablePlan> |
getPlans(Class<T> planType,
com.google.common.base.Predicate<? super T> filter)
|
Stream<ImmutablePlan> |
getPlans(Predicate<ImmutablePlan> predicate)
Returns a stream of plans (chains+jobs) matching the supplied predicate.
|
void |
hideDeletedPlan(PlanKey planKey)
Hides the plan.
|
void |
indexPlan(ImmutableChain plan)
Updates plan indexes in cache
|
void |
initialiseCache()
Clear the cache and attempt to read all Chains from DB in order to cache them.
|
void |
invalidate(PlanKey planKey)
Removes the cached Plan.
|
void |
invalidateAllLatestResultSummaries()
Invalidates all latest result summaries currently cached.
|
void |
invalidateBuildNumbersRange(PlanKey planKey,
int buildNumber,
boolean trueForSaveFalseForDelete)
Deprecated.
since 5.10
|
void |
invalidateLatestResultSummary(PlanResultKey key)
Resets the latest build summary of a plan.
|
boolean |
isPlanBeingDeleted(PlanKey planKey) |
void |
leaveDeletionCodeSection()
Marks the current thread as no longer being able to see deleted plans.
|
void |
remove(PlanKey planKey)
Removes the cached Plan and its metadata.
|
<V> V |
withHiddenPlans(Collection<PlanKey> planKeys,
Supplier<V> supplier)
Invokes supplier while marking the specified plan keys as unavailable.
|
@Nullable ImmutableChain getImmutablePlanByKey(@NotNull PlanKey planKey)
withHiddenPlans(Collection, Supplier)
@NotNull <T extends ImmutablePlan> Stream<T> getPlans(Class<T> planType, @NotNull com.google.common.base.Predicate<? super T> filter)
planType
- - the type of the plan to retrieveDescriptionProvider.getName()
<V> V withHiddenPlans(Collection<PlanKey> planKeys, Supplier<V> supplier)
@Nullable ImmutableChain getImmutableChainByKeyIfInCache(@NotNull PlanKey planKey)
void invalidate(@NotNull PlanKey planKey)
planKey
- key of the Plan to be removed from cachevoid cascadeInvalidate(@NotNull PlanKey planKey)
planKey
- key of the Plan to be removed from cachevoid remove(@NotNull PlanKey planKey)
planKey
- key of the Plan to be removed from cachevoid initialiseCache()
void disableCache()
void enableCache()
initialiseCache()
instead if you expect plans to be loaded.BambooCacheStats getCacheStats()
@Internal void getChainsToInvalidateAndReindex(ImmutablePlanCacheService.CacheInvalidator invalidator, Set<PlanKey> chainsToInvalidate, Set<PlanKey> chainsToReindex)
@NotNull PlanCacheIndices getIndices()
@Deprecated @Internal @NotNull Range<Integer> getBuildNumbersRange(PlanKey planKey)
@Deprecated @Internal void invalidateBuildNumbersRange(PlanKey planKey, int buildNumber, boolean trueForSaveFalseForDelete)
Stream<ImmutablePlan> getPlans(Predicate<ImmutablePlan> predicate)
Optional<ImmutableChain> getAnyPlan(Predicate<? super ImmutableChain> predicate)
predicate
- void invalidateLatestResultSummary(PlanResultKey key)
void invalidateAllLatestResultSummaries()
@Internal void indexPlan(@NotNull ImmutableChain plan)
void hideDeletedPlan(PlanKey planKey)
boolean isPlanBeingDeleted(PlanKey planKey)
void enterDeletionCodeSection()
void leaveDeletionCodeSection()
@NotNull <T extends PlanIdentifier> Set<T> filterOutDeletedIfNeeded(@NotNull Set<T> jobs)
Copyright © 2019 Atlassian Software Systems Pty Ltd. All rights reserved.