Owner's Manual

58 Installation
# Application Overrides
#============================================
# set event template cache timeout to 1 minute
redcell.assurance.batch.processing.event.template.cache.expiration=60000
CAUTION:
If any of the dependency directory names (for example,
owareapps/redcell
) do not exist, then the
application does not load override file.
Consult the comments in the properties files you are overriding for further information about
specific properties.
Properties Loading
First the application loads all property files from the application (
/oware/lib
). Then it loads all
property files from
owareapps\*\lib
(on the mediation service this is from
owareapps\*\med\lib
). A special property
product.dependencies
that lets you control
the order that files are loaded. For example setting
product.dependencies=myApp
makes
owareapps
properties (other than myApp) load after myApp. The product name for this property
is the name of the directory under
owareapps
. You can also specify multiple products with a
comma (,) delimited list.
Prepend and Append Keywords
One reason to have dependent property loading is to modify a property used by another product.
You may need to ensure that your value comes after the other products, or vice versa. When Java
reads properties, its default behavior is to override the old value with the new when encountering
an identically-named property. This would compel product maintainers to change a product
whenever property file changes occurred in the product on which they depend. Such maintenance
would increase geometrically, especially with multiple dependencies.
This application supports property appending or prepending through keywords. If you preface the
property to be modified with append. or prepend., you can put your own value after or before the
original property’s value(s). You must be aware of the original property’s delimiters and either add
one at the beginning of your value if appending, or add one at the end of your value if prepending.
For example: Given a pre-existing property:
oware.foo=original
append.oware.foo=,newappend
This produces
oware.foo=original,newappend
prepend.oware.foo=newprepend,
This produces
oware.foo=newprepend,original
If the original property is null, the first character (if appending) or last character (if prepending) is
stripped (to eliminate the separator) and the property created with the resulting value. Currently,
properties permit only one instance of a keyword within a given property file.