Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
   * Copyright (c) 2013, Francis Galiegue <>
   * This program is free software: you can redistribute it and/or modify
   * it under the terms of the Lesser GNU General Public License as
   * published by the Free Software Foundation, either version 3 of the
   * License, or (at your option) any later version.
   * This program is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * Lesser GNU General Public License for more details.
  * You should have received a copy of the GNU General Public License
  * along with this program.  If not, see <>.
 import java.util.Map;
Keyword builder processor

This takes a as an input and outputs a The main processor, com.github.fge.jsonschema.processors.validation.ValidationProcessor, then uses this validator list to perform actual instance validation.

 public final class ValidatorBuilder
     implements Processor<SchemaDigestValidatorList>
     private static final String ERRMSG = "failed to build keyword validator";
     private final Map<StringConstructor<? extends KeywordValidator>>
     public ValidatorBuilder(final Library library)
          = library.getValidators().entries();
     public ValidatorBuilder(
         final Dictionary<Constructor<? extends KeywordValidator>> dict)
          = dict.entries();

Process the input

report the report to use while processing
input the input for this processor
the output
com.github.fge.jsonschema.exceptions.ProcessingException processing failed
     public ValidatorList process(final ProcessingReport report,
         final SchemaDigest input)
         throws ProcessingException
         final SortedMap<StringKeywordValidatormap = Maps.newTreeMap();
         String keyword;
         JsonNode digest;
         KeywordValidator validator;
         Constructor<? extends KeywordValidatorconstructor;
         for (final Map.Entry<StringJsonNodeentry:
             input.getDigests().entrySet()) {
             keyword = entry.getKey();
             digest = entry.getValue();
             constructor = .get(keyword);
             validator = buildKeyword(constructordigest);
         return new ValidatorList(input.getContext(), map.values());
     private static KeywordValidator buildKeyword(
         final Constructor<? extends KeywordValidatorconstructor,
         final JsonNode node)
         throws ProcessingException
        try {
            return constructor.newInstance(node);
        } catch (InstantiationException e) {
            throw new ProcessingException(e);
        } catch (IllegalAccessException e) {
            throw new ProcessingException(e);
        } catch (InvocationTargetException e) {
            throw new ProcessingException(e);
    public String toString()
        return "validator builder";
New to GrepCode? Check out our FAQ X