Package com.atlassian.bamboo.plan
Class PlanExecutionLaunchControlImpl
java.lang.Object
com.atlassian.bamboo.plan.PlanExecutionLaunchControlImpl
- All Implemented Interfaces:
PlanExecutionLaunchControl
-
Nested Class Summary
Modifier and TypeClassDescriptionprotected static class
protected static class
protected static class
Nested classes/interfaces inherited from interface com.atlassian.bamboo.plan.PlanExecutionLaunchControl
PlanExecutionLaunchControl.ReleaseLocksActions
-
Field Summary
Fields inherited from interface com.atlassian.bamboo.plan.PlanExecutionLaunchControl
NO_OP_RELEASE_LOCKS_ACTION
-
Constructor Summary
ConstructorDescriptionPlanExecutionLaunchControlImpl
(GitConfigurationProvider gitConfigurationProvider, CustomVariableContext customVariableContext) -
Method Summary
Modifier and TypeMethodDescriptionvoid
clear()
Clears the whole internal state of the launch control object by removing the tracking of currently acquired locks.createReleaseLocksObject
(@NotNull Map<Long, String> idsToCacheKeysMapping) protected void
releaseLock
(@NotNull String cacheKey) void
schedule
(@NotNull TriggerableInternalKey triggerableInternalKey, @Nullable BuildDetectionAction buildDetectionAction, @NotNull Consumer<PlanExecutionLaunchControl.ReleaseLocksActions> runnableBody) Scheduling theTriggerableInternalKey
to execute.protected boolean
shouldBeRunImmediately
(@Nullable BuildDetectionAction buildDetectionAction)
-
Constructor Details
-
PlanExecutionLaunchControlImpl
@Inject public PlanExecutionLaunchControlImpl(GitConfigurationProvider gitConfigurationProvider, CustomVariableContext customVariableContext)
-
-
Method Details
-
schedule
public void schedule(@NotNull @NotNull TriggerableInternalKey triggerableInternalKey, @Nullable @Nullable BuildDetectionAction buildDetectionAction, @NotNull @NotNull Consumer<PlanExecutionLaunchControl.ReleaseLocksActions> runnableBody) Description copied from interface:PlanExecutionLaunchControl
Scheduling theTriggerableInternalKey
to execute. The launch control will execute the request once it is the most effective. All scheduled actions will be eventually executed.- Specified by:
schedule
in interfacePlanExecutionLaunchControl
- Parameters:
triggerableInternalKey
- key of the triggerable that asked for executionbuildDetectionAction
- action in which context the execution will be maderunnableBody
- the side effect that will be executed once the launch control decides it is the best time to do so
-
clear
public void clear()Description copied from interface:PlanExecutionLaunchControl
Clears the whole internal state of the launch control object by removing the tracking of currently acquired locks.- Specified by:
clear
in interfacePlanExecutionLaunchControl
-
releaseLock
-
shouldBeRunImmediately
protected boolean shouldBeRunImmediately(@Nullable @Nullable BuildDetectionAction buildDetectionAction) -
createReleaseLocksObject
protected PlanExecutionLaunchControl.ReleaseLocksActions createReleaseLocksObject(@NotNull @NotNull Map<Long, String> idsToCacheKeysMapping)
-