public class ImmutablePlanCacheServiceImpl extends Object implements ImmutablePlanCacheService
ImmutablePlanCacheService.CacheInvalidator| Constructor and Description |
|---|
ImmutablePlanCacheServiceImpl(ImmutablePlanManager immutablePlanManager,
PlanDao planDao,
com.atlassian.config.db.HibernateConfig hibernateConfig,
CustomVariableContext customVariableContext,
BuildResultsSummaryDao buildResultsSummaryDao,
VcsRepositoryManager vcsRepositoryManager) |
| 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.
|
Optional<ImmutableChain> |
getAnyPlan(Predicate<? super ImmutableChain> predicate)
Returns a plan matching the supplied predicate
|
Range<Integer> |
getBuildNumbersRange(PlanKey planKey)
internal use only.
|
BambooCacheStats |
getCacheStats()
Retrieve cache statistics
|
Iterable<PlanKey> |
getChainsToInvalidate(ImmutablePlanCacheService.CacheInvalidator invalidator)
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 |
invalidateBuildNumbersRange(PlanKey planKey,
int buildNumber,
boolean trueForSaveFalseForDelete)
internal use only.
|
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.
|
void |
resetLatestResultSummary(PlanResultKey planResultKey)
Resets the latest build summary of a plan.
|
<T> T |
withHiddenPlans(Collection<PlanKey> planKeys,
Supplier<T> supplier)
Invokes supplier while marking the specified plan keys as unavailable.
|
public ImmutablePlanCacheServiceImpl(@NotNull
ImmutablePlanManager immutablePlanManager,
@NotNull
PlanDao planDao,
@NotNull
com.atlassian.config.db.HibernateConfig hibernateConfig,
@NotNull
CustomVariableContext customVariableContext,
@NotNull
BuildResultsSummaryDao buildResultsSummaryDao,
@NotNull
VcsRepositoryManager vcsRepositoryManager)
@Nullable public ImmutableChain getImmutablePlanByKey(@NotNull PlanKey planKey)
ImmutablePlanCacheServicegetImmutablePlanByKey in interface ImmutablePlanCacheServiceImmutablePlanCacheService.withHiddenPlans(Collection, Supplier)@Nullable public ImmutableChain getImmutableChainByKeyIfInCache(@NotNull PlanKey planKey)
getImmutableChainByKeyIfInCache in interface ImmutablePlanCacheServicepublic void invalidate(@NotNull
PlanKey planKey)
ImmutablePlanCacheServiceinvalidate in interface ImmutablePlanCacheServiceplanKey - key of the Plan to be removed from cachepublic void cascadeInvalidate(@NotNull
PlanKey planKey)
ImmutablePlanCacheServicecascadeInvalidate in interface ImmutablePlanCacheServiceplanKey - key of the Plan to be removed from cache@NotNull public Iterable<PlanKey> getChainsToInvalidate(@NotNull ImmutablePlanCacheService.CacheInvalidator invalidator)
ImmutablePlanCacheServiceImmutablePlanCacheService.CacheInvalidatorgetChainsToInvalidate in interface ImmutablePlanCacheServicepublic void remove(@NotNull
PlanKey planKey)
ImmutablePlanCacheServiceremove in interface ImmutablePlanCacheServiceplanKey - key of the Plan to be removed from cachepublic void initialiseCache()
ImmutablePlanCacheServiceinitialiseCache in interface ImmutablePlanCacheServicepublic void disableCache()
ImmutablePlanCacheServicedisableCache in interface ImmutablePlanCacheServicepublic void enableCache()
ImmutablePlanCacheServiceImmutablePlanCacheService.initialiseCache() instead if you expect plans to be loaded.enableCache in interface ImmutablePlanCacheServicepublic BambooCacheStats getCacheStats()
ImmutablePlanCacheServicegetCacheStats in interface ImmutablePlanCacheService@NotNull public PlanCacheIndices getIndices()
ImmutablePlanCacheServicegetIndices in interface ImmutablePlanCacheService@NotNull public <T extends ImmutablePlan> Stream<T> getPlans(Class<T> planType, @NotNull com.google.common.base.Predicate<? super T> filter)
ImmutablePlanCacheServicegetPlans in interface ImmutablePlanCacheServiceplanType - - the type of the plan to retrieveDescriptionProvider.getName()public <T> T withHiddenPlans(Collection<PlanKey> planKeys, Supplier<T> supplier)
ImmutablePlanCacheServicewithHiddenPlans in interface ImmutablePlanCacheService@NotNull public Range<Integer> getBuildNumbersRange(PlanKey planKey)
ImmutablePlanCacheServicegetBuildNumbersRange in interface ImmutablePlanCacheServicepublic void invalidateBuildNumbersRange(PlanKey planKey, int buildNumber, boolean trueForSaveFalseForDelete)
ImmutablePlanCacheServiceinvalidateBuildNumbersRange in interface ImmutablePlanCacheServicepublic Stream<ImmutablePlan> getPlans(Predicate<ImmutablePlan> predicate)
ImmutablePlanCacheServicegetPlans in interface ImmutablePlanCacheServicepublic Optional<ImmutableChain> getAnyPlan(Predicate<? super ImmutableChain> predicate)
ImmutablePlanCacheServicegetAnyPlan in interface ImmutablePlanCacheServicepublic void resetLatestResultSummary(PlanResultKey planResultKey)
ImmutablePlanCacheServiceresetLatestResultSummary in interface ImmutablePlanCacheServicepublic void indexPlan(@NotNull
ImmutableChain plan)
ImmutablePlanCacheServiceindexPlan in interface ImmutablePlanCacheServicepublic void hideDeletedPlan(PlanKey planKey)
ImmutablePlanCacheServicehideDeletedPlan in interface ImmutablePlanCacheServicepublic void enterDeletionCodeSection()
ImmutablePlanCacheServiceenterDeletionCodeSection in interface ImmutablePlanCacheServicepublic void leaveDeletionCodeSection()
ImmutablePlanCacheServiceleaveDeletionCodeSection in interface ImmutablePlanCacheServiceCopyright © 2017 Atlassian Software Systems Pty Ltd. All rights reserved.