Describes a system process to be executed
This base trait is always extended with redirection and configuration capabilities represented by the traits ProcessConfiguration, RedirectableInput, RedirectableOutput and RedirectableError.
To create a process use the constructor in the companion object Process.apply.
The process specification not only encodes the process to be started but also how its input, output and error streams are redirected and executed. For this reason the effect type is also bound by the process, not just at execution time.
Type parameters
- E
-
Error output type
- O
-
Output type
Attributes
- Companion
- object
- Graph
-
- Supertypes
-
trait ProcessConfigurationtrait ProcessLikeConfigurationtrait ProcessLikeclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
class ProcessImplclass ProcessImplE[E]class ProcessImplIclass ProcessImplIE[E]class ProcessImplIO[O]class ProcessImplO[O]Show all
Members list
Value members
Concrete methods
Starts the process asynchronously and blocks the execution until it is finished
Starts the process asynchronously and blocks the execution until it is finished
Value parameters
- runner
-
The process runner to be used
Attributes
- Returns
-
the result of the finished process
Starts the process asynchronously and returns a closeable fiber representing it
Starts the process asynchronously and returns a closeable fiber representing it
Joining the fiber waits for the process to be terminated. Canceling the fiber terminates the process normally (with SIGTERM).
Value parameters
- runner
-
The process runner to be used
Attributes
- Returns
-
a managed fiber representing the running process
Starts the process asynchronously and returns the RunningProcess interface for it
Starts the process asynchronously and returns the RunningProcess interface for it
This is the most advanced way to start processes. See start and run as alternatives.
Type parameters
- Info
-
The runner-specific process info type
Value parameters
- runner
-
The process runner to be used
Attributes
- Returns
-
interface for handling the running process
Inherited methods
Adds an environment variable to the process
Adds an environment variable to the process
Value parameters
- nameValuePair
-
A pair of name and value
Attributes
- Returns
-
a new process with the working directory set
- Inherited from:
- ProcessLikeConfiguration
Attributes
- Definition Classes
- Inherited from:
- ProcessConfiguration
Changes the working directory of the process
Changes the working directory of the process
Value parameters
- workingDirectory
-
the working directory
Attributes
- Returns
-
a new process with the working directory set
- Inherited from:
- ProcessLikeConfiguration
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
Attributes
- Returns
-
a new process with the working directory cleared
- Inherited from:
- ProcessLikeConfiguration
Attributes
- Inherited from:
- ProcessConfiguration
Replaces the arguments
Replaces the arguments
Value parameters
- newArguments
-
new list of arguments
Attributes
- Returns
-
returns a new process specification
- Inherited from:
- ProcessConfiguration
Replaces the command
Replaces the command
Value parameters
- newCommand
-
new value for the command to be executed
Attributes
- Returns
-
returns a new process specification
- Inherited from:
- ProcessConfiguration
Removes an environment variable from the process
Removes an environment variable from the process
Usable to remove variables inherited from the parent process.
Value parameters
- name
-
Name of the environment variable
Attributes
- Returns
-
a new process with the working directory set
- Inherited from:
- ProcessLikeConfiguration