Package hudson.slaves

Class Channels


  • public class Channels
    extends Object
    Various convenient subtype of Channels.
    Author:
    Kohsuke Kawaguchi
    • Constructor Detail

      • Channels

        public Channels()
    • Method Detail

      • newJVM

        public static hudson.remoting.Channel newJVM​(String displayName,
                                                     TaskListener listener,
                                                     FilePath workDir,
                                                     ClasspathBuilder classpath,
                                                     Map<String,​String> systemProperties)
                                              throws IOException
        Launches a new JVM with the given classpath and system properties, establish a communication channel, and return a Channel to it.
        Parameters:
        displayName - Human readable name of what this JVM represents. For example "Selenium grid" or "Hadoop". This token is used for messages to listener.
        listener - The progress of the launcher and the failure information will be sent here. Must not be null.
        workDir - If non-null, the new JVM will have this directory as the working directory. This must be a local path.
        classpath - The classpath of the new JVM. Can be null if you just need agent.jar (and everything else can be sent over the channel.) But if you have jars that are known to be necessary by the new JVM, setting it here will improve the classloading performance (by avoiding remote class file transfer.) Classes in this classpath will also take precedence over any other classes that's sent via the channel later, so it's also useful for making sure you get the version of the classes you want.
        systemProperties - If the new JVM should have a certain system properties set. Can be null.
        Returns:
        never null
        Throws:
        IOException
        Since:
        1.300
      • newJVM

        public static hudson.remoting.Channel newJVM​(String displayName,
                                                     TaskListener listener,
                                                     JVMBuilder vmb,
                                                     FilePath workDir,
                                                     ClasspathBuilder classpath)
                                              throws IOException
        Launches a new JVM with the given classpath, establish a communication channel, and return a Channel to it.
        Parameters:
        displayName - Human readable name of what this JVM represents. For example "Selenium grid" or "Hadoop". This token is used for messages to listener.
        listener - The progress of the launcher and the failure information will be sent here. Must not be null.
        workDir - If non-null, the new JVM will have this directory as the working directory. This must be a local path.
        classpath - The classpath of the new JVM. Can be null if you just need agent.jar (and everything else can be sent over the channel.) But if you have jars that are known to be necessary by the new JVM, setting it here will improve the classloading performance (by avoiding remote class file transfer.) Classes in this classpath will also take precedence over any other classes that's sent via the channel later, so it's also useful for making sure you get the version of the classes you want.
        vmb - A partially configured JVMBuilder that allows the caller to fine-tune the launch parameter.
        Returns:
        never null
        Throws:
        IOException
        Since:
        1.361