This is the interface into the rule. This method should throw an exception
containing a reason message if the rule fails the check. The plugin will
then decide based on the fail flag if it should stop or just log the
message as a warning.
helper - The helper provides access to the log, MavenSession and has
helpers to get common components. It is also able to lookup components
by class name.
This method tells the enforcer if the rule results may be cached. If the result is true,
the results will be remembered for future executions in the same build (ie children). Subsequent
iterations of the rule will be queried to see if they are also cacheable. This will allow the rule to be
uncached further down the tree if needed.
If the rule is cacheable and the same id is found in the cache, the stored results are passed to this method to
allow double checking of the results. Most of the time this can be done by generating unique ids, but sometimes
the results of objects returned by the helper need to be queried. You may for example, store certain objects in
your rule and then query them later.
cachedRule - the last cached instance of the rule. This is to be used by the rule to
potentially determine if the results are still valid (ie if the configuration has been overridden)
true if the stored results are valid for the same id.