public class Commandline extends Object implements Cloneable
Commandline objects help handling command lines specifying processes to execute.
The class can be used to define a command line as nested elements or as a helper to define a command line by an application.
<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
A single command line argument
|
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.
|
Modifier and Type | Method and Description |
---|---|
void |
addArguments(String... line) |
void |
addEnvironment(String name,
String value)
Add an environment variable.
|
void |
addSystemEnvironment()
Add system environment variables.
|
void |
clearArgs()
Clear out the arguments but leave the executable in place for another operation.
|
Object |
clone() |
Arg |
createArg()
Creates an empty argument object and inserts it at the end of the argument list.
|
Arg |
createArg(boolean insertAtStart)
Creates an argument object and adds it to the list of args.
|
Process |
execute()
Execute the command.
|
String[] |
getArguments()
Returns all arguments defined by
addLine ,
addValue or the argument object. |
String[] |
getArguments(boolean mask)
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() |
Shell |
getShell()
Get the shell to be used in this command line.
|
File |
getWorkingDirectory() |
void |
setExecutable(String executable)
Sets the executable to run.
|
void |
setWorkingDirectory(File workingDirectory)
Sets working directory.
|
void |
setWorkingDirectory(String path)
Sets working directory.
|
String |
toString() |
public Commandline(Shell shell)
shell
- the shell instancepublic Commandline(String toProcess) throws CommandLineException
toProcess
- the command to processCommandLineException
- in case of unbalanced quotes.public Commandline()
public Arg createArg()
public Arg createArg(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)
executable
- the executablepublic String getExecutable()
public void addArguments(String... line)
line
- the argumentspublic void addEnvironment(String name, String value)
name
- the name of the environment variablevalue
- the appropriate valuepublic void addSystemEnvironment()
public String[] getEnvironmentVariables()
public String[] getCommandline()
public String[] getArguments()
addLine
,
addValue
or the argument object.public String[] getArguments(boolean mask)
addLine
,
addValue
, or the argument object.mask
- flag to mask any arguments (having his mask
field to true
)public void setWorkingDirectory(String path)
path
- the working directorypublic void setWorkingDirectory(File workingDirectory)
workingDirectory
- the working directorypublic File getWorkingDirectory()
public void clearArgs()
public Process execute() throws CommandLineException
CommandLineException
- in case of errorspublic Shell getShell()
Copyright © 2002–2021 The Apache Software Foundation. All rights reserved.