public class Config extends DataTypeMap
If running in a servlets environment, you must use the "Init" servlet and use <load-on-startup> to ensure it initializes before any calls are made to this class.
Then the Config class can be used to read settings as follows:
If running outside of a servlet environment, the following call should be made from the startup thread of the application before any Config APIs are called:
Config config = Config.getGlobal();
String propertyValue = (String)config.getProperty("propertyName");
Config.initGlobalConfig();
Modifier and Type | Method and Description |
---|---|
static java.lang.Object | getProperty(java.lang.String propertyName) Returns a property extracted from the SmartClient global configuration file, server.properties. |
java.lang.Object | put(java.lang.Object key, java.lang.Object value) Programmatically inject a value into the global config. |
void | putAll(java.util.Map map) Programmatically inject a set of values in a Map into the global config. |
public static java.lang.Object getProperty(java.lang.String propertyName)
propertyName
- The name of the property to retrievepublic java.lang.Object put(java.lang.Object key, java.lang.Object value)
.properties
files, but before anything else in the system. The simplest way to achieve this is to have your programmatic changes to config invoked from a servlet which is configured in web.xml
with a load-on-startup
parameter of 2, like this:
<servlet> <servlet-name>MyConfigChanges</servlet-name> <servlet-class>com.company.servlet.MyConfigChanges</servlet-class> <load-on-startup>2</load-on-startup> </servlet>The setting of "2" is important, because your code needs to run after the SmartClient
If running outside of a servlet environment, you should invoke your config override code from the startup thread of the application, after the call to Config.initGlobalConfig()
described in the class overview docs, but before any Config APIs are called.
put
in class DataTypeMap
key
- The key of the property to setvalue
- The new value for the propertypublic void putAll(java.util.Map map)
Config.put(Object, Object)
for important information about timing issues associated with this API.putAll
in class DataTypeMap
map
- A Map of property values to apply to the config