Package hudson
Class Launcher.RemoteLauncher
- java.lang.Object
-
- hudson.Launcher
-
- hudson.Launcher.RemoteLauncher
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Launcher.RemoteLauncher.ProcImpl
-
Nested classes/interfaces inherited from class hudson.Launcher
Launcher.DecoratedLauncher, Launcher.DummyLauncher, Launcher.IOTriplet, Launcher.LocalLauncher, Launcher.ProcStarter, Launcher.RemoteLauncher, Launcher.RemoteProcess
-
-
Field Summary
-
Fields inherited from class hudson.Launcher
channel, envVarsFilterRuleWrapper, listener, showFullPath
-
-
Constructor Summary
Constructors Constructor Description RemoteLauncher(TaskListener listener, hudson.remoting.VirtualChannel channel, boolean isUnix)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description hudson.remoting.VirtualChannel
getChannel()
Gets the channel that can be used to run a program remotely.boolean
isUnix()
Returns true if thisLauncher
is going to launch on Unix.void
kill(Map<String,String> modelEnvVars)
CallsProcessTree.killAll(Map)
to kill processes.Proc
launch(Launcher.ProcStarter ps)
Primarily invoked fromLauncher.ProcStarter.start()
to start a process with a specific launcher.hudson.remoting.Channel
launchChannel(String[] cmd, OutputStream err, FilePath _workDir, Map<String,String> envOverrides)
Launches a specified process and connects its input/output to aChannel
, then return it.String
toString()
-
Methods inherited from class hudson.Launcher
decorateByEnv, decorateByPrefix, decorateFor, getComputer, getListener, launch, launch, launch, launch, launch, launch, launch, launch, launch, launch, launch, launch, launch, maskedPrintCommandLine, maskedPrintCommandLine, prepareFilterRules, printCommandLine, setEnvVarsFilterRuleWrapper
-
-
-
-
Constructor Detail
-
RemoteLauncher
public RemoteLauncher(@NonNull TaskListener listener, @NonNull hudson.remoting.VirtualChannel channel, boolean isUnix)
-
-
Method Detail
-
getChannel
@NonNull public hudson.remoting.VirtualChannel getChannel()
Description copied from class:Launcher
Gets the channel that can be used to run a program remotely.- Overrides:
getChannel
in classLauncher
- Returns:
null
if the target node is not configured to support this. this is a transitional measure. Note that a launcher for the built-in node is always non-null.
-
launch
public Proc launch(Launcher.ProcStarter ps) throws IOException
Description copied from class:Launcher
Primarily invoked fromLauncher.ProcStarter.start()
to start a process with a specific launcher.- Specified by:
launch
in classLauncher
- Throws:
IOException
-
launchChannel
public hudson.remoting.Channel launchChannel(String[] cmd, OutputStream err, FilePath _workDir, Map<String,String> envOverrides) throws IOException, InterruptedException
Description copied from class:Launcher
Launches a specified process and connects its input/output to aChannel
, then return it.When the returned channel is terminated, the process will be killed.
- Specified by:
launchChannel
in classLauncher
- Parameters:
cmd
- The commands.err
- Where the stderr from the launched process will be sent._workDir
- The working directory of the new process, ornull
to inherit from the current processenvOverrides
- Environment variable overrides. In addition to what the current process is inherited (if this is going to be launched from an agent, that becomes the "current" process), these variables will be also set.- Throws:
IOException
InterruptedException
-
isUnix
public boolean isUnix()
Description copied from class:Launcher
Returns true if thisLauncher
is going to launch on Unix.
-
kill
public void kill(Map<String,String> modelEnvVars) throws IOException, InterruptedException
Description copied from class:Launcher
CallsProcessTree.killAll(Map)
to kill processes.- Specified by:
kill
in classLauncher
- Throws:
IOException
InterruptedException
-
-