Class LocalSlaveStreamHandler

java.lang.Object
com.carrotsearch.ant.tasks.junit4.LocalSlaveStreamHandler
All Implemented Interfaces:
org.apache.tools.ant.taskdefs.ExecuteStreamHandler

public class LocalSlaveStreamHandler extends Object implements org.apache.tools.ant.taskdefs.ExecuteStreamHandler
Establish event passing with a subprocess and pump events to the bus.
  • Field Details

    • eventBus

      private final com.google.common.eventbus.EventBus eventBus
    • refLoader

      private final ClassLoader refLoader
    • stdout

      private InputStream stdout
    • stderr

      private InputStream stderr
    • stdin

      private OutputStream stdin
      raw input stream to the client.
    • stdinWriter

      private OutputStreamWriter stdinWriter
      character-wrapped input stream to the client.
    • warnStream

      private final PrintStream warnStream
    • eventStream

      private final InputStream eventStream
    • stopping

      private volatile boolean stopping
    • pumpers

      private List<Thread> pumpers
    • sysout

      private final OutputStream sysout
    • syserr

      private final OutputStream syserr
    • heartbeat

      private final long heartbeat
    • streamsBuffer

      private final RandomAccessFile streamsBuffer
    • streamsBufferWrapper

      private final OutputStream streamsBufferWrapper
    • lastActivity

      private volatile Long lastActivity
      A timestamp of last received event (GH-106).
    • watchdog

      private Thread watchdog
      Watchdog thread if heartbeat is to be measured.
    • clientCharset

      private Charset clientCharset
      Client charset extracted from BootstrapEvent.
  • Constructor Details

  • Method Details

    • setProcessErrorStream

      public void setProcessErrorStream(InputStream is) throws IOException
      Specified by:
      setProcessErrorStream in interface org.apache.tools.ant.taskdefs.ExecuteStreamHandler
      Throws:
      IOException
    • setProcessOutputStream

      public void setProcessOutputStream(InputStream is) throws IOException
      Specified by:
      setProcessOutputStream in interface org.apache.tools.ant.taskdefs.ExecuteStreamHandler
      Throws:
      IOException
    • setProcessInputStream

      public void setProcessInputStream(OutputStream os) throws IOException
      Specified by:
      setProcessInputStream in interface org.apache.tools.ant.taskdefs.ExecuteStreamHandler
      Throws:
      IOException
    • start

      public void start() throws IOException
      Specified by:
      start in interface org.apache.tools.ant.taskdefs.ExecuteStreamHandler
      Throws:
      IOException
    • pumpEvents

      void pumpEvents(InputStream eventStream)
      Pump events from event stream.
    • stop

      public void stop()
      Specified by:
      stop in interface org.apache.tools.ant.taskdefs.ExecuteStreamHandler