Class ProcessBuilderJvm

All Implemented Interfaces:
Cloneable, IProcessBuilder<ProcessBuilderJvm>, IProcessBuilderCore<ProcessBuilderJvm>

public class ProcessBuilderJvm extends ProcessBuilderBase<ProcessBuilderJvm>
  • Constructor Details

    • ProcessBuilderJvm

      public ProcessBuilderJvm()
  • Method Details

    • of

      public static ProcessBuilderJvm of(String... argv)
    • of

      public static ProcessBuilderJvm of(List<String> argv)
    • supportsAnonPipeRead

      public boolean supportsAnonPipeRead()
      Description copied from interface: IProcessBuilderCore
      Whether 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.
    • supportsAnonPipeWrite

      public boolean supportsAnonPipeWrite()
      Description copied from interface: IProcessBuilderCore
      Whether 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.
    • supportsDirectNamedPipe

      public boolean supportsDirectNamedPipe()
      Description copied from interface: IProcessBuilderCore
      Whether 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.
    • accessesStdIn

      public boolean accessesStdIn()
      Description copied from interface: IProcessBuilderCore
      Whether 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.
    • resolveInputRedirect

      protected static ClosePolicyWrapper<FileInput> resolveInputRedirect(FileInput defaultSource, JRedirect redirect) throws FileNotFoundException
      Throws:
      FileNotFoundException
    • resolveOutputRedirect

      protected static ClosePolicyWrapper<FileOutput> resolveOutputRedirect(FileOutput defaultTarget, JRedirect redirect) throws FileNotFoundException
      Throws:
      FileNotFoundException
    • start

      public Process start(ProcessRunner executor) throws IOException
      Throws:
      IOException
    • cloneActual

      protected ProcessBuilderJvm cloneActual()
      Specified by:
      cloneActual in class ProcessBuilderCore<ProcessBuilderJvm>