Class ConfigurationValidator

  • Direct Known Subclasses:
    EmbeddedServletService.ConfigurationValidator, PluginRegistry.ConfigurationValidator

    public abstract class ConfigurationValidator
    extends Object
    A ConfigurationValidator can be specified in a ConfigurationDescription and (if specified) is used to validate a configuration at application startup without having to wait until the component (for which the configuration was intended) is instantiated. This can be important since components are usually instantiated on-demand. Implementations must have a public default (i.e. parameterless) constructor.
    Author:
    Patrick Schmidt
    • Constructor Detail

      • ConfigurationValidator

        public ConfigurationValidator()
    • Method Detail

      • rebuke

        protected final void rebuke​(String description)
                             throws ConfigurationException
        Constructs a ConfigurationException and throws it. This is a convenience method that only requires implementors to specify a problem description. This information (plus some other data) is then formed into a meaningful error message. This is a generic version of the rebuke-methods in case the problem isn't related to a single property.
        Parameters:
        description - the description of the problem (full sentence(s) preferred)
        Throws:
        ConfigurationException - the constructed exception
      • rebukeIllegalValue

        protected final void rebukeIllegalValue​(org.apache.commons.configuration2.Configuration configuration,
                                                String propertyName,
                                                String shortDescription)
                                         throws ConfigurationException
        Constructs a ConfigurationException and throws it. This is a convenience method that only requires implementors to specify the configuration, a property name and a very short description of the error. This information (plus some other data) is then formed into a meaningful error message.

        The short error description should be something like "value of type boolean expected" or "value must be positive".

        Parameters:
        configuration - the instance configuration provided in validate(Configuration)
        propertyName - the name of the property containing the illegal value
        shortDescription - the short error description
        Throws:
        ConfigurationException - the constructed exception
      • rebukeMissingValue

        protected final void rebukeMissingValue​(String propertyName)
                                         throws PropertyNotSetException
        Constructs a PropertyNotSetException and throws it. This is a convenience method that only requires implementors to specify the configuration and a property name. This information (plus some other data) is then formed into a meaningful error message.
        Parameters:
        propertyName - the property name of the missing value
        Throws:
        PropertyNotSetException - the constructed exception