code: private void processRule(final Rule<RI, RO> rule, final RI data) {
          // Get result handlers matching the rule
          final List<ResultHandler<RO>> mappedResultHandlers = rulesToResultHandlers.get(rule);
          if ((mappedResultHandlers == null) || mappedResultHandlers.isEmpty()) {
              LOGGER.warn("No matching result handler in mappable validator for rule: " + rule);
          } else {
              // Check rule
              final RO result = rule.validate(data);
  
              // Process result with all matching result handlers
              for (final ResultHandler<RO> resultHandler : mappedResultHandlers) {
                  processResultHandler(resultHandler, result);
              }
          }
      }
docs: Processes the specified rule by finding all the mapped results handlers, checking the rule and processing the
  rule
  result using all found result handlers.
  
  @param rule Rule to be processed.
  @param data Data to be checked against the rule.