|Constructor and Description|
Constructor when used directly as a plugin.
|Modifier and Type||Method and Description|
Looks up a String key to a String value possibly using the current LogEvent.
Looks up a String key to a String value using the map.
public static void setMainArguments(String... args)
public static main(String)method calls this method to make its main arguments available for lookup with the prefix
The map provides two kinds of access: First by index, starting at
"1" and so on. For
example, the command line
--file path/file.txt -x 2 can be accessed from a configuration file with:
Second using the argument at position n as the key to access the value at n+1.
Note: Many applications use leading dashes to identify command arguments. Specifying
would result in the lookup failing because it would look for a variable named "main" with a default
value of "-file". To avoid this the ":" separating the Lookup name from the key must be followed by
a backslash as an escape character.
args- An application's
public static main(String)arguments.
The internal implementation may use any mechanism to return the value. The simplest implementation is to use a Map. However, virtually any implementation is possible.
For example, it would be possible to implement a lookup that used the key as a primary key, and looked up the value on demand from the database Or, a numeric based implementation could be created that treats the key as an integer, increments the value and return the result as a string - converting 1 to 2, 15 to 16 etc.
This method always returns a String, regardless of the underlying data, by converting it as necessary. For example:
Map<String, Object> map = new HashMap<String, Object>(); map.put("number", new Integer(2)); assertEquals("2", StrLookup.mapLookup(map).lookup("number"));
If the map is null, then null is returned. The map result object is converted to a string using toString().
Copyright © 1999-2020 The Apache Software Foundation. All Rights Reserved.
Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, the Apache Logging project logo, and the Apache Log4j logo are trademarks of The Apache Software Foundation.