OptionSetter

public class OptionSetter
extends Object

java.lang.Object
   ↳ com.android.tradefed.config.OptionSetter
Known Direct Subclasses
ArgsOptionParser Populates Option fields from parsed command line arguments. 


Populates Option fields.

Setting of numeric fields such byte, short, int, long, float, and double fields is supported. This includes both unboxed and boxed versions (e.g. int vs Integer). If there is a problem setting the argument to match the desired type, a ConfigurationException is thrown.

File option fields are supported by simply wrapping the string argument in a File object without testing for the existence of the file.

Parameterized Collection fields such as List<File> and Set<String> are supported as long as the parameter type is otherwise supported by the option setter. The collection field should be initialized with an appropriate collection instance.

All fields will be processed, including public, protected, default (package) access, private and inherited fields.

ported from dalvik.runner.OptionParser

See also:

Summary

Nested classes

class OptionSetter.FieldDef

 

Constants

String BOOL_FALSE_PREFIX

char NAMESPACE_SEPARATOR

Fields

static final Pattern USE_KEYSTORE_REGEX

Public constructors

OptionSetter(Object... optionSources)

Constructs a new OptionParser for setting the @Option fields of 'optionSources'.

OptionSetter(Collection<Object> optionSources)

Constructs a new OptionParser for setting the @Option fields of 'optionSources'.

Public methods

IKeyStoreClient getKeyStore()
String getTypeForOption(String name)

Returns a string describing the type of the field with given name.

boolean isBooleanOption(String name)
boolean isMapOption(String name)
void setKeyStore(IKeyStoreClient keyStore)
List<OptionSetter.FieldDef> setOptionValue(String optionName, String valueText)

Sets the value for a non-map option.

List<OptionSetter.FieldDef> setOptionValue(String optionName, String keyText, String valueText)

Sets the value for an option.

Protected methods

Collection<String> getUnsetMandatoryOptions()

Returns the names of all of the Options that are marked as mandatory but remain unset.

Constants

BOOL_FALSE_PREFIX

String BOOL_FALSE_PREFIX

Constant Value: "no-"

NAMESPACE_SEPARATOR

char NAMESPACE_SEPARATOR

Constant Value: 58 (0x0000003a)

Fields

USE_KEYSTORE_REGEX

Pattern USE_KEYSTORE_REGEX

Public constructors

OptionSetter

OptionSetter (Object... optionSources)

Constructs a new OptionParser for setting the @Option fields of 'optionSources'.

Parameters
optionSources Object

Throws
ConfigurationException

OptionSetter

OptionSetter (Collection<Object> optionSources)

Constructs a new OptionParser for setting the @Option fields of 'optionSources'.

Parameters
optionSources Collection

Throws
ConfigurationException

Public methods

getKeyStore

IKeyStoreClient getKeyStore ()

Returns
IKeyStoreClient

getTypeForOption

String getTypeForOption (String name)

Returns a string describing the type of the field with given name.

Parameters
name String: the Option field name

Returns
String a String describing the field's type

Throws
ConfigurationException if field could not be found

isBooleanOption

boolean isBooleanOption (String name)

Parameters
name String

Returns
boolean

Throws
ConfigurationException

isMapOption

boolean isMapOption (String name)

Parameters
name String

Returns
boolean

Throws
ConfigurationException

setKeyStore

void setKeyStore (IKeyStoreClient keyStore)

Parameters
keyStore IKeyStoreClient

setOptionValue

List<OptionSetter.FieldDef> setOptionValue (String optionName, 
                String valueText)

Sets the value for a non-map option.

Parameters
optionName String: the name of Option to set

valueText String: the value

Returns
List<OptionSetter.FieldDef> A list of OptionSetter.FieldDefs corresponding to each object field that was modified.

Throws
ConfigurationException if Option cannot be found or valueText is wrong type

setOptionValue

List<OptionSetter.FieldDef> setOptionValue (String optionName, 
                String keyText, 
                String valueText)

Sets the value for an option.

Parameters
optionName String: the name of Option to set

keyText String: the key for Map options, or null.

valueText String: the value

Returns
List<OptionSetter.FieldDef> A list of OptionSetter.FieldDefs corresponding to each object field that was modified.

Throws
ConfigurationException if Option cannot be found or valueText is wrong type

Protected methods

getUnsetMandatoryOptions

Collection<String> getUnsetMandatoryOptions ()

Returns the names of all of the Options that are marked as mandatory but remain unset.

Returns
Collection<String> A Collection of Strings containing the (unqualified) names of unset mandatory options.

Throws
ConfigurationException if a field to be checked is inaccessible