lhupfeldt/multiconf — pull request #11 by henriklynggaard (2012-05-20 10:02:32+00:00)
Title: Provide support for post finalization validation. (fixes issue #10)

Sometimes a value cannot be fully validated since its calculation depends on values
from parent ConfigItems which are not accessible before the parent is finalized.

This change adds support for post finilization by having the ConfigRoot call _validate()
after finilization. After calling validate() on itself, it will iterate over children and recursively
call _validate(). The result is that all ConfigItems will have their validate() method called in a parent
first iteration.

validate() is defined as a empty method for individual ConfigItem classes to override, and it is
expected that they raise ConfigException in case of validation errors.