Save This Page
Home » apache-log4j-1.2.15 » org.apache » log4j » helpers » [javadoc | source]
org.apache.log4j.helpers
public class: OptionConverter [javadoc | source]
java.lang.Object
   org.apache.log4j.helpers.OptionConverter
A convenience class to convert property values to specific types.
Field Summary
static  String DELIM_START     
static  char DELIM_STOP     
static  int DELIM_START_LEN     
static  int DELIM_STOP_LEN     
Method from org.apache.log4j.helpers.OptionConverter Summary:
concatanateArrays,   convertSpecialChars,   findAndSubst,   getSystemProperty,   instantiateByClassName,   instantiateByKey,   selectAndConfigure,   substVars,   toBoolean,   toFileSize,   toInt,   toLevel
Methods from java.lang.Object:
equals,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from org.apache.log4j.helpers.OptionConverter Detail:
 public static String[] concatanateArrays(String[] l,
    String[] r) 
 public static String convertSpecialChars(String s) 
 public static String findAndSubst(String key,
    Properties props) 
    Find the value corresponding to key in props. Then perform variable substitution on the found value.
 public static String getSystemProperty(String key,
    String def) 
 public static Object instantiateByClassName(String className,
    Class superClass,
    Object defaultValue) 
    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.
 public static Object instantiateByKey(Properties props,
    String key,
    Class superClass,
    Object defaultValue) 
 public static  void selectAndConfigure(URL url,
    String clazz,
    LoggerRepository hierarchy) 
    Configure log4j given a URL.

    The url must point to a file or resource which will be interpreted by a new instance of a log4j configurator.

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

 public static String substVars(String val,
    Properties props) throws IllegalArgumentException 
    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 java.lang.IllegalArgumentException is thrown if val contains a start delimeter "${" which is not balanced by a stop delimeter "}".

    Author Avy Sharell

 public static boolean toBoolean(String value,
    boolean dEfault) 
    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.

 public static long toFileSize(String value,
    long dEfault) 
 public static int toInt(String value,
    int dEfault) 
 public static Level toLevel(String value,
    Level defaultValue) 
    Converts a standard or custom priority level to a Level object.

    If value is of form "level#classname", then the specified class' toLevel method is called to process the specified level string; if no '#' character is present, then the default org.apache.log4j.Level class is used to process the level value.

    As a special case, if the value parameter is equal to the string "NULL", then the value null will be returned.

    If any error occurs while converting the value to a level, the defaultValue parameter, which may be null, is returned.

    Case of value is insignificant for the level level, but is significant for the class name part, if present.