Class OptionConverter
java.lang.Object
org.apache.logging.log4j.core.util.OptionConverter
A convenience class to convert property values to specific types.
-
Method Summary
Modifier and TypeMethodDescriptionstatic String[]
concatenateArrays
(String[] l, String[] r) static String
static String
findAndSubst
(String key, Properties props) Find the value corresponding tokey
inprops
.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 String
substVars
(String val, Properties props) Perform variable substitution in stringval
from the values of keys found in the system propeties.static boolean
Ifvalue
is "true", thentrue
is returned.static long
toFileSize
(String value, long defaultValue) static int
Convert the String value to an int.static Level
-
Method Details
-
concatenateArrays
-
convertSpecialChars
-
instantiateByKey
public static Object instantiateByKey(Properties props, String key, Class<?> superClass, Object defaultValue) -
toBoolean
Ifvalue
is "true", thentrue
is returned. Ifvalue
is "false", thenfalse
is returned. Otherwise,default
is returned.Case of value is unimportant.
- Parameters:
value
- The value to convert.defaultValue
- The default value.- Returns:
- true or false, depending on the value and/or default.
-
toInt
Convert the String value to an int.- Parameters:
value
- The value as a String.defaultValue
- The default value.- Returns:
- The value as an int.
-
toLevel
-
toFileSize
- Parameters:
value
- The size of the file as a String.defaultValue
- The default value.- Returns:
- The size of the file as a long.
-
findAndSubst
Find the value corresponding tokey
inprops
. Then perform variable substitution on the found value.- Parameters:
key
- The key to locate.props
- The properties.- Returns:
- The String after substitution.
-
instantiateByClassName
public static Object instantiateByClassName(String className, Class<?> superClass, Object defaultValue) Instantiate an object given a class name. Check that theclassName
is a subclass ofsuperClass
. If that test fails or the object could not be instantiated, thendefaultValue
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- Returns:
- The created object.
-
substVars
Perform variable substitution in stringval
from the values of keys found in the system propeties.The variable substitution delimiters 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 properties 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 ifval
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 to use for substitution.- Returns:
- The String after substitution.
- Throws:
IllegalArgumentException
- ifval
is malformed.
-