Global Framework Settings

There are some framework behaviour which is possible to override.
This is static configurations that the framework uses.
There is a set method for all the describe configurations in the class PropertyFrameworkGlobals.

IMPORTANT:When setting global paramenters, remember to reload your collection if caching is ON.

This is possible to global properties stored in a external file, some where in classpath have property file "jhpropertiestypes.global.properties".
Using the property name below in the file.
The global property file is loaded (if found in classpath) in the static initializer in PropertyFrameworkGlobals class.

This is typical setup in your own implementation of "PropertyCollection.preValidation()", where you override the method.
Name PropertyName Type Description Default value
autoEncryptPasswords global.auto.encrypt.passwords Boolean Overrides general behaviour of PasswordPropertyType, no matter what the autoEncrypt is set to in the PropertyType.
If true will execute normal behaviour set in PasswordPropertyType, set to false the framework will NEVER autoEncrypts a password, even if set so.
autoRegisterPropertyCollections global.auto.register.property.collections Boolean Overrides general behaviour to auto register all PropertyCollections on constructor time in PropertyCollectionRegistry.
Sets whether PropertyCollections automatically shall be registered in "PropertyCollectionRegistry".
If setting the value to false, it will clear the registry.
defaultProxy global.default.proxy java.net.Proxy Some PropertyTypes requires the ability to test a connection, sometimes a Proxy is needed.
This is the default proxy used if no other is specified on the individual PropertyType instance.
disardValueQuotes global.disard.value.quotes Boolean In some cases we have encountered the string value for a property is surrounded with "value" or 'value'.
If this setting is set to TRUE, then the Quotation Mark or Apostrophe will be remove on load, before parsing it on to validation.
doublePrecision global.double.precision Double When comparing two doubles, this value is total amount of difference two doubles must have absolute. Before they are validated as equals.
This value must be below "0.01" if setting a new value.
Currently only "dk.heick.properties.types.custom.Point2D", "dk.heick.properties.types.custom.Point3D", "dk.heick.properties.types.custom.LatLng" using this parameter.
logDebugFrameworkPerformance global.log.debug.framework.performance Boolean If true then performance logging around these methods:
  • PropertyType around "toType"
  • PropertyIO around "getProperties"
  • PropertyCollection around "initialize"
logFileValidations global.log.file.validations Boolean Shall the framework log a message everytime its use a FileValidator.
This can generate quite some log messages, so if not needed, turning it off can be usefull.
logWarningIfUsingDefaultValues global.log.warning.if.using.default.values Boolean Do the framework logs a warning if the a property cant be loaded and the default value is used instead. TRUE
replaceInlinedProperties global.replace.inlined.properties Boolean Do the framework replace inline values. From System.properties and System.env. Mark by the "${name}" pattern.
A value could be "${java.io.tmpdir}/myappdir".
useDefaultValues global.use.default.values Boolean Do the framework use default value set for the PropertyType is a valid value isnt found for a Property.
If no default value shall be used, null is returned.
This can be useful if set to false, helps to ensure no miss configurations.
validateIPathPropertyTypes global.validate.ipath.property.types Boolean Overrides general behaviour of PropertyTypes mark with the interface "IPathPropertyType".
Set to true to validate PropertyTypes mark with "IPathPropertyType", set to false to a PropertyCollection will never validate then.
Note:This can be usefull in test modes, when validating different property sets for different environment properly not pointing the same file structure.
propertyDescriptionLocalizer global.property.description.localizer Class<? extends Localizer> An implementation of the Localizer, from where Property will retrieve the description. Default is null.
Set this in the "PropertyCollection.preValidation()" method override.
defaultPropertyIOCachingTime global.default.property.io.caching.time Long The amount of milliseconds between the typed value cache is flushed in all instances of PropertyIO,
If less than or equal to zero no automatic cache flush is performed and must be done manually with reload.
See F.A.Q. on how to set it manually.
Name PropertyName Type Description Default value