Class ProcessBuilderNative
java.lang.Object
org.aksw.shellgebra.processbuilder.ProcessBuilderNative
- All Implemented Interfaces:
Cloneable, IProcessBuilder<ProcessBuilderNative>, IProcessBuilderCore<ProcessBuilderNative>
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanWhether the configured command will read from stdin.clone()command()redirectError(JRedirect redirect) booleanredirectErrorStream(boolean redirectErrorStream) redirectInput(JRedirect redirect) redirectOutput(JRedirect redirect) start(ProcessRunner executor) booleanWhether the process builder can read from anonymous pipes.booleanWhether the process builder can write to an anonymous pipe.booleanWhether a named pipe can be used with the process builder without risking blocking due to multiple connections being made to it.
-
Constructor Details
-
ProcessBuilderNative
public ProcessBuilderNative() -
ProcessBuilderNative
-
-
Method Details
-
clone
- Specified by:
clonein interfaceIProcessBuilderCore<ProcessBuilderNative>- Overrides:
clonein classObject
-
command
- Specified by:
commandin interfaceIProcessBuilder<ProcessBuilderNative>
-
command
- Specified by:
commandin interfaceIProcessBuilder<ProcessBuilderNative>
-
command
- Specified by:
commandin interfaceIProcessBuilder<ProcessBuilderNative>
-
directory
- Specified by:
directoryin interfaceIProcessBuilderCore<ProcessBuilderNative>
-
directory
- Specified by:
directoryin interfaceIProcessBuilderCore<ProcessBuilderNative>
-
environment
- Specified by:
environmentin interfaceIProcessBuilderCore<ProcessBuilderNative>
-
redirectErrorStream
public boolean redirectErrorStream()- Specified by:
redirectErrorStreamin interfaceIProcessBuilderCore<ProcessBuilderNative>
-
redirectErrorStream
- Specified by:
redirectErrorStreamin interfaceIProcessBuilderCore<ProcessBuilderNative>
-
start
- Specified by:
startin interfaceIProcessBuilderCore<ProcessBuilderNative>- Throws:
IOException
-
redirectInput
- Specified by:
redirectInputin interfaceIProcessBuilderCore<ProcessBuilderNative>
-
redirectInput
- Specified by:
redirectInputin interfaceIProcessBuilderCore<ProcessBuilderNative>
-
redirectOutput
- Specified by:
redirectOutputin interfaceIProcessBuilderCore<ProcessBuilderNative>
-
redirectOutput
- Specified by:
redirectOutputin interfaceIProcessBuilderCore<ProcessBuilderNative>
-
redirectError
- Specified by:
redirectErrorin interfaceIProcessBuilderCore<ProcessBuilderNative>
-
redirectError
- Specified by:
redirectErrorin interfaceIProcessBuilderCore<ProcessBuilderNative>
-
supportsAnonPipeRead
public boolean supportsAnonPipeRead()Description copied from interface:IProcessBuilderCoreWhether the process builder can read from anonymous pipes. Docker containers can only bind-mount named pipes but not anonymous pipes. When building pipelines, this flag is used to avoid needless intermediate anon pipes where named ones can be used directly. For pipelines, this is the value of the first process builder.- Specified by:
supportsAnonPipeReadin interfaceIProcessBuilderCore<ProcessBuilderNative>
-
supportsAnonPipeWrite
public boolean supportsAnonPipeWrite()Description copied from interface:IProcessBuilderCoreWhether the process builder can write to an anonymous pipe. Docker containers can only bind-mount named pipes but not anonymous pipes. When building pipelines, this flag is used to avoid needless intermediate anon pipes where named ones can be used directly. For pipelines, this is the value of the last process builder.- Specified by:
supportsAnonPipeWritein interfaceIProcessBuilderCore<ProcessBuilderNative>
-
supportsDirectNamedPipe
public boolean supportsDirectNamedPipe()Description copied from interface:IProcessBuilderCoreWhether a named pipe can be used with the process builder without risking blocking due to multiple connections being made to it. This method must only return true if only a single connection to that pipe will be openend. A process builder for host or docker may return true. But a group with two or more 'true-returning' members will return false.- Specified by:
supportsDirectNamedPipein interfaceIProcessBuilderCore<ProcessBuilderNative>
-
accessesStdIn
public boolean accessesStdIn()Description copied from interface:IProcessBuilderCoreWhether the configured command will read from stdin. Used to avoid generation of needless named or anon pipes such as in "echo foo | echo bar": where the second link does not read the data from the prior link.- Specified by:
accessesStdInin interfaceIProcessBuilderCore<ProcessBuilderNative>
-