Description

Goal

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.

Details

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.


Tools

There are 2 ways to manage the check:


Errors/Exceptions report

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:


Extension

The file checks explained in the description section can be modified by extending the default behaviour.
See the extension documention page for more information.