public interface Setter<T>
This abstracts away the difference between a field and a setter method, which object we are setting the value to, and/or how we handle collection fields differently.
Modifier and Type | Method and Description |
---|---|
void |
addValue(T value)
Adds/sets a value to the property of the option bean.
|
AnnotatedElement |
asAnnotatedElement()
Returns the
AnnotatedElement by which you can access annotations written on this setter. |
FieldSetter |
asFieldSetter()
If this setter encapsulates a field, return the direct access to that field as
FieldSetter . |
Class<T> |
getType()
Gets the type of the underlying method/field.
|
boolean |
isMultiValued()
Whether this setter is intrinsically multi-valued.
|
void addValue(T value) throws CmdLineException
A Setter
object has an implicit knowledge about the property it's setting,
and the instance of the option bean.
CmdLineException
boolean isMultiValued()
This characteristics of a setter does not affect option parsing at all, as any options can be specified multiple times (which in many cases are no-op, but when your shell script expands multiple environment variables that each can contain options, tolerating such redundant options are often useful.)
FieldSetter asFieldSetter()
FieldSetter
. This method serves two purposes.
One is that this lets OptionHandler
s to bypass the collection/array handling of fields.
This is useful if you are defining an option handler that produces array or collection
from a single argument.
The other is to retrieve the current value of the field, via FieldSetter.getValue()
.
AnnotatedElement asAnnotatedElement()
AnnotatedElement
by which you can access annotations written on this setter.
This is the same AnnotatedElement
that had Option
/Argument
.
This enables OptionHandler
to further tweak its behavior based on additional annotations.
Copyright © 2003–2013 Kohsuke Kawaguchi. All rights reserved.