case class ProcessGroupImplOE[O, E](firstProcess: UnboundIProcess[Prox.ProxStream[Byte], E], innerProcesses: List[UnboundIProcess[Prox.ProxStream[Byte], E]], lastProcess: UnboundIProcess[O, E], originalProcesses: List[Prox.Process[Unit, Unit]]) extends Prox.ProcessGroup[O, E] with Prox.RedirectableInput[ProcessGroupImplIOE[O, E]] with Product with Serializable
Process group with bound output and error streams
- Alphabetic
- By Inheritance
- ProcessGroupImplOE
- Serializable
- Product
- Equals
- RedirectableInput
- ProcessGroup
- ProcessGroupConfiguration
- ProcessLikeConfiguration
- ProcessLike
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new ProcessGroupImplOE(firstProcess: UnboundIProcess[Prox.ProxStream[Byte], E], innerProcesses: List[UnboundIProcess[Prox.ProxStream[Byte], E]], lastProcess: UnboundIProcess[O, E], originalProcesses: List[Prox.Process[Unit, Unit]])
Type Members
- type Self = ProcessGroupImplOE[O, E]
- Definition Classes
- ProcessGroupImplOE → ProcessGroupConfiguration → ProcessLikeConfiguration
- class ConfigApplication[P <: Prox.ProcessLikeConfiguration] extends AnyRef
- Definition Classes
- ProcessGroupConfiguration
Value Members
- def !<(stream: Prox.ProxStream[Byte]): ProcessGroupImplIOE[O, E]
Feed the process input from a byte stream with flushing per chunks enabled.
Feed the process input from a byte stream with flushing per chunks enabled.
An alias for fromStream.
- stream
Input stream
- returns
A new process or process group with the input redirected and the input redirection capability removed.
- Definition Classes
- RedirectableInput
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def <(stream: Prox.ProxStream[Byte]): ProcessGroupImplIOE[O, E]
Feed the process input from a byte stream.
Feed the process input from a byte stream.
An alias for fromStream.
- stream
Input stream
- returns
A new process or process group with the input redirected and the input redirection capability removed.
- Definition Classes
- RedirectableInput
- def <(path: Path): ProcessGroupImplIOE[O, E]
Feed the process input from a file natively.
Feed the process input from a file natively.
An alias for fromFile.
- path
Path to the file
- returns
A new process or process group with the input redirected and the input redirection capability removed.
- Definition Classes
- RedirectableInput
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def applyConfiguration(workingDirectory: Option[Path], environmentVariables: Map[String, String], removedEnvironmentVariables: Set[String]): Self
- Attributes
- protected
- Definition Classes
- ProcessGroupConfiguration → ProcessLikeConfiguration
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- def connectInput(source: Prox.InputRedirection): ProcessGroupImplIOE[O, E]
The low level method to attach an input to a process or process group.
The low level method to attach an input to a process or process group.
Use the other methods in this trait for convenience.
- source
Redirection source
- returns
A new process or process group with the input redirected and the input redirection capability removed.
- Definition Classes
- ProcessGroupImplOE → RedirectableInput
- val environmentVariables: Map[String, String]
- Definition Classes
- ProcessGroupConfiguration → ProcessLikeConfiguration
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- val firstProcess: UnboundIProcess[Prox.ProxStream[Byte], E]
- Definition Classes
- ProcessGroupImplOE → ProcessGroup
- def fromFile(path: Path): ProcessGroupImplIOE[O, E]
Feed the process input from a file natively.
Feed the process input from a file natively.
An alias for <.
- path
Path to the file
- returns
A new process or process group with the input redirected and the input redirection capability removed.
- Definition Classes
- RedirectableInput
- def fromStream(stream: Prox.ProxStream[Byte], flushChunks: Boolean): ProcessGroupImplIOE[O, E]
Feed the process input from a byte stream.
- stream
Input stream
- flushChunks
Flush the process input stream after each chunk
- returns
A new process or process group with the input redirected and the input redirection capability removed.
- Definition Classes
- RedirectableInput
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def in(workingDirectory: Path): Self
Changes the working directory of the process
Changes the working directory of the process
- workingDirectory
the working directory
- returns
a new process with the working directory set
- Definition Classes
- ProcessLikeConfiguration
- def inInheritedWorkingDirectory(): Self
Use the inherited working directory of the process instead of an explicit one
Use the inherited working directory of the process instead of an explicit one
- returns
a new process with the working directory cleared
- Definition Classes
- ProcessLikeConfiguration
- val innerProcesses: List[UnboundIProcess[Prox.ProxStream[Byte], E]]
- Definition Classes
- ProcessGroupImplOE → ProcessGroup
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val lastProcess: UnboundIProcess[O, E]
- Definition Classes
- ProcessGroupImplOE → ProcessGroup
- def map(f: Mapper[O, E]): ProcessGroupImplOE[O, E]
Applies the given mapper to each process in the group
Applies the given mapper to each process in the group
- f
process mapper
- returns
a new process group with all the processes altered by the mapper
- Definition Classes
- ProcessGroupImplOE → ProcessGroup
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- val originalProcesses: List[Prox.Process[Unit, Unit]]
- Definition Classes
- ProcessGroupImplOE → ProcessGroup
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- val removedEnvironmentVariables: Set[String]
- Definition Classes
- ProcessGroupConfiguration → ProcessLikeConfiguration
- def run[Info]()(implicit runner: Prox.ProcessRunner[Info]): Prox.ProxIO[Prox.ProcessGroupResult[O, E]]
Starts the process group asynchronously and blocks the execution until it is finished
Starts the process group asynchronously and blocks the execution until it is finished
- runner
The process runner to be used
- returns
the result of the finished processes
- Definition Classes
- ProcessGroup
- def start[Info]()(implicit runner: Prox.ProcessRunner[Info]): Prox.ProxResource[Prox.ProxFiber[Prox.ProcessGroupResult[O, E]]]
Starts the process group asynchronously and returns a closeable fiber representing it
Starts the process group asynchronously and returns a closeable fiber representing it
Joining the fiber waits for the processes to be terminated. Canceling the fiber terminates the processesnormally (with SIGTERM).
- runner
The process runner to be used
- returns
a managed fiber representing the running processes
- Definition Classes
- ProcessGroup
- def startProcessGroup[Info]()(implicit runner: Prox.ProcessRunner[Info]): Prox.ProxIO[Prox.RunningProcessGroup[O, E, Info]]
Starts the process group asynchronously and returns the RunningProcessGroup interface for it
Starts the process group asynchronously and returns the RunningProcessGroup interface for it
This is the most advanced way to start process groups. See start and run as alternatives.
- Info
The runner-specific information about the started processes
- runner
The process runner to be used
- returns
interface for handling the running process group
- Definition Classes
- ProcessGroup
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- def with(nameValuePair: (String, String)): Self
Adds an environment variable to the process
Adds an environment variable to the process
- nameValuePair
A pair of name and value
- returns
a new process with the working directory set
- Definition Classes
- ProcessLikeConfiguration
- def without(name: String): Self
Removes an environment variable from the process
Removes an environment variable from the process
Usable to remove variables inherited from the parent process.
- name
Name of the environment variable
- returns
a new process with the working directory set
- Definition Classes
- ProcessLikeConfiguration
- val workingDirectory: Option[Path]
- Definition Classes
- ProcessGroupConfiguration → ProcessLikeConfiguration
- object ConfigApplication
- Definition Classes
- ProcessGroupConfiguration
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated