|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.codehaus.plexus.util.cli.CommandLineUtils
public abstract class CommandLineUtils
Nested Class Summary | |
---|---|
static class |
CommandLineUtils.StringStreamConsumer
|
Constructor Summary | |
---|---|
CommandLineUtils()
|
Method Summary | |
---|---|
static void |
addShutdownHook()
|
static int |
executeCommandLine(Commandline cl,
java.io.InputStream systemIn,
StreamConsumer systemOut,
StreamConsumer systemErr)
|
static int |
executeCommandLine(Commandline cl,
java.io.InputStream systemIn,
StreamConsumer systemOut,
StreamConsumer systemErr,
int timeoutInSeconds)
|
static int |
executeCommandLine(Commandline cl,
StreamConsumer systemOut,
StreamConsumer systemErr)
|
static int |
executeCommandLine(Commandline cl,
StreamConsumer systemOut,
StreamConsumer systemErr,
int timeoutInSeconds)
|
static java.util.Properties |
getSystemEnvVars()
Gets the shell environment variables for this process. |
static java.util.Properties |
getSystemEnvVars(boolean caseSensitive)
Return the shell environment variables. |
static boolean |
isAlive(long pid)
|
static boolean |
isAlive(java.lang.Process p)
|
static void |
killProcess(long pid)
Kill a process launched by executeCommandLine methods. |
static java.lang.String |
quote(java.lang.String argument)
Deprecated. Use StringUtils.quoteAndEscape(String, char, char[], char[], char, boolean) ,
StringUtils.quoteAndEscape(String, char, char[], char, boolean) , or
StringUtils.quoteAndEscape(String, char) instead. |
static java.lang.String |
quote(java.lang.String argument,
boolean wrapExistingQuotes)
Deprecated. Use StringUtils.quoteAndEscape(String, char, char[], char[], char, boolean) ,
StringUtils.quoteAndEscape(String, char, char[], char, boolean) , or
StringUtils.quoteAndEscape(String, char) instead. |
static java.lang.String |
quote(java.lang.String argument,
boolean escapeSingleQuotes,
boolean escapeDoubleQuotes,
boolean wrapExistingQuotes)
Deprecated. Use StringUtils.quoteAndEscape(String, char, char[], char[], char, boolean) ,
StringUtils.quoteAndEscape(String, char, char[], char, boolean) , or
StringUtils.quoteAndEscape(String, char) instead. |
static void |
removeShutdownHook(boolean execute)
|
static java.lang.String |
toString(java.lang.String[] line)
|
static java.lang.String[] |
translateCommandline(java.lang.String toProcess)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public CommandLineUtils()
Method Detail |
---|
public static void addShutdownHook()
public static void removeShutdownHook(boolean execute)
public static int executeCommandLine(Commandline cl, StreamConsumer systemOut, StreamConsumer systemErr) throws CommandLineException
CommandLineException
public static int executeCommandLine(Commandline cl, StreamConsumer systemOut, StreamConsumer systemErr, int timeoutInSeconds) throws CommandLineException
CommandLineException
public static int executeCommandLine(Commandline cl, java.io.InputStream systemIn, StreamConsumer systemOut, StreamConsumer systemErr) throws CommandLineException
CommandLineException
public static int executeCommandLine(Commandline cl, java.io.InputStream systemIn, StreamConsumer systemOut, StreamConsumer systemErr, int timeoutInSeconds) throws CommandLineException
cl
- The command line to executesystemIn
- The input to read from, must be thread safesystemOut
- A consumer that receives output, must be thread safesystemErr
- A consumer that receives system error stream output, must be thread safetimeoutInSeconds
- Positive integer to specify timeout, zero and negative integers for no timeout.
Process.exitValue()
CommandLineException
- or CommandLineTimeOutException if time out occurspublic static java.util.Properties getSystemEnvVars() throws java.io.IOException
getSystemEnvVars().get("path")
and getSystemEnvVars().get("PATH")
will in general return different values. However, on platforms
with case-insensitive environment variables like Windows, all variable names will be normalized to upper case.
null
.
java.io.IOException
- If the environment variables could not be queried from the shell.System.getenv() API, new in JDK 5.0, to get the same result
since 2.0.2 System#getenv() will be used if available in the current running jvm.
public static java.util.Properties getSystemEnvVars(boolean caseSensitive) throws java.io.IOException
caseSensitive == true
, then envar
keys will all be upper-case.
caseSensitive
- Whether environment variable keys should be treated case-sensitively.
java.io.IOException
System.getenv() API, new in JDK 5.0, to get the same result
since 2.0.2 System#getenv() will be used if available in the current running jvm.
public static void killProcess(long pid)
pid
- The pid of command return by Commandline.getPid()public static boolean isAlive(long pid)
public static boolean isAlive(java.lang.Process p)
public static java.lang.String[] translateCommandline(java.lang.String toProcess) throws java.lang.Exception
java.lang.Exception
public static java.lang.String quote(java.lang.String argument) throws CommandLineException
StringUtils.quoteAndEscape(String, char, char[], char[], char, boolean)
,
StringUtils.quoteAndEscape(String, char, char[], char, boolean)
, or
StringUtils.quoteAndEscape(String, char)
instead.
Put quotes around the given String if necessary.
If the argument doesn't include spaces or quotes, return it as is. If it contains double quotes, use single quotes - else surround the argument by double quotes.
CommandLineException
- if the argument contains both, single
and double quotes.public static java.lang.String quote(java.lang.String argument, boolean wrapExistingQuotes) throws CommandLineException
StringUtils.quoteAndEscape(String, char, char[], char[], char, boolean)
,
StringUtils.quoteAndEscape(String, char, char[], char, boolean)
, or
StringUtils.quoteAndEscape(String, char)
instead.
Put quotes around the given String if necessary.
If the argument doesn't include spaces or quotes, return it as is. If it contains double quotes, use single quotes - else surround the argument by double quotes.
CommandLineException
- if the argument contains both, single
and double quotes.public static java.lang.String quote(java.lang.String argument, boolean escapeSingleQuotes, boolean escapeDoubleQuotes, boolean wrapExistingQuotes) throws CommandLineException
StringUtils.quoteAndEscape(String, char, char[], char[], char, boolean)
,
StringUtils.quoteAndEscape(String, char, char[], char, boolean)
, or
StringUtils.quoteAndEscape(String, char)
instead.
CommandLineException
public static java.lang.String toString(java.lang.String[] line)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |