public class OptionConverter extends Object
Modifier and Type | Method and Description |
---|---|
static String[] |
concatanateArrays(String[] l,
String[] r) |
static String |
convertSpecialChars(String s) |
static String |
findAndSubst(String key,
Properties props)
Find the value corresponding to
key in props . |
static String |
getSystemProperty(String key,
String def)
Very similar to
System.getProperty except that the SecurityException is hidden. |
static Object |
instantiateByClassName(String className,
Class superClass,
Object defaultValue)
Instantiate an object given a class name.
|
static Object |
instantiateByKey(Properties props,
String key,
Class superClass,
Object defaultValue) |
static void |
selectAndConfigure(InputStream inputStream,
String clazz,
LoggerRepository hierarchy)
Configure log4j given an
InputStream . |
static void |
selectAndConfigure(URL url,
String clazz,
LoggerRepository hierarchy)
Configure log4j given a URL.
|
static String |
substVars(String val,
Properties props)
Perform variable substitution in string
val from the values of keys found in the system propeties. |
static boolean |
toBoolean(String value,
boolean dEfault)
If
value is "true", then true is returned. |
static long |
toFileSize(String value,
long dEfault) |
static int |
toInt(String value,
int dEfault) |
static Level |
toLevel(String value,
Level defaultValue)
Converts a standard or custom priority level to a Level object.
|
public static String getSystemProperty(String key, String def)
System.getProperty
except that the SecurityException
is hidden.key
- The key to search for.def
- The default value to return.public static Object instantiateByKey(Properties props, String key, Class superClass, Object defaultValue)
public static boolean toBoolean(String value, boolean dEfault)
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 int toInt(String value, int dEfault)
public static Level toLevel(String value, Level defaultValue)
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 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.
public static long toFileSize(String value, long dEfault)
public static String findAndSubst(String key, Properties props)
key
in props
. Then perform variable substitution on the
found value.public static Object instantiateByClassName(String className, Class superClass, Object defaultValue)
className
is a subclass of superClass
. If that test
fails or the object could not be instantiated, then defaultValue
is returned.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-fulfillmentpublic static String substVars(String val, Properties props) throws IllegalArgumentException
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 "}".
Author Avy Sharell
val
- The string on which variable substitution is performed.IllegalArgumentException
- if val
is malformed.public static void selectAndConfigure(InputStream inputStream, String clazz, LoggerRepository hierarchy)
InputStream
.
The InputStream will be interpreted by a new instance of a log4j configurator.
All configurations steps are taken on the hierarchy
passed as a parameter.
inputStream
- The configuration input stream.clazz
- The class name, of the log4j configurator which will parse the inputStream
. This
must be a subclass of Configurator
, or null. If this value is null then a default
configurator of PropertyConfigurator
is used.hierarchy
- The Hierarchy
to act on.public static void selectAndConfigure(URL url, String clazz, LoggerRepository hierarchy)
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.
url
- The location of the configuration file or resource.clazz
- The classname, of the log4j configurator which will parse the file or resource at
url
. 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 url
ends in '.xml', in which case
DOMConfigurator
is used.hierarchy
- The Hierarchy
to act on.Copyright © 1999–2023 QOS.CH Sarl (Switzerland). All rights reserved.