IConfigurationFactory

public interface IConfigurationFactory

com.android.tradefed.config.IConfigurationFactory
Known Indirect Subclasses
ConfigurationFactory Factory for creating IConfiguration
SandboxConfigurationFactory Special Configuration factory to handle creation of configurations for Sandboxing purpose. 


Factory for creating IConfigurations

Summary

Public methods

abstract IConfiguration createConfigurationFromArgs(String[] args, List<String> unconsumedArgs, IKeyStoreClient keyStoreClient)

Create the IConfiguration from command line arguments with a key store.

abstract IConfiguration createConfigurationFromArgs(String[] args, List<String> unconsumedArgs)

Create the IConfiguration from command line arguments.

abstract IConfiguration createConfigurationFromArgs(String[] args)

A convenience method which calls createConfigurationFromArgs(String[], List) with a null second argument.

abstract IGlobalConfiguration createGlobalConfigurationFromArgs(String[] args, List<String> nonGlobalArgs)

Create a IGlobalConfiguration from command line arguments.

abstract void dumpConfig(String configName, PrintStream out)

Dumps the contents of the configuration to the given PrintStream

abstract List<String> getConfigList(String subPath)

Variation of getConfigList() where we want to reduce the listing to only a subdirectory of the configuration path (res/config/).

abstract List<String> getConfigList()

Return the list of names of all the configs found in the JARs on the classpath.

abstract List<String> getConfigList(String subPath, boolean loadFromEnv)

Variation of getConfigList(String) where can specify whether or not we also want to load the configuration from the environment.

abstract void printHelp(PrintStream out)

Prints help output for this factory.

abstract void printHelpForConfig(String[] args, boolean importantOnly, PrintStream out)

Prints help output for the IConfiguration specified in command line arguments,

If 'args' refers to a known configuration, a IConfiguration object will be created from XML, and help for that IConfiguration will be outputted.

Public methods

createConfigurationFromArgs

IConfiguration createConfigurationFromArgs (String[] args, 
                List<String> unconsumedArgs, 
                IKeyStoreClient keyStoreClient)

Create the IConfiguration from command line arguments with a key store.

Expected format is "CONFIG [options]", where CONFIG is the built-in configuration name or a file path to a configuration xml file.

Parameters
args String: the command line arguments

unconsumedArgs List: a List which will be populated with the arguments that were not consumed by the Objects associated with the specified config. If this is null, then the implementation will throw ConfigurationException if any unprocessed args remain.

keyStoreClient IKeyStoreClient: a IKeyStoreClient which is used to obtain sensitive info in the args.

Returns
IConfiguration the loaded IConfiguration. The delegate object Option fields have been populated with values in args.

Throws
ConfigurationException if configuration could not be loaded

createConfigurationFromArgs

IConfiguration createConfigurationFromArgs (String[] args, 
                List<String> unconsumedArgs)

Create the IConfiguration from command line arguments.

Expected format is "CONFIG [options]", where CONFIG is the built-in configuration name or a file path to a configuration xml file.

Parameters
args String: the command line arguments

unconsumedArgs List: a List which will be populated with the arguments that were not consumed by the Objects associated with the specified config. If this is null, then the implementation will throw ConfigurationException if any unprocessed args remain.

Returns
IConfiguration the loaded IConfiguration. The delegate object Option fields have been populated with values in args.

Throws
ConfigurationException if configuration could not be loaded

createConfigurationFromArgs

IConfiguration createConfigurationFromArgs (String[] args)

A convenience method which calls createConfigurationFromArgs(String[], List) with a null second argument. Thus, it will throw ConfigurationException if any unconsumed arguments remain.

Parameters
args String

Returns
IConfiguration

Throws
ConfigurationException

createGlobalConfigurationFromArgs

IGlobalConfiguration createGlobalConfigurationFromArgs (String[] args, 
                List<String> nonGlobalArgs)

Create a IGlobalConfiguration from command line arguments.

Expected format is "CONFIG [options]", where CONFIG is the built-in configuration name or a file path to a configuration xml file.

Parameters
args String: the command line arguments

nonGlobalArgs List: a list which will be populated with the arguments that weren't processed as global arguments

Returns
IGlobalConfiguration the loaded IGlobalConfiguration. The delegate object Option fields have been populated with values in args.

Throws
ConfigurationException if configuration could not be loaded

dumpConfig

void dumpConfig (String configName, 
                PrintStream out)

Dumps the contents of the configuration to the given PrintStream

Parameters
configName String: the configuration name

out PrintStream: the PrintStream to dump output to

getConfigList

List<String> getConfigList (String subPath)

Variation of getConfigList() where we want to reduce the listing to only a subdirectory of the configuration path (res/config/).

Parameters
subPath String: name of the sub-directories to look in for configuration. If null, will have the same behavior as getConfigList().

Returns
List<String>

getConfigList

List<String> getConfigList ()

Return the list of names of all the configs found in the JARs on the classpath. Does not attempt to load any of the configs, so it is possible to have non working config in this list.

Returns
List<String>

getConfigList

List<String> getConfigList (String subPath, 
                boolean loadFromEnv)

Variation of getConfigList(String) where can specify whether or not we also want to load the configuration from the environment.

Parameters
subPath String: name of the sub-directories to look in for configuration. If null, will have the same behavior as getConfigList().

loadFromEnv boolean: True if we should load the configuration in the environment variable.

Returns
List<String>

printHelp

void printHelp (PrintStream out)

Prints help output for this factory.

Prints a generic help info, and lists all available configurations.

Parameters
out PrintStream: the PrintStream to dump output to

printHelpForConfig

void printHelpForConfig (String[] args, 
                boolean importantOnly, 
                PrintStream out)

Prints help output for the IConfiguration specified in command line arguments,

If 'args' refers to a known configuration, a IConfiguration object will be created from XML, and help for that IConfiguration will be outputted. Note all other 'args' values will be ignored (ie the help text will describe the current values of Options as loaded from XML, and will not reflect option's values set by the command line args.

If 'args' does not reference a known IConfiguration, the generic printHelp(PrintStream) help will be displayed.

Parameters
args String: the command line arguments

importantOnly boolean: if true, print an abbreviated help listing only the important details

out PrintStream: the PrintStream to dump output to