Class ProcessStarter
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class
Deprecated.private static class
Deprecated.static class
Deprecated.static interface
Deprecated.static interface
Deprecated.private static class
Deprecated.private static class
Deprecated. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate String
Deprecated.private boolean
Deprecated.private boolean
Deprecated.private final ProcessBuilder
Deprecated.private final String
Deprecated.private Writer
Deprecated.private Writer
Deprecated.private boolean
Deprecated.private static final String
Deprecated.static final ProcessStarter.OutputHandler
Deprecated. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionDeprecated.If called, this ProcessStarter will not throw an exception if the underlying process exits with a non-zero return codeexec()
Deprecated.Executes the given command as if it had been executed from the command line of the host OS (cmd.exe on windows, /bin/sh on *nix) and returns all content sent to standard out as a string.void
Deprecated.Executes the given command as if it had been executed from the command line of the host OS (cmd.exe on windows, /bin/sh on *nix) and pipes all data sent to this processes stdout, stderr, and stdin.private void
Deprecated.Deprecated.Returns this process' working directory.Deprecated.Returns a modifiable string map view of this process' environment.private void
handleCommand
(Writer stdOut, Writer stdErr) Deprecated.Deprecated.If called, this ProcessStarter will include the StdErr output in the return string of this process.private static String
Deprecated.parseCommandLine
(String str) Deprecated.void
Deprecated.Executes the given command as if it had been executed from the command line of the host OS (cmd.exe on windows, /bin/sh on *nix) and calls the provided handler with the newly created process.void
setDirectory
(File directory) Deprecated.Sets this process' working directory.start()
Deprecated.Starts a new process using the attributes of this process starter.private Process
Deprecated.withCharset
(String cs) Deprecated.withCMD()
Deprecated.The process built up will use CMD if this is a windows platform.withStdErrHandler
(ProcessStarter.OutputHandler stdErrHandler) Deprecated.withStdOutHandler
(ProcessStarter.OutputHandler stdOutHandler) Deprecated.
-
Field Details
-
IGNORE
Deprecated. -
CONSOLE_NEWLINE
Deprecated. -
_pb
Deprecated. -
_withCMD
private boolean _withCMDDeprecated. -
_inludeStdErrInOutput
private boolean _inludeStdErrInOutputDeprecated. -
_dontThrowOnNonZeroReturn
private boolean _dontThrowOnNonZeroReturnDeprecated. -
_rawCmd
Deprecated. -
_stdOut
Deprecated. -
_stdErr
Deprecated. -
_charset
Deprecated.
-
-
Constructor Details
-
ProcessStarter
Deprecated.
-
-
Method Details
-
parseCommandLine
Deprecated. -
exec
Deprecated.Executes the given command as if it had been executed from the command line of the host OS (cmd.exe on windows, /bin/sh on *nix) and returns all content sent to standard out as a string. If the command finishes with a non zero return value, a
CommandFailedException
is thrown.Content sent to standard error by the command will be forwarded to standard error for this JVM.
This method blocks on the execution of the command.
Example Usages:
var currentDir = Shell.exec( "dir" ) // windows var currentDir = Shell.exec( "ls" ) // *nix Shell.exec( "rm -rf " + directoryToNuke )
- Returns:
- the content of standard out
- Throws:
CommandFailedException
- if the process finishes with a non-zero return value
-
flush
Deprecated. -
execWithPipe
public void execWithPipe()Deprecated.Executes the given command as if it had been executed from the command line of the host OS (cmd.exe on windows, /bin/sh on *nix) and pipes all data sent to this processes stdout, stderr, and stdin. If the command finishes with a non zero return value, a
CommandFailedException
is thrown.Stdout and Stderr from the sub-process will be piped to the current process' stdout and stderr. Any input in this processes stdin will be piped to the sub-process' stdin
Content sent to standard error by the command will be forwarded to standard error for this JVM.
This method blocks on the execution of the command.
Example Usages:
Shell.execWithPipe( "read \"are you there?\"" )
- Throws:
CommandFailedException
- if the process finishes with a non-zero return value
-
startImpl
Deprecated.- Throws:
IOException
-
processWithHandler
Deprecated.Executes the given command as if it had been executed from the command line of the host OS (cmd.exe on windows, /bin/sh on *nix) and calls the provided handler with the newly created process.
NOTE: In gosu, you should take advantage of the block-to-interface coercion provided and pass blocks in as the handler. See the examples below.
- Parameters:
handler
- the process handler for this process.
-
start
Deprecated.Starts a new process using the attributes of this process starter.The new process will invoke the command and arguments given by
ProcessBuilder.command()
, in a working directory as given bygetDirectory()
, with a process environment as given bygetEnvironment()
.This method calls directly to
ProcessBuilder.start
.- Returns:
- A new
Process
object for managing the subprocess - Throws:
NullPointerException
- If an element of the command list is nullIndexOutOfBoundsException
- If the command is an empty list (has size0
)SecurityException
- If a security manager exists and itscheckExec
method doesn't allow creation of the subprocessIOException
- If an I/O error occurs- See Also:
-
getEnvironment
Deprecated.Returns a modifiable string map view of this process' environment. Whenever a process starter is created, the environment is initialized to a copy of the current process environment (seeSystem.getenv()
). Subprocesses subsequently started by this object will use this map as their environment.The returned object may be modified using ordinary
Map
operations. These modifications will be visible to subprocesses. TwoProcessStarter
instances always contain independent process environments, so changes to the returned map will never be reflected in any otherProcessStarter
instance or the values returned bySystem.getenv
. There are many system-dependant restrictions placed on the returned map. SeeProcessBuilder
for more information- Returns:
- This process environment
- Throws:
SecurityException
- If a security manager exists and itscheckPermission
method doesn't allow access to the process environment- See Also:
-
getDirectory
Deprecated.Returns this process' working directory. Subprocesses subsequently started by this object will use this as their working directory. The returned value may benull
-- this means to use the working directory of the current Java process, usually the directory named by the system propertyuser.dir
, as the working directory of the child process.- Returns:
- This process's working directory
-
setDirectory
Deprecated.Sets this process' working directory. Subprocesses subsequently started by this object will use this as their working directory. The returned value may benull
-- this means to use the working directory of the current Java process, usually the directory named by the system propertyuser.dir
, as the working directory of the child process.- Parameters:
directory
- This process' working directory
-
handleCommand
Deprecated. -
indent
Deprecated. -
withCharset
Deprecated. -
withCMD
Deprecated.The process built up will use CMD if this is a windows platform. This is necessary because on windows certain basic commands such as "dir" are not programs, but rather are built into CMD. Thanks, Microsoft. -
includeStdErrInOutput
Deprecated.If called, this ProcessStarter will include the StdErr output in the return string of this process. Note that this has no effect ifwithStdErrHandler(OutputHandler)
is called.- Returns:
- this object for chaining
-
doNotThrowOnNonZeroReturnVal
Deprecated.If called, this ProcessStarter will not throw an exception if the underlying process exits with a non-zero return code- Returns:
- this object for chaining
-
withStdErrHandler
Deprecated.- Parameters:
stdErrHandler
- handler that will be called with every line of output to stderr- Returns:
- this object for chaining
-
withStdOutHandler
Deprecated.- Parameters:
stdOutHandler
- handler that will be called with every line of output to stdout- Returns:
- this object for chaining
-
ProcessRunner
instead