public class Commandline extends Object implements Cloneable
<someelement>
<acommandline executable="/executable/to/run">
<argument value="argument 1" />
<argument line="argument_1 argument_2 argument_3" />
<argument value="argument 4" />
</acommandline>
</someelement>
The element someelement
must provide a method
createAcommandline
which returns an instance of this class.
Modifier and Type | Class and Description |
---|---|
static class |
Commandline.Argument |
class |
Commandline.Marker
Class to keep track of the position of an Argument.
|
Modifier and Type | Field and Description |
---|---|
protected Vector |
arguments |
protected Map |
envVars |
protected String |
executable
Deprecated.
Use
setExecutable(String) instead. |
protected static String |
OS_NAME
Deprecated.
Use
Os class instead. |
protected static String |
WINDOWS
Deprecated.
Use
Os class instead. |
Constructor and Description |
---|
Commandline()
Create a new command line object.
|
Commandline(Shell shell)
Create a new command line object.
|
Commandline(String toProcess)
Create a new command line object.
|
Commandline(String toProcess,
Shell shell)
Create a new command line object.
|
Modifier and Type | Method and Description |
---|---|
void |
addArg(Arg argument)
Adds an argument object to our list of args.
|
void |
addArg(Arg argument,
boolean insertAtStart)
Adds an argument object to our list of args.
|
void |
addArguments(String[] line) |
void |
addEnvironment(String name,
String value)
Add an environment variable
|
void |
addSystemEnvironment()
Add system environment variables
|
void |
clear()
Clear out the whole command line.
|
void |
clearArgs()
Clear out the arguments but leave the executable in place for another operation.
|
Object |
clone() |
Arg |
createArg()
Creates an argument object.
|
Arg |
createArg(boolean insertAtStart)
Creates an argument object and adds it to our list of args.
|
Commandline.Argument |
createArgument()
Deprecated.
Use
createArg() instead |
Commandline.Argument |
createArgument(boolean insertAtStart)
Deprecated.
Use
createArg(boolean) instead |
Commandline.Marker |
createMarker()
Return a marker.
|
Process |
execute()
Executes the command.
|
String[] |
getArguments()
Returns all arguments defined by
addLine ,
addValue or the argument object. |
String[] |
getCommandline()
Returns the executable and all defined arguments.
|
String[] |
getEnvironmentVariables()
Return the list of environment variables
|
String |
getExecutable() |
long |
getPid() |
Shell |
getShell()
Get the shell to be used in this command line.
|
String[] |
getShellCommandline()
Returns the shell, executable and all defined arguments.
|
Properties |
getSystemEnvVars() |
File |
getWorkingDirectory() |
static String |
quoteArgument(String argument)
Deprecated.
Use
CommandLineUtils.quote(String) instead. |
void |
setExecutable(String executable)
Sets the executable to run.
|
void |
setPid(long pid) |
void |
setShell(Shell shell)
Allows to set the shell to be used in this command line.
|
void |
setWorkingDirectory(File workingDirectory)
Sets execution directory.
|
void |
setWorkingDirectory(String path)
Sets execution directory.
|
int |
size() |
String |
toString() |
static String |
toString(String[] line)
Deprecated.
Use
CommandLineUtils.toString(String[]) instead. |
static String[] |
translateCommandline(String toProcess)
Deprecated.
Use
CommandLineUtils.translateCommandline(String) instead. |
protected static final String OS_NAME
Os
class instead.protected static final String WINDOWS
Os
class instead.protected Vector arguments
protected Map envVars
protected String executable
setExecutable(String)
instead.public Commandline(String toProcess, Shell shell)
toProcess
- public Commandline(Shell shell)
public Commandline(String toProcess)
toProcess
- public Commandline()
public long getPid()
public void setPid(long pid)
public Commandline.Argument createArgument()
createArg()
insteadEach commandline object has at most one instance of the
argument class. This method calls
this.createArgument(false)
.
createArgument(boolean)
public Commandline.Argument createArgument(boolean insertAtStart)
createArg(boolean)
insteadEach commandline object has at most one instance of the argument class.
insertAtStart
- if true, the argument is inserted at the
beginning of the list of args, otherwise it is appended.public Arg createArg()
Each commandline object has at most one instance of the
argument class. This method calls
this.createArgument(false)
.
createArgument(boolean)
public Arg createArg(boolean insertAtStart)
Each commandline object has at most one instance of the argument class.
insertAtStart
- if true, the argument is inserted at the
beginning of the list of args, otherwise it is appended.public void addArg(Arg argument)
addArg(Arg,boolean)
public void addArg(Arg argument, boolean insertAtStart)
insertAtStart
- if true, the argument is inserted at the
beginning of the list of args, otherwise it is appended.public void setExecutable(String executable)
public String getExecutable()
public void addArguments(String[] line)
public void addSystemEnvironment() throws Exception
Exception
public String[] getEnvironmentVariables() throws CommandLineException
CommandLineException
public String[] getCommandline()
public String[] getShellCommandline()
public String[] getArguments()
addLine
,
addValue
or the argument object.public int size()
public void clear()
public void clearArgs()
public Commandline.Marker createMarker()
This marker can be used to locate a position on the commandline - to insert something for example - when all parameters have been set.
public void setWorkingDirectory(String path)
public void setWorkingDirectory(File workingDirectory)
public File getWorkingDirectory()
public Process execute() throws CommandLineException
CommandLineException
public Properties getSystemEnvVars() throws Exception
Exception
public void setShell(Shell shell)
shell
- public Shell getShell()
public static String[] translateCommandline(String toProcess) throws Exception
CommandLineUtils.translateCommandline(String)
instead.Exception
public static String quoteArgument(String argument) throws CommandLineException
CommandLineUtils.quote(String)
instead.CommandLineException
public static String toString(String[] line)
CommandLineUtils.toString(String[])
instead.Copyright © 2001-2013 Codehaus. All Rights Reserved.