Packages

case class ProcessGroupImplIO[O](firstProcess: UnboundEProcess[Prox.ProxStream[Byte]], innerProcesses: List[UnboundIEProcess[Prox.ProxStream[Byte]]], lastProcess: UnboundIEProcess[O], originalProcesses: List[Prox.Process[Unit, Unit]]) extends Prox.ProcessGroup[O, Unit] with Prox.RedirectableErrors[[β$0$]ProcessGroupImplIOE[O, β$0$]] with Product with Serializable

Process group with bound input and output streams

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ProcessGroupImplIO
  2. Serializable
  3. Product
  4. Equals
  5. RedirectableErrors
  6. ProcessGroup
  7. ProcessGroupConfiguration
  8. ProcessLikeConfiguration
  9. ProcessLike
  10. AnyRef
  11. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new ProcessGroupImplIO(firstProcess: UnboundEProcess[Prox.ProxStream[Byte]], innerProcesses: List[UnboundIEProcess[Prox.ProxStream[Byte]]], lastProcess: UnboundIEProcess[O], originalProcesses: List[Prox.Process[Unit, Unit]])

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. def !>(sink: Prox.ProxSink[Byte]): ProcessGroupImplIOE[O, Unit]

    Redirects the error outputs to a sink.

    Redirects the error outputs to a sink.

    The process error output type will be Unit. An alias for errorsToSink

    sink

    Target sink

    returns

    Returns a new process group with all the error streams redirected and the error redirection capability removed.

    Definition Classes
    RedirectableErrors
  3. def !>#[O](pipe: Prox.ProxPipe[Byte, O])(implicit arg0: Prox.ProxMonoid[O]): ProcessGroupImplIOE[O, O]

    Redirects the error outputs to a pipe and folds its output with a monoid instance.

    Redirects the error outputs to a pipe and folds its output with a monoid instance.

    The process error output type will be the same as the pipe's output type. An alias for errorsToFoldMonoid

    O

    Output type of the pipe. Must have a monoid instance.

    pipe

    Target pipe

    returns

    Returns a new process group with all the error streams redirected and the error redirection capability removed.

    Definition Classes
    RedirectableErrors
  4. def !>?[O](pipe: Prox.ProxPipe[Byte, O]): ProcessGroupImplIOE[O, Vector[O]]

    Redirects the error outputs to a pipe and collects its output to a vector

    Redirects the error outputs to a pipe and collects its output to a vector

    The process error output type will be a vector of the pipe's output type. An alias for errorsToVector

    O

    Output type of the pipe

    pipe

    Target pipe

    returns

    Returns a new process group with all the error streams redirected and the error redirection capability removed.

    Definition Classes
    RedirectableErrors
  5. final def ##: Int
    Definition Classes
    AnyRef → Any
  6. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  7. def applyConfiguration(workingDirectory: Option[Path], environmentVariables: Map[String, String], removedEnvironmentVariables: Set[String]): Self
    Attributes
    protected
    Definition Classes
    ProcessGroupConfigurationProcessLikeConfiguration
  8. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  10. def connectErrors[R <: Prox.GroupErrorRedirection, OR <: Prox.OutputRedirection, E](target: R)(implicit groupErrorRedirectionType: Aux[R, OR, E], outputRedirectionType: Aux[OR, E]): ProcessGroupImplIOE[O, E]

    The low level operation to attach an error output to all the processes in the group.

    The low level operation to attach an error output to all the processes in the group.

    Use one of the other methods of this trait or the advanced interface represented by customizedPerProcess for convenience.

    This is the place where the process group's error output type gets calculated using the GroupErrorRedirectionType and OutputRedirectionType type classes.

    R

    Error output grouped redirection type

    OR

    Error output redirection type

    E

    Error output type

    target

    Redirection target

    groupErrorRedirectionType

    Helper for dependent error output type

    outputRedirectionType

    Helper for dependent error output type

    returns

    Returns a new process group with all the error streams redirected and the error redirection capability removed.

    Definition Classes
    ProcessGroupImplIORedirectableErrors
  11. lazy val customizedPerProcess: CustomizedPerProcess[[β$0$]ProcessGroupImplIOE[O, β$0$]]

    A more advanced interface for customizing the redirection per process

    A more advanced interface for customizing the redirection per process

    Definition Classes
    RedirectableErrors
  12. def drainErrors[O](pipe: Prox.ProxPipe[Byte, O]): ProcessGroupImplIOE[O, Unit]

    Redirects the error outputs to a pipe and drains it regardless of its output type.

    Redirects the error outputs to a pipe and drains it regardless of its output type.

    The process error output type will be Unit.

    O

    Output type of the pipe

    pipe

    Target pipe

    returns

    Returns a new process group with all the error streams redirected and the error redirection capability removed.

    Definition Classes
    RedirectableErrors
  13. val environmentVariables: Map[String, String]
  14. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. def errorsToFoldMonoid[O](pipe: Prox.ProxPipe[Byte, O])(implicit arg0: Prox.ProxMonoid[O]): ProcessGroupImplIOE[O, O]

    Redirects the error outputs to a pipe and folds its output with a monoid instance.

    Redirects the error outputs to a pipe and folds its output with a monoid instance.

    The process error output type will be the same as the pipe's output type. An alias for !>#

    O

    Output type of the pipe. Must have a monoid instance.

    pipe

    Target pipe

    returns

    Returns a new process group with all the error streams redirected and the error redirection capability removed.

    Definition Classes
    RedirectableErrors
  16. def errorsToSink(sink: Prox.ProxSink[Byte]): ProcessGroupImplIOE[O, Unit]

    Redirects the error outputs to a sink.

    Redirects the error outputs to a sink.

    The process error output type will be Unit. An alias for !>

    sink

    Target sink

    returns

    Returns a new process group with all the error streams redirected and the error redirection capability removed.

    Definition Classes
    RedirectableErrors
  17. def errorsToVector[O](pipe: Prox.ProxPipe[Byte, O]): ProcessGroupImplIOE[O, Vector[O]]

    Redirects the error outputs to a pipe and collects its output to a vector

    Redirects the error outputs to a pipe and collects its output to a vector

    The process error output type will be a vector of the pipe's output type. An alias for !>?

    O

    Output type of the pipe

    pipe

    Target pipe

    returns

    Returns a new process group with all the error streams redirected and the error redirection capability removed.

    Definition Classes
    RedirectableErrors
  18. val firstProcess: UnboundEProcess[Prox.ProxStream[Byte]]
    Definition Classes
    ProcessGroupImplIOProcessGroup
  19. def foldErrors[O, R](pipe: Prox.ProxPipe[Byte, O], init: R, fn: (R, O) => R): ProcessGroupImplIOE[O, R]

    Redirects the error outputs to a pipe and folds it with a custom function.

    Redirects the error outputs to a pipe and folds it with a custom function.

    The process error output type will be R.

    O

    Output type of the pipe

    R

    Result type of the fold

    pipe

    Target pipe

    init

    The initial value for the fold

    fn

    The fold function

    returns

    Returns a new process group with all the error streams redirected and the error redirection capability removed.

    Definition Classes
    RedirectableErrors
  20. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  21. 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
  22. 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
  23. val innerProcesses: List[UnboundIEProcess[Prox.ProxStream[Byte]]]
    Definition Classes
    ProcessGroupImplIOProcessGroup
  24. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  25. val lastProcess: UnboundIEProcess[O]
    Definition Classes
    ProcessGroupImplIOProcessGroup
  26. def map(f: Mapper[O, Unit]): ProcessGroupImplIO[O]

    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
    ProcessGroupImplIOProcessGroup
  27. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  28. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  29. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  30. val originalProcesses: List[Prox.Process[Unit, Unit]]
    Definition Classes
    ProcessGroupImplIOProcessGroup
  31. def productElementNames: Iterator[String]
    Definition Classes
    Product
  32. val removedEnvironmentVariables: Set[String]
  33. def run[Info]()(implicit runner: Prox.ProcessRunner[Info]): Prox.ProxIO[Prox.ProcessGroupResult[O, Unit]]

    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
  34. def start[Info]()(implicit runner: Prox.ProcessRunner[Info]): Prox.ProxResource[Prox.ProxFiber[Prox.ProcessGroupResult[O, Unit]]]

    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
  35. def startProcessGroup[Info]()(implicit runner: Prox.ProcessRunner[Info]): Prox.ProxIO[Prox.RunningProcessGroup[O, Unit, 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
  36. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  37. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  38. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  39. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  40. 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
  41. 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
  42. val workingDirectory: Option[Path]
  43. object ConfigApplication
    Definition Classes
    ProcessGroupConfiguration

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from Prox.RedirectableErrors[[β$0$]ProcessGroupImplIOE[O, β$0$]]

Inherited from Prox.ProcessGroup[O, Unit]

Inherited from Prox.ProcessGroupConfiguration[O, Unit]

Inherited from ProcessLike

Inherited from AnyRef

Inherited from Any

Ungrouped