ProcessPipeline

class ProcessPipeline(val processes: Seq[SubProcess], pipefail: Boolean, brokenPipeQueue: Option[LinkedBlockingQueue[Int]]) extends ProcessLike
class Object
trait Matchable
class Any

Value members

Concrete methods

override def close(): Unit

Alias for destroy, implemented for java.lang.AutoCloseable.

Alias for destroy, implemented for java.lang.AutoCloseable.

Definition Classes

String representation of the pipeline.

String representation of the pipeline.

override def destroy(): Unit

Attempt to destroy the ProcessPipeline (gently), via the underlying JVM APIs. All processes in the pipeline are destroyed.

Attempt to destroy the ProcessPipeline (gently), via the underlying JVM APIs. All processes in the pipeline are destroyed.

Definition Classes
override def destroyForcibly(): Unit

Force-destroys the ProcessPipeline, via the underlying JVM APIs. All processes in the pipeline are force-destroyed.

Force-destroys the ProcessPipeline, via the underlying JVM APIs. All processes in the pipeline are force-destroyed.

Definition Classes
override def exitCode(): Int

The exit code of this ProcessPipeline. Conventionally, 0 exit code represents a successful termination, and non-zero exit code indicates a failure. Throws an exception if the subprocess has not terminated.

The exit code of this ProcessPipeline. Conventionally, 0 exit code represents a successful termination, and non-zero exit code indicates a failure. Throws an exception if the subprocess has not terminated.

If pipefail is set, the exit code is the first non-zero exit code of the pipeline. If no process in the pipeline has a non-zero exit code, the exit code is 0.

Definition Classes
override def isAlive(): Boolean

Returns true if the ProcessPipeline is still running and has not terminated. Any process in the pipeline can be alive for the pipeline to be alive.

Returns true if the ProcessPipeline is still running and has not terminated. Any process in the pipeline can be alive for the pipeline to be alive.

Definition Classes
override def join(timeout: Long): Boolean

Wait up to millis for the ProcessPipeline to terminate all the processes in pipeline. By default waits indefinitely; if a time limit is given, explicitly destroys each process if it has not completed by the time the timeout has occurred.

Wait up to millis for the ProcessPipeline to terminate all the processes in pipeline. By default waits indefinitely; if a time limit is given, explicitly destroys each process if it has not completed by the time the timeout has occurred.

Definition Classes
override def waitFor(timeout: Long): Boolean

Wait up to millis for the ProcessPipeline to terminate, by default waits indefinitely. Returns true if the ProcessPipeline has terminated by the time this method returns.

Wait up to millis for the ProcessPipeline to terminate, by default waits indefinitely. Returns true if the ProcessPipeline has terminated by the time this method returns.

Waits for each process one by one, while aggregating the total time waited. If timeout has passed before all processes have terminated, returns false.

Definition Classes

Concrete fields