RbChecker is a tool that checks if properties sources files are in synch with "
executable" ResourceBundle
files (properties or class) in directories
or jar files.
This can be usefull to check a distribution file or that all properties files have been
copied in the codebase instead of waiting for an exception at runtime.
For each properties file found in a root directory, Rbchecker will try to load the
corresponding ResourceBundle
. If this action fails, RbChecker generates
an error and checks the following properties file (if any).
If it succeeds, RbChecker checks if the locale of the found ResourceBundle
if the same than the one of the properties source file. If the locales are not the
same, RbChecker generates an error and checks the following properties file (if any).
Otherwise, RbChecker checks all keys: if the key is missing in the
ResourceBundle
, RbChecker generates an error and checks the following key.
Otherwise, it checks that values in the properties file and in the ResourceBundle
are the same.
When all keys of the properties file have been inspected, RbChecker checks if all keys
of the ResourceBundle
have been inspected. For all non inspected keys,
RbChecker generates an error.
At any time, if an exception occurs during the check, RbChecker will generate an error and will pass to the next step of the check.
There are 2 ways to manage the check:
The RbChecker uses a logging system to report errors and exceptions. There are 2 types of loggers:
RbUtils provides a xsl file to let you transform a RbChecker xml report file into a html file. It can be found in the contrib/ directory.
Here are examples of generated output:
The file checks explained in the description section can be modified by extending the
default behaviour.
See the extension documention page for more
information.