public interface Command
Each Command
is associated with an ExecutionSystem
that can
execute it and implements system-dependent behavior, like argument escaping.
Implementations of this interface are immutable.
Modifier and Type | Interface and Description |
---|---|
static interface |
Command.Builder
Builds
Command objects. |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj)
Tests this
Command for equality with another object. |
ImmutableList<String> |
getArguments()
Returns the arguments of this command.
|
String |
getExecutable()
Returns this command's executable.
|
ExecutionSystem |
getExecutionSystem()
Returns the
ExecutionSystem associated with this command. |
int |
hashCode()
Returns a hash code for this
Command . |
String |
toString()
Returns a human-readable string representation of this command.
|
ExecutionSystem getExecutionSystem()
ExecutionSystem
associated with this command.String getExecutable()
ImmutableList<String> getArguments()
Each element in the list corresponds to a single logical argument passed to this command's executable. The arguments are the unmodified string representations of the objects provided when this command was constructed. The execution system may modify these arguments to escape system-dependent special characters when this command is executed.
String toString()
boolean equals(Object obj)
Command
for equality with another object.
If the other object is not a Command
or is a Command
associated with a different execution system, this method returns
false
.
Otherwise, two commands are equal if they have the same executable and the same arguments.
This method satisfies the general contract of the
Object.equals
method.
int hashCode()
Command
.
The hash code combines the hash codes of the executable and the arguments list.
This method satisfies the general contract of the
Object.hashCode
method.