Package hudson
Class LauncherDecorator
- java.lang.Object
-
- hudson.LauncherDecorator
-
- All Implemented Interfaces:
ExtensionPoint
public abstract class LauncherDecorator extends Object implements ExtensionPoint
DecoratesLauncher
so that one can intercept executions of commands and alters the command being executed, such as doing this in fakeroot, sudo, pfexec, etc.- Since:
- 1.299
- Author:
- Kohsuke Kawaguchi
- See Also:
BuildWrapper.decorateLauncher(AbstractBuild, Launcher, BuildListener)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudson
-
-
Constructor Summary
Constructors Constructor Description LauncherDecorator()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description static ExtensionList<LauncherDecorator>
all()
Returns all the registeredLauncherDecorator
s.abstract Launcher
decorate(Launcher launcher, Node node)
Called fromNode.createLauncher(TaskListener)
to decorate the launchers.
-
-
-
Method Detail
-
decorate
@NonNull public abstract Launcher decorate(@NonNull Launcher launcher, @NonNull Node node)
Called fromNode.createLauncher(TaskListener)
to decorate the launchers.This method should perform node-specific decoration. For job-specific decoration,
BuildWrapper.decorateLauncher(AbstractBuild, Launcher, BuildListener)
might fit your needs better.If the implementation wants to do something differently if the launcher is for a build, call
Executor.currentExecutor()
. If it returns non-null you can figure out the current build in progress from there. Note thatLauncher
s are also created for doing things other than builds, soExecutor.currentExecutor()
may return null. Also, for job-specific decoration, seeBuildWrapper.decorateLauncher(AbstractBuild, Launcher, BuildListener)
as well.- Parameters:
launcher
- The base launcher that you can decorate.node
- Node for which this launcher is created.- Returns:
- Return the 'launcher' parameter to do no-op.
- See Also:
Launcher.decorateFor(Node)
,Launcher.decorateByPrefix(String[])
-
all
public static ExtensionList<LauncherDecorator> all()
Returns all the registeredLauncherDecorator
s.
-
-