@Mutable @ThreadSafety(level=NOT_THREADSAFE) public final class TimestampArgument extends Argument
Constructor and Description |
---|
TimestampArgument(java.lang.Character shortIdentifier,
java.lang.String longIdentifier,
boolean isRequired,
int maxOccurrences,
java.lang.String valuePlaceholder,
java.lang.String description)
Creates a new timestamp argument with the provided information.
|
TimestampArgument(java.lang.Character shortIdentifier,
java.lang.String longIdentifier,
boolean isRequired,
int maxOccurrences,
java.lang.String valuePlaceholder,
java.lang.String description,
java.util.Date defaultValue)
Creates a new timestamp argument with the provided information.
|
TimestampArgument(java.lang.Character shortIdentifier,
java.lang.String longIdentifier,
boolean isRequired,
int maxOccurrences,
java.lang.String valuePlaceholder,
java.lang.String description,
java.util.List<java.util.Date> defaultValues)
Creates a new timestamp argument with the provided information.
|
TimestampArgument(java.lang.Character shortIdentifier,
java.lang.String longIdentifier,
java.lang.String description)
Creates a new timestamp argument with the provided information.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addToCommandLine(java.util.List<java.lang.String> argStrings)
Updates the provided list to add any strings that should be included on the
command line in order to represent this argument's current state.
|
protected void |
addValue(java.lang.String valueString)
Adds the provided value to the set of values for this argument.
|
void |
addValueValidator(ArgumentValueValidator validator)
Updates this argument to ensure that the provided validator will be invoked
for any values provided to this argument.
|
TimestampArgument |
getCleanCopy()
Creates a copy of this argument that is "clean" and appears as if it has
not been used in the course of parsing an argument set.
|
java.lang.String |
getDataTypeName()
Retrieves a concise name of the data type with which this argument is
associated.
|
java.util.List<java.util.Date> |
getDefaultValues()
Retrieves the list of default values for this argument, which will be used
if no values were provided.
|
java.lang.String |
getStringValue()
Retrieves a string representation of the value for this argument, or a
string representation of the default value if none was provided.
|
java.util.Date |
getValue()
Retrieves the value for this argument, or the default value if none was
provided.
|
java.lang.String |
getValueConstraints()
Retrieves a human-readable string with information about any constraints
that may be imposed for values of this argument.
|
java.util.List<java.util.Date> |
getValues()
Retrieves the set of values for this argument.
|
java.util.List<java.lang.String> |
getValueStringRepresentations(boolean useDefault)
Retrieves a list containing the string representations of the values for
this argument, if any.
|
protected boolean |
hasDefaultValue()
Indicates whether this argument has one or more default values that will be
used if it is not provided on the command line.
|
static java.util.Date |
parseTimestamp(java.lang.String s)
Parses the provided string as a timestamp using one of the supported
formats.
|
protected void |
reset()
Resets this argument so that it appears in the same form as before it was
used to parse arguments.
|
void |
toString(java.lang.StringBuilder buffer)
Appends a string representation of this argument to the provided buffer.
|
addLongIdentifier, addShortIdentifier, appendBasicToStringInfo, getArgumentGroupName, getDescription, getIdentifierString, getLongIdentifier, getLongIdentifiers, getMaxOccurrences, getNumOccurrences, getShortIdentifier, getShortIdentifiers, getValuePlaceholder, hasLongIdentifier, hasShortIdentifier, isHidden, isPresent, isRequired, isSensitive, isUsageArgument, setArgumentGroupName, setHidden, setMaxOccurrences, setSensitive, setUsageArgument, takesValue, toString
public TimestampArgument(java.lang.Character shortIdentifier, java.lang.String longIdentifier, java.lang.String description) throws ArgumentException
shortIdentifier
- The short identifier for this argument. It may
not be null
if the long identifier is
null
.longIdentifier
- The long identifier for this argument. It may
not be null
if the short identifier is
null
.description
- A human-readable description for this argument.
It must not be null
.ArgumentException
- If there is a problem with the definition of
this argument.public TimestampArgument(java.lang.Character shortIdentifier, java.lang.String longIdentifier, boolean isRequired, int maxOccurrences, java.lang.String valuePlaceholder, java.lang.String description) throws ArgumentException
shortIdentifier
- The short identifier for this argument. It may
not be null
if the long identifier is
null
.longIdentifier
- The long identifier for this argument. It may
not be null
if the short identifier is
null
.isRequired
- Indicates whether this argument is required to
be provided.maxOccurrences
- The maximum number of times this argument may be
provided on the command line. A value less than
or equal to zero indicates that it may be present
any number of times.valuePlaceholder
- A placeholder to display in usage information to
indicate that a value must be provided. It may
be null
if a default placeholder should
be used.description
- A human-readable description for this argument.
It must not be null
.ArgumentException
- If there is a problem with the definition of
this argument.public TimestampArgument(java.lang.Character shortIdentifier, java.lang.String longIdentifier, boolean isRequired, int maxOccurrences, java.lang.String valuePlaceholder, java.lang.String description, java.util.Date defaultValue) throws ArgumentException
shortIdentifier
- The short identifier for this argument. It may
not be null
if the long identifier is
null
.longIdentifier
- The long identifier for this argument. It may
not be null
if the short identifier is
null
.isRequired
- Indicates whether this argument is required to
be provided.maxOccurrences
- The maximum number of times this argument may be
provided on the command line. A value less than
or equal to zero indicates that it may be present
any number of times.valuePlaceholder
- A placeholder to display in usage information to
indicate that a value must be provided. It may
be null
if a default placeholder should
be used.description
- A human-readable description for this argument.
It must not be null
.defaultValue
- The default value to use for this argument if no
values were provided.ArgumentException
- If there is a problem with the definition of
this argument.public TimestampArgument(java.lang.Character shortIdentifier, java.lang.String longIdentifier, boolean isRequired, int maxOccurrences, java.lang.String valuePlaceholder, java.lang.String description, java.util.List<java.util.Date> defaultValues) throws ArgumentException
shortIdentifier
- The short identifier for this argument. It may
not be null
if the long identifier is
null
.longIdentifier
- The long identifier for this argument. It may
not be null
if the short identifier is
null
.isRequired
- Indicates whether this argument is required to
be provided.maxOccurrences
- The maximum number of times this argument may be
provided on the command line. A value less than
or equal to zero indicates that it may be present
any number of times.valuePlaceholder
- A placeholder to display in usage information to
indicate that a value must be provided. It may
be null
if a default placeholder should
be used.description
- A human-readable description for this argument.
It must not be null
.defaultValues
- The set of default values to use for this
argument if no values were provided.ArgumentException
- If there is a problem with the definition of
this argument.public java.util.List<java.util.Date> getDefaultValues()
null
if
there are no default values.public void addValueValidator(ArgumentValueValidator validator)
validator
- The argument value validator to be invoked. It must not
be null
.protected void addValue(java.lang.String valueString) throws ArgumentException
addValue
in class Argument
valueString
- The string representation of the value.ArgumentException
- If the provided value is not acceptable, if
this argument does not accept values, or if
this argument already has the maximum allowed
number of values.public static java.util.Date parseTimestamp(java.lang.String s) throws java.text.ParseException
s
- The string to parse as a timestamp. It must not be
null
.Date
object parsed from the provided timestamp.java.text.ParseException
- If the provided string cannot be parsed as a
timestamp.public java.util.Date getValue()
null
if there is no value and no default
value.public java.util.List<java.util.Date> getValues()
public java.lang.String getStringValue()
null
if there is no value and no default value.public java.util.List<java.lang.String> getValueStringRepresentations(boolean useDefault)
getValueStringRepresentations
in class Argument
useDefault
- Indicates whether to use any configured default value
if the argument doesn't have a user-specified value.protected boolean hasDefaultValue()
hasDefaultValue
in class Argument
true
if this argument has one or more default values, or
false
if not.public java.lang.String getDataTypeName()
getDataTypeName
in class Argument
public java.lang.String getValueConstraints()
getValueConstraints
in class Argument
null
if there are none.protected void reset()
super.reset()
to ensure that all necessary reset processing is
performed.public TimestampArgument getCleanCopy()
getCleanCopy
in class Argument
protected void addToCommandLine(java.util.List<java.lang.String> argStrings)
addToCommandLine
in class Argument
argStrings
- The list to update with the string representation of
the command-line arguments.