Package com.beust.jcommander
Class ParameterDescription
- java.lang.Object
-
- com.beust.jcommander.ParameterDescription
-
public class ParameterDescription extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) classParameterDescription.SubParameterIndex
-
Field Summary
Fields Modifier and Type Field Description private booleanassignedKeep track of whether a value was added to flag an errorprivate java.util.ResourceBundlebundleprivate java.lang.ObjectdefaultObjectprivate java.lang.Stringdescriptionprivate DynamicParameterdynamicParameterAnnotationprivate JCommanderjCommanderprivate java.lang.StringlongestNameLongest of the names(), used to present usage() alphabeticallyprivate java.lang.Objectobjectprivate ParameterparameterAnnotationprivate ParameterizedparameterizedThe field/methodprivate WrappedParameterwrappedParameter
-
Constructor Summary
Constructors Constructor Description ParameterDescription(java.lang.Object object, DynamicParameter annotation, Parameterized parameterized, java.util.ResourceBundle bundle, JCommander jc)ParameterDescription(java.lang.Object object, Parameter annotation, Parameterized parameterized, java.util.ResourceBundle bundle, JCommander jc)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddValue(java.lang.String value)voidaddValue(java.lang.String value, boolean isDefault)Add the specified value to the field.(package private) java.lang.ObjectaddValue(java.lang.String name, java.lang.String value, boolean isDefault, boolean validate, int currentIndex)private booleanfieldIsSetForTheFirstTime(boolean isDefault)private java.util.ResourceBundlefindResourceBundle(java.lang.Object o)Find the resource bundle in the annotations.private java.util.List<ParameterDescription.SubParameterIndex>findSubParameters(java.lang.Class<?> type)java.lang.ObjectgetDefault()java.lang.StringgetDescription()java.lang.StringgetLongestName()java.lang.StringgetNames()java.lang.ObjectgetObject()WrappedParametergetParameter()ParametergetParameterAnnotation()ParameterizedgetParameterized()private java.lang.ObjecthandleSubParameters(java.lang.String value, int currentIndex, java.lang.Class<?> type, java.util.List<ParameterDescription.SubParameterIndex> subParameters)private voidinit(java.lang.Object object, Parameterized parameterized, java.util.ResourceBundle bundle, JCommander jCommander)Initializes the state of this parameter description.private voidinitDescription(java.lang.String description, java.lang.String descriptionKey, java.lang.String[] names)booleanisAssigned()booleanisDynamicParameter()private booleanisEmpty(java.lang.String s)booleanisHelp()private booleanisMultiOption()booleanisNonOverwritableForced()private java.util.Collection<java.lang.Object>newCollection(java.lang.Class<?> type)private voidp(java.lang.String string)voidsetAssigned(boolean b)java.lang.StringtoString()private voidvalidateDefaultValues(java.lang.String[] names)voidvalidateParameter(java.lang.Class<? extends IParameterValidator> validator, java.lang.String name, java.lang.String value)private voidvalidateParameter(java.lang.String name, java.lang.String value)voidvalidateValueParameter(java.lang.Class<? extends IValueValidator> validator, java.lang.String name, java.lang.Object value)(package private) voidvalidateValueParameter(java.lang.String name, java.lang.Object value)
-
-
-
Field Detail
-
object
private java.lang.Object object
-
wrappedParameter
private WrappedParameter wrappedParameter
-
parameterAnnotation
private Parameter parameterAnnotation
-
dynamicParameterAnnotation
private DynamicParameter dynamicParameterAnnotation
-
parameterized
private Parameterized parameterized
The field/method
-
assigned
private boolean assigned
Keep track of whether a value was added to flag an error
-
bundle
private java.util.ResourceBundle bundle
-
description
private java.lang.String description
-
jCommander
private JCommander jCommander
-
defaultObject
private java.lang.Object defaultObject
-
longestName
private java.lang.String longestName
Longest of the names(), used to present usage() alphabetically
-
-
Constructor Detail
-
ParameterDescription
public ParameterDescription(java.lang.Object object, DynamicParameter annotation, Parameterized parameterized, java.util.ResourceBundle bundle, JCommander jc)
-
ParameterDescription
public ParameterDescription(java.lang.Object object, Parameter annotation, Parameterized parameterized, java.util.ResourceBundle bundle, JCommander jc)
-
-
Method Detail
-
findResourceBundle
private java.util.ResourceBundle findResourceBundle(java.lang.Object o)
Find the resource bundle in the annotations.- Returns:
-
isEmpty
private boolean isEmpty(java.lang.String s)
-
initDescription
private void initDescription(java.lang.String description, java.lang.String descriptionKey, java.lang.String[] names)
-
init
private void init(java.lang.Object object, Parameterized parameterized, java.util.ResourceBundle bundle, JCommander jCommander)Initializes the state of this parameter description. This will set an appropriate bundle if it is null<. If its the description in is empty and it refers to an enum type, then the description will be set to its possible values. It will also attempt to validate the default value of the parameter.- Parameters:
object- the object defining the command-line argumentsparameterized- the wrapper for the field or method annotated with \@Parameter this representsbundle- the localejCommander- the parent JCommander instance- See Also:
initDescription(String, String, String[])
-
validateDefaultValues
private void validateDefaultValues(java.lang.String[] names)
-
getLongestName
public java.lang.String getLongestName()
-
getDefault
public java.lang.Object getDefault()
-
getDescription
public java.lang.String getDescription()
-
getObject
public java.lang.Object getObject()
-
getNames
public java.lang.String getNames()
-
getParameter
public WrappedParameter getParameter()
-
getParameterized
public Parameterized getParameterized()
-
isMultiOption
private boolean isMultiOption()
-
addValue
public void addValue(java.lang.String value)
-
isAssigned
public boolean isAssigned()
- Returns:
- true if this parameter received a value during the parsing phase.
-
setAssigned
public void setAssigned(boolean b)
-
addValue
public void addValue(java.lang.String value, boolean isDefault)Add the specified value to the field. First, validate the value if a validator was specified. Then look up any field converter, then any type converter, and if we can't find any, throw an exception.
-
addValue
java.lang.Object addValue(java.lang.String name, java.lang.String value, boolean isDefault, boolean validate, int currentIndex)
-
handleSubParameters
private java.lang.Object handleSubParameters(java.lang.String value, int currentIndex, java.lang.Class<?> type, java.util.List<ParameterDescription.SubParameterIndex> subParameters)
-
getParameterAnnotation
public Parameter getParameterAnnotation()
-
findSubParameters
private java.util.List<ParameterDescription.SubParameterIndex> findSubParameters(java.lang.Class<?> type)
-
validateParameter
private void validateParameter(java.lang.String name, java.lang.String value)
-
validateValueParameter
void validateValueParameter(java.lang.String name, java.lang.Object value)
-
validateValueParameter
public void validateValueParameter(java.lang.Class<? extends IValueValidator> validator, java.lang.String name, java.lang.Object value)
-
validateParameter
public void validateParameter(java.lang.Class<? extends IParameterValidator> validator, java.lang.String name, java.lang.String value)
-
newCollection
private java.util.Collection<java.lang.Object> newCollection(java.lang.Class<?> type)
-
fieldIsSetForTheFirstTime
private boolean fieldIsSetForTheFirstTime(boolean isDefault)
-
p
private void p(java.lang.String string)
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
isDynamicParameter
public boolean isDynamicParameter()
-
isHelp
public boolean isHelp()
-
isNonOverwritableForced
public boolean isNonOverwritableForced()
-
-