java.lang.Object
de.sormuras.bach.Command
public class Command
extends java.lang.Object
Command-line program argument list builder.
-
Constructor Summary
-
Method Summary
Modifier and Type Method Description Commandadd(java.lang.Object argument)Add single argument by invokingObject.toString()on the given argument.Commandadd(java.lang.Object key, java.lang.Object value)Add two arguments by invokingadd(Object)for the key and value elements.Commandadd(java.lang.Object key, java.util.Collection<java.nio.file.Path> paths)Add two (or zero) arguments, the key and the paths joined by system's path separator.Commandadd(java.lang.Object key, java.util.stream.Stream<java.nio.file.Path> stream, java.util.function.UnaryOperator<java.lang.String> operator)Add two (or zero) arguments, the key and the paths joined by system's path separator.CommandaddEach(java.lang.Iterable<?> arguments)Add all arguments by invokingadd(Object)for each element.<T> CommandaddEach(java.lang.Iterable<T> arguments, java.util.function.BiConsumer<Command,T> visitor)Add all arguments by delegating to the passed visitor for each element.CommandaddEach(java.lang.Object... arguments)Add all arguments by invokingadd(Object)for each element.CommandaddEach(java.util.stream.Stream<?> arguments)Add all arguments by invokingadd(Object)for each element.CommandaddIff(boolean condition, java.lang.Object argument)Add a single argument iff the conditions istrue.CommandaddIff(boolean condition, java.lang.Object key, java.lang.Object value)Add two arguments iff the conditions istrue.CommandaddIff(boolean condition, java.util.function.Consumer<Command> visitor)Let the consumer visit, usually modify, this instance iff the conditions istrue.CommandaddIff(java.lang.Object key, java.util.Optional<?> optionalValue)Add two arguments iff the given optional value is present.Commandclone()java.util.List<java.lang.String>getArguments()Return the command's arguments.java.lang.StringgetName()Return the command's name.java.lang.StringtoCommandLine()Return program's name and all arguments as single string using space as the delimiter.java.lang.StringtoCommandLine(java.lang.String delimiter)Return program's name and all arguments as single string using passed delimiter.java.lang.StringtoString()java.lang.String[]toStringArray()Return an array ofStringcontaining all of the collected arguments.
-
Constructor Details
-
Method Details
-
clone
- Overrides:
clonein classjava.lang.Object
-
add
Add single argument by invokingObject.toString()on the given argument. -
add
Add two arguments by invokingadd(Object)for the key and value elements. -
add
Add two (or zero) arguments, the key and the paths joined by system's path separator. -
add
public Command add(java.lang.Object key, java.util.stream.Stream<java.nio.file.Path> stream, java.util.function.UnaryOperator<java.lang.String> operator)Add two (or zero) arguments, the key and the paths joined by system's path separator. -
addEach
Add all arguments by invokingadd(Object)for each element. -
addEach
Add all arguments by invokingadd(Object)for each element. -
addEach
Add all arguments by invokingadd(Object)for each element. -
addEach
public <T> Command addEach(java.lang.Iterable<T> arguments, java.util.function.BiConsumer<Command,T> visitor)Add all arguments by delegating to the passed visitor for each element. -
addIff
Add a single argument iff the conditions istrue. -
addIff
Add two arguments iff the conditions istrue. -
addIff
Add two arguments iff the given optional value is present. -
addIff
Let the consumer visit, usually modify, this instance iff the conditions istrue. -
getName
public java.lang.String getName()Return the command's name. -
getArguments
public java.util.List<java.lang.String> getArguments()Return the command's arguments. -
toString
public java.lang.String toString()- Overrides:
toStringin classjava.lang.Object
-
toStringArray
public java.lang.String[] toStringArray()Return an array ofStringcontaining all of the collected arguments. -
toCommandLine
public java.lang.String toCommandLine()Return program's name and all arguments as single string using space as the delimiter. -
toCommandLine
public java.lang.String toCommandLine(java.lang.String delimiter)Return program's name and all arguments as single string using passed delimiter.
-