Class DefaultRulesBinder

  • All Implemented Interfaces:
    RulesBinder

    final class DefaultRulesBinder
    extends java.lang.Object
    implements RulesBinder
    The default Digester EDSL implementation.
    Since:
    3.0
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addError​(java.lang.String messagePattern, java.lang.Object... arguments)
      Records an error message which will be presented to the user at a later time.
      void addError​(java.lang.Throwable t)
      Records an exception, the full details of which will be logged, and the message of which will be presented to the user at a later time.
      private void addError​(ErrorMessage errorMessage)
      Records an error, the full details of which will be logged, and the message of which will be presented to the user at a later time.
      (package private) int errorsSize()  
      LinkedRuleBuilder forPattern​(java.lang.String pattern)
      Allows to associate the given pattern to one or more Digester rules.
      java.lang.ClassLoader getContextClassLoader()
      Returns the context ClassLoader.
      (package private) java.lang.Iterable<ErrorMessage> getErrors()  
      (package private) RuleSet getFromBinderRuleSet()  
      (package private) boolean hasError()  
      (package private) void initialize​(java.lang.ClassLoader classLoader)  
      void install​(RulesModule rulesModule)
      Allows sub-modules inclusion while binding rules.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • errors

        private final java.util.List<ErrorMessage> errors
        Errors that can occur during binding time or rules creation.
      • classLoader

        private java.lang.ClassLoader classLoader
    • Constructor Detail

      • DefaultRulesBinder

        DefaultRulesBinder()
    • Method Detail

      • initialize

        void initialize​(java.lang.ClassLoader classLoader)
        Parameters:
        classLoader -
      • getContextClassLoader

        public java.lang.ClassLoader getContextClassLoader()
        Returns the context ClassLoader.
        Specified by:
        getContextClassLoader in interface RulesBinder
        Returns:
        The context ClassLoader
      • addError

        public void addError​(java.lang.String messagePattern,
                             java.lang.Object... arguments)
        Records an error message which will be presented to the user at a later time. Unlike throwing an exception, this enable us to continue configuring the Digester and discover more errors. Uses String.format(String, Object[]) to insert the arguments into the message.
        Specified by:
        addError in interface RulesBinder
        Parameters:
        messagePattern - The message string pattern
        arguments - Arguments referenced by the format specifiers in the format string
      • addError

        public void addError​(java.lang.Throwable t)
        Records an exception, the full details of which will be logged, and the message of which will be presented to the user at a later time. If your Module calls something that you worry may fail, you should catch the exception and pass it into this.
        Specified by:
        addError in interface RulesBinder
        Parameters:
        t - The exception has to be recorded.
      • addError

        private void addError​(ErrorMessage errorMessage)
        Records an error, the full details of which will be logged, and the message of which will be presented to the user at a later time.
        Parameters:
        errorMessage - The error to record.
      • install

        public void install​(RulesModule rulesModule)
        Allows sub-modules inclusion while binding rules.
        Specified by:
        install in interface RulesBinder
        Parameters:
        rulesModule - the sub-module has to be included.
      • forPattern

        public LinkedRuleBuilder forPattern​(java.lang.String pattern)
        Allows to associate the given pattern to one or more Digester rules.
        Specified by:
        forPattern in interface RulesBinder
        Parameters:
        pattern - The pattern that this rule should match
        Returns:
        The Digester rules builder
      • hasError

        boolean hasError()
        Returns:
      • errorsSize

        int errorsSize()
        Returns:
      • getErrors

        java.lang.Iterable<ErrorMessage> getErrors()
        Returns:
      • getFromBinderRuleSet

        RuleSet getFromBinderRuleSet()
        Returns: