Class ForkClient

  • All Implemented Interfaces:
    org.apache.maven.shared.utils.cli.StreamConsumer

    public class ForkClient
    extends java.lang.Object
    implements org.apache.maven.shared.utils.cli.StreamConsumer
    Knows how to reconstruct *all* the state transmitted over stdout by the forked process.
    Author:
    Kristian Rosenvold
    • Constructor Detail

      • ForkClient

        public ForkClient​(DefaultReporterFactory defaultReporterFactory,
                          NotifiableTestStream notifiableTestStream,
                          org.apache.maven.plugin.surefire.log.api.ConsoleLogger log,
                          java.util.concurrent.atomic.AtomicBoolean printedErrorStream,
                          int forkNumber)
    • Method Detail

      • stopOnNextTest

        protected void stopOnNextTest()
      • kill

        public void kill()
      • tryToTimeout

        public final void tryToTimeout​(long currentTimeMillis,
                                       int forkedProcessTimeoutInSeconds)
        Called in concurrent Thread. Will shutdown if timeout was reached.
        Parameters:
        currentTimeMillis - current time in millis seconds
        forkedProcessTimeoutInSeconds - timeout in seconds given by MOJO
      • consumeLine

        public final void consumeLine​(java.lang.String s)
        Specified by:
        consumeLine in interface org.apache.maven.shared.utils.cli.StreamConsumer
      • hadTimeout

        public final boolean hadTimeout()
      • consumeMultiLineContent

        public final void consumeMultiLineContent​(java.lang.String s)
                                           throws java.io.IOException
        Throws:
        java.io.IOException
      • getTestVmSystemProperties

        public final java.util.Map<java.lang.String,​java.lang.String> getTestVmSystemProperties()
      • getReporter

        public final org.apache.maven.surefire.report.RunListener getReporter()
        Used when getting reporters on the plugin side of a fork. Used by testing purposes only. May not be volatile variable.
        Returns:
        A mock provider reporter
      • close

        public void close​(boolean hadTimeout)
      • isSaidGoodBye

        public final boolean isSaidGoodBye()
      • getErrorInFork

        public final org.apache.maven.surefire.report.StackTraceWriter getErrorInFork()
      • isErrorInFork

        public final boolean isErrorInFork()
      • testsInProgress

        public java.util.Set<java.lang.String> testsInProgress()
      • hasTestsInProgress

        public boolean hasTestsInProgress()