Uses of Interface
com.atlassian.bamboo.trigger.TriggerableInternalKey
-
Uses of TriggerableInternalKey in com.atlassian.bamboo.plan
Modifier and TypeClassDescriptionclass
Helper class that carries around Chain/Environment id and lets easily get its instance from correct service.Modifier and TypeFieldDescriptionprotected final com.google.common.collect.Multimap<TriggerableInternalKey,
PlanExecutionLaunchControlImpl.ExecutionRequestEntry> PlanExecutionLaunchControlImpl.PerTriggerableMemory.map
protected final Map<String,
Queue<TriggerableInternalKey>> PlanExecutionLaunchControlImpl.PerRepositoryQueues.perRepositoryIdQueues
Modifier and TypeMethodDescriptionstatic TriggerableInternalKey
TriggerableInternalKeyImpl.forEnvironmentId
(long environmentId) static TriggerableInternalKey
TriggerableInternalKeyImpl.forPlanKey
(@NotNull PlanKey planKey) static TriggerableInternalKey
TriggerableInternalKeyImpl.forStageId
(@NotNull PlanKey planKey, long stageId) Modifier and TypeMethodDescriptionModifier and TypeMethodDescriptionvoid
PlanExecutionLaunchControlImpl.PerRepositoryQueues.add
(@NotNull String cacheKey, @NotNull TriggerableInternalKey valueToAdd) void
PlanExecutionLaunchControlImpl.PerTriggerableMemory.add
(@NotNull TriggerableInternalKey key, @NotNull PlanExecutionLaunchControlImpl.ExecutionRequestEntry value) <V> V
PlanExecutionLockService.inlineProcessLocks
(@NotNull TriggerableInternalKey lockKey, @NotNull AcquisitionPolicy acquisitionPolicy, @NotNull Callable<V> callable) A parallel locking mechanism that allows a backdoor to the standard lock.<V> V
PlanExecutionLockServiceImpl.inlineProcessLocks
(@NotNull TriggerableInternalKey internalKey, @NotNull AcquisitionPolicy acquisitionPolicy, @NotNull Callable<V> callable) void
PlanExecutionLockService.interruptLockOwner
(@NotNull TriggerableInternalKey lockKey) Interrupts the owner of the lock represented byTriggerableInternalKey
void
PlanExecutionLockServiceImpl.interruptLockOwner
(@NotNull TriggerableInternalKey internalKey) boolean
PlanExecutionLockService.isLocked
(@NotNull TriggerableInternalKey lockKey) Checks if the givenString
has been lockedboolean
PlanExecutionLockServiceImpl.isLocked
(@NotNull TriggerableInternalKey internalKey) <V> V
PlanExecutionLockService.lock
(@NotNull TriggerableInternalKey lockKey, @NotNull AcquisitionPolicy acquisitionPolicy, @NotNull Callable<V> callable) Acquires a lock on the givenTriggerableInternalKey
then calls the givenCallable
within the global request lock<V> V
PlanExecutionLockServiceImpl.lock
(@NotNull TriggerableInternalKey internalKey, @NotNull AcquisitionPolicy acquisitionPolicy, @NotNull Callable<V> callable) Quick note about the implementation Since the acquisition policyAcquisitionPolicy.WAIT
can block for an indefinite amount of time we acquire this lock before trying to take the global execution lock otherwise callers toPlanExecutionLockServiceImpl.runWhenNoExecutionRequestsAreBeingMade(Callable)
in the worst case will wait indefinitely.PlanExecutionLaunchControlImpl.PerTriggerableMemory.notifyAboutReleasedLock
(@NotNull TriggerableInternalKey triggerableInternalKey) Notify the longest waiting triggerable with requested triggerableInternalKey that one of the locks it needs is free.void
PlanExecutionLaunchControl.schedule
(@NotNull TriggerableInternalKey triggerableInternalKey, @Nullable BuildDetectionAction buildDetectionAction, @NotNull Consumer<PlanExecutionLaunchControl.ReleaseLocksActions> runnableBody) Scheduling theTriggerableInternalKey
to execute.void
PlanExecutionLaunchControlImpl.schedule
(@NotNull TriggerableInternalKey triggerableInternalKey, @Nullable BuildDetectionAction buildDetectionAction, @NotNull Consumer<PlanExecutionLaunchControl.ReleaseLocksActions> runnableBody) -
Uses of TriggerableInternalKey in com.atlassian.bamboo.trigger.dependency
Modifier and TypeMethodDescription@NotNull Set<TriggerableInternalKey>
EnvironmentDependencyService.getEnvironmentsToTrigger
(@NotNull TriggerableInternalKey planKey) @NotNull Set<TriggerableInternalKey>
EnvironmentDependencyServiceImpl.getEnvironmentsToTrigger
(@NotNull TriggerableInternalKey parent) Modifier and TypeMethodDescription@NotNull Set<TriggerableInternalKey>
EnvironmentDependencyService.getEnvironmentsToTrigger
(@NotNull TriggerableInternalKey planKey) @NotNull Set<TriggerableInternalKey>
EnvironmentDependencyServiceImpl.getEnvironmentsToTrigger
(@NotNull TriggerableInternalKey parent) Modifier and TypeMethodDescriptionvoid
EnvironmentDependencyService.addDependencies
(@NotNull Triggerable dependent, long triggerId, @NotNull Set<TriggerableInternalKey> triggeringPlans) Adds dependencies from triggeringPlans to aTriggerable
void
EnvironmentDependencyServiceImpl.addDependencies
(@NotNull Triggerable dependent, long triggerId, @NotNull Set<TriggerableInternalKey> parents) void
EnvironmentDependencyService.replaceDependencies
(@NotNull Triggerable dependent, long triggerId, @NotNull Set<TriggerableInternalKey> triggeringPlans) Removes all existing dependencies and adds new.void
EnvironmentDependencyServiceImpl.replaceDependencies
(@NotNull Triggerable dependent, long triggerId, @NotNull Set<TriggerableInternalKey> parents)