Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
   * Copyright (c) 2014, Francis Galiegue (
   * This software is dual-licensed under:
   * - the Lesser General Public License (LGPL) version 3.0 or, at your option, any
   *   later version;
   * - the Apache Software License (ASL) version 2.0.
  * The text of this file and of both licenses is available at the root of this
  * project or, if you have the jar distribution, in directory META-INF/, under
  * the names LGPL-3.0.txt and ASL-2.0.txt respectively.
  * Direct link to the sources:
  * - LGPL 3.0:
  * - ASL 2.0:
 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.core.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