Class Shell
- java.lang.Object
-
- org.apache.maven.shared.utils.cli.shell.Shell
-
- All Implemented Interfaces:
java.lang.Cloneable
- Direct Known Subclasses:
BourneShell,CmdShell,CommandShell
public class Shell extends java.lang.Object implements java.lang.CloneableClass that abstracts the Shell functionality, with subclasses for shells that behave particularly, likecommand.comcmd.exe
- Author:
- Carlos Sanchez
-
-
Constructor Summary
Constructors Constructor Description Shell()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Objectclone()java.lang.StringgetExecutable()java.util.List<java.lang.String>getShellCommandLine(java.lang.String... arguments)Get the full command line to execute, including shell command, shell arguments, executable and executable argumentsjava.io.FilegetWorkingDirectory()protected booleanisDoubleQuotedArgumentEscaped()protected booleanisSingleQuotedArgumentEscaped()booleanisUnconditionalQuoting()protected java.lang.StringquoteOneItem(java.lang.String inputString, boolean isExecutable)voidsetExecutable(java.lang.String executable)Sets the executable to run.voidsetQuotedArgumentsEnabled(boolean quotedArgumentsEnabled)voidsetUnconditionalQuoting(boolean unconditionalQuoting)voidsetWorkingDirectory(java.io.File workingDirectory)Sets execution directory.voidsetWorkingDirectory(java.lang.String path)Sets execution directory.
-
-
-
Method Detail
-
quoteOneItem
protected java.lang.String quoteOneItem(java.lang.String inputString, boolean isExecutable)
-
isDoubleQuotedArgumentEscaped
protected boolean isDoubleQuotedArgumentEscaped()
- Returns:
- false in all cases
-
isSingleQuotedArgumentEscaped
protected boolean isSingleQuotedArgumentEscaped()
- Returns:
singleQuotedArgumentEscaped
-
getShellCommandLine
public java.util.List<java.lang.String> getShellCommandLine(java.lang.String... arguments)
Get the full command line to execute, including shell command, shell arguments, executable and executable arguments- Parameters:
arguments- arguments for the executable, not the shell- Returns:
- List of String objects, whose array version is suitable to be used as argument of Runtime.getRuntime().exec()
-
setQuotedArgumentsEnabled
public void setQuotedArgumentsEnabled(boolean quotedArgumentsEnabled)
- Parameters:
quotedArgumentsEnabled-quotedArgumentsEnabled
-
setExecutable
public void setExecutable(java.lang.String executable)
Sets the executable to run.- Parameters:
executable- The executable.
-
getExecutable
public java.lang.String getExecutable()
- Returns:
- The executable.
-
setWorkingDirectory
public void setWorkingDirectory(java.lang.String path)
Sets execution directory.- Parameters:
path- The path which should be used as working directory.
-
setWorkingDirectory
public void setWorkingDirectory(java.io.File workingDirectory)
Sets execution directory.- Parameters:
workingDirectory- the working directory
-
getWorkingDirectory
public java.io.File getWorkingDirectory()
- Returns:
- the working directory
-
clone
public java.lang.Object clone()
- Overrides:
clonein classjava.lang.Object
-
isUnconditionalQuoting
public boolean isUnconditionalQuoting()
-
setUnconditionalQuoting
public void setUnconditionalQuoting(boolean unconditionalQuoting)
-
-