Package hudson.util

Class ProcessTree.Remote

java.lang.Object
hudson.util.ProcessTree
hudson.util.ProcessTree.Remote
All Implemented Interfaces:
ProcessTreeRemoting.IProcessTree, Serializable, Iterable<ProcessTree.OSProcess>, org.jenkinsci.remoting.SerializableOnlyOverRemoting
Enclosing class:
ProcessTree

public static class ProcessTree.Remote extends ProcessTree
Represents a process tree over a channel.
See Also:
  • Constructor Details

    • Remote

      @Deprecated public Remote(ProcessTree proxy, hudson.remoting.Channel ch)
      Deprecated.
    • Remote

      public Remote(ProcessTree proxy, hudson.remoting.Channel ch, boolean vetoersExist)
  • Method Details

    • get

      @CheckForNull public ProcessTree.OSProcess get(@NonNull Process proc)
      Description copied from class: ProcessTree
      Try to convert Process into this process object or null if it fails (for example, maybe the snapshot is taken after this process has already finished.)
      Specified by:
      get in class ProcessTree
    • killAll

      public void killAll(@NonNull Map<String,String> modelEnvVars) throws InterruptedException
      Description copied from class: ProcessTree
      Kills all the processes that have matching environment variables.

      In this method, the method is given a "model environment variables", which is a list of environment variables and their values that are characteristic to the launched process. The implementation is expected to find processes in the system that inherit these environment variables, and kill them all. This is suitable for locating daemon processes that cannot be tracked by the regular ancestor/descendant relationship.

      Specified by:
      killAll in interface ProcessTreeRemoting.IProcessTree
      Specified by:
      killAll in class ProcessTree
      Throws:
      InterruptedException