JCS will look for a system property for any name inside the delimiters ${}.
Also, JCS will check to see if any property key in the cache.ccf is defined in
the system properties. If so, the system value will be used.
----- Original Message ----
From: Jan Swaelens <[email protected]>
To: JCS Users List <[email protected]>
Sent: Thursday, June 11, 2009 8:16:03 AM
Subject: Re: variables in cache.ccf?
I don't think that it's possible out of the box but it's easily
implemented by loading the properties and performing the substitution
yourself.
The 'ConfigUtil.substituteProperties' call is a custom utility and must be
replaced by somthing available in your environment.
// Get unconfigured instance
CompositeCacheManager ccm =
CompositeCacheManager.getUnconfiguredInstance();
// Load properties from the ccf file
Properties props = new Properties();
is =
ClassLoaderUtil.getInstance().getClassLoader().getResourceAsStream(JCS_PROPERTIES_FILE);
if (is != null) {
// Load
props.load(is);
// Replace custom/env variables
Iterator entries = props.entrySet().iterator();
while (entries.hasNext()) {
Entry e = (Entry) entries.next();
e.setValue(ConfigUtil.substituteProperties((String)
e.getValue(), true));
}
// Configure cache system with replaced props
ccm.configure(props);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]