public class Config
extends java.util.Properties
| Modifier and Type | Class and Description |
|---|---|
static interface |
Config.CLIOption
An interface that makes it convenient to use commons-CLI style option
while defining all fields as an enum at one place.
|
static interface |
Config.ConfigurableEnum |
static interface |
Config.DefaultValueEnum |
static interface |
Config.Disableable
Used to disallow some parameters from being configured during production
runs but allow them to be configured for testing or instrumentation
purposes.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
containsKey(java.lang.String key) |
static Config |
disableCommandLine(java.lang.Class<?> type)
Disable command-line input for type.
|
java.lang.Object |
get(java.lang.Enum<?> field) |
java.lang.Object |
get(java.lang.Object key) |
boolean |
getBoolean(java.lang.Enum<?> field) |
static Config |
getConfig(java.lang.Class<?> type) |
static java.lang.Object |
getGlobal(java.lang.Enum<?> field) |
static boolean |
getGlobalBoolean(java.lang.Enum<?> field) |
static double |
getGlobalDouble(java.lang.Enum<?> field) |
static int |
getGlobalInt(java.lang.Enum<?> field) |
static long |
getGlobalLong(java.lang.Enum<?> field) |
static short |
getGlobalShort(java.lang.Enum<?> field) |
static java.lang.String |
getGlobalString(java.lang.Enum<?> field) |
int |
getInt(java.lang.Enum<?> field) |
static java.util.logging.Logger |
getLogger() |
long |
getLong(java.lang.Enum<?> field) |
static java.util.Properties |
getProperties(java.lang.Class<?> type,
java.lang.String systemPropertyKey,
java.lang.String defaultConfigFile) |
java.lang.String |
getProperty(java.lang.String key) |
java.lang.String |
getProperty(java.lang.String key,
java.lang.String defaultValue) |
short |
getShort(java.lang.Enum<?> field) |
java.lang.String |
getString(java.lang.Enum<?> field) |
static void |
main(java.lang.String[] args)
Runtime usage of Config through explicit object instance creation.
|
java.lang.Object |
put(java.lang.Object key,
java.lang.Object value)
The methods
put(Object, Object), getProperty(String),
and getProperty(String, String) below make this Config
case-insensitive. |
static Config |
register(java.lang.Class<?> type,
java.lang.String systemPropertyKey,
java.lang.String defaultConfigFile)
Will first look for the file name specified in systemProperty and then
try the configFile.
|
static java.util.HashMap<?,?> |
register(java.lang.String[] args)
For registering command-line args.
|
static void |
setCaseSensitive(boolean b)
Makes Config keys case-sensitive if
b is true. |
Config |
setSystemProperties() |
list, list, load, load, loadFromXML, propertyNames, save, setProperty, store, store, storeToXML, storeToXML, stringPropertyNamesclear, clone, compute, computeIfAbsent, computeIfPresent, contains, containsKey, containsValue, elements, entrySet, equals, forEach, getOrDefault, hashCode, isEmpty, keys, keySet, merge, putAll, putIfAbsent, rehash, remove, remove, replace, replace, replaceAll, size, toString, valuespublic static Config register(java.lang.Class<?> type, java.lang.String systemPropertyKey, java.lang.String defaultConfigFile) throws java.io.IOException
type - defaultConfigFile - systemPropertyKey - java.io.IOExceptionpublic static java.util.HashMap<?,?> register(java.lang.String[] args)
args - public static Config getConfig(java.lang.Class<?> type)
type - public static java.util.Properties getProperties(java.lang.Class<?> type,
java.lang.String systemPropertyKey,
java.lang.String defaultConfigFile)
throws java.io.IOException
type - systemPropertyKey - defaultConfigFile - java.io.IOExceptionpublic Config setSystemProperties()
thispublic static java.lang.Object getGlobal(java.lang.Enum<?> field)
field - public static boolean getGlobalBoolean(java.lang.Enum<?> field)
field - public static int getGlobalInt(java.lang.Enum<?> field)
field - public static long getGlobalLong(java.lang.Enum<?> field)
field - public static double getGlobalDouble(java.lang.Enum<?> field)
field - public static short getGlobalShort(java.lang.Enum<?> field)
field - public static java.lang.String getGlobalString(java.lang.Enum<?> field)
field - public java.lang.Object get(java.lang.Enum<?> field)
field - field.public boolean getBoolean(java.lang.Enum<?> field)
field - public int getInt(java.lang.Enum<?> field)
field - public long getLong(java.lang.Enum<?> field)
field - public short getShort(java.lang.Enum<?> field)
field - public java.lang.String getString(java.lang.Enum<?> field)
field - public static Config disableCommandLine(java.lang.Class<?> type)
type - public static void setCaseSensitive(boolean b)
b is true.b - public java.lang.Object put(java.lang.Object key,
java.lang.Object value)
put(Object, Object), getProperty(String),
and getProperty(String, String) below make this Config
case-insensitive.put in interface java.util.Map<java.lang.Object,java.lang.Object>put in class java.util.Hashtable<java.lang.Object,java.lang.Object>public java.lang.String getProperty(java.lang.String key)
getProperty in class java.util.Propertiespublic java.lang.Object get(java.lang.Object key)
get in interface java.util.Map<java.lang.Object,java.lang.Object>get in class java.util.Hashtable<java.lang.Object,java.lang.Object>public java.lang.String getProperty(java.lang.String key,
java.lang.String defaultValue)
getProperty in class java.util.Propertiespublic boolean containsKey(java.lang.String key)
key - public static java.util.logging.Logger getLogger()
public static void main(java.lang.String[] args)
throws java.io.IOException
args - java.io.IOException