Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | Class Members | Related Pages

OptionConverter Class Reference

List of all members.

Static Public Member Functions

bool toBoolean (const String &value, bool dEfault)
String findAndSubst (const String &key, Properties &props)
String substVars (const String &val, Properties &props)
String getSystemProperty (const String &key, const String &def)
ObjectPtr instantiateByClassName (const String &className, const Class &superClass, const ObjectPtr &defaultValue)
void selectAndConfigure (const String &configFileName, const String &clazz, spi::LoggerRepositoryPtr &hierarchy)

Detailed Description

A convenience class to convert property values to specific types.


Member Function Documentation

String findAndSubst const String &  key,
Properties &  props
[static]
 

Find the value corresponding to key in props. Then perform variable substitution on the found value.

String getSystemProperty const String &  key,
const String &  def
[static]
 

Parameters:
key The key to search for.
def The default value to return.
Returns:
the string value of the system property, or the default value if there is no property with that key.

ObjectPtr instantiateByClassName const String &  className,
const Class &  superClass,
const ObjectPtr defaultValue
[static]
 

Instantiate an object given a class name. Check that the className is a subclass of superClass. If that test fails or the object could not be instantiated, then defaultValue is returned.

Parameters:
className The fully qualified class name of the object to instantiate.
superClass The class to which the new object should belong.
defaultValue The object to return in case of non-fulfillment

void selectAndConfigure const String &  configFileName,
const String &  clazz,
spi::LoggerRepositoryPtr hierarchy
[static]
 

Configure log4cxx given a configFileName.

The configFileName must point to a file which will be interpreted by a new instance of a log4cxx configurator.

All configurations steps are taken on the hierarchy passed as a parameter.

Parameters:
configFileName The location of the configuration file.
clazz The classname, of the log4cxx configurator which will parse the file configFileName. This must be a subclass of Configurator, or null. If this value is null then a default configurator of PropertyConfigurator is used, unless the filename pointed to by configFileName ends in '.xml', in which case DOMConfigurator is used.
hierarchy The Hierarchy to act on.

String substVars const String &  val,
Properties &  props
[static]
 

Perform variable substitution in string val from the values of keys found in the system propeties.

The variable substitution delimeters are ${ and }.

For example, if the System properties contains "key=value", then the call

String s = OptionConverter.substituteVars("Value of key is ${key}.");

will set the variable s to "Value of key is value.".

If no value could be found for the specified key, then the props parameter is searched, if the value could not be found there, then substitution defaults to the empty string.

For example, if system propeties contains no value for the key "inexistentKey", then the call

String s = OptionConverter.subsVars("Value of inexistentKey is [${inexistentKey}]");
will set s to "Value of inexistentKey is []"

An IllegalArgumentException is thrown if val contains a start delimeter "${" which is not balanced by a stop delimeter "}".

Parameters:
val The string on which variable substitution is performed.
props The properties from which variable substitution is performed.
Exceptions:
IllegalArgumentException if val is malformed.

bool toBoolean const String &  value,
bool  dEfault
[static]
 

If value is "true", then true is returned. If value is "false", then true is returned. Otherwise, default is returned.

Case of value is unimportant.


The documentation for this class was generated from the following files:
Generated on Sat Jul 22 10:25:23 2006 for log4cxx by  doxygen 1.3.9.1