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 <>.
package com.github.fge.jsonschema.processors.validation;
Equivalence for schema contexts

This is used by ValidationChain and ValidationProcessor to cache computation results. Two schema contexts are considered equivalent if:

  • schema trees are considered equivalent,
  • and the type of the instance is the same.

public final class SchemaContextEquivalence
    extends Equivalence<SchemaContext>
    private static final Equivalence<SchemaContextINSTANCE
        = new SchemaContextEquivalence();
    private static final Equivalence<SchemaTreeTREE_EQUIVALENCE
        = SchemaTreeEquivalence.getInstance();
    public static Equivalence<SchemaContextgetInstance()
        return ;
    protected boolean doEquivalent(final SchemaContext afinal SchemaContext b)
        return .equivalent(a.getSchema(), b.getSchema())
            && a.getInstanceType() == b.getInstanceType();
    protected int doHash(final SchemaContext t)
        return 31 * .hash(t.getSchema())
            + t.getInstanceType().hashCode();
New to GrepCode? Check out our FAQ X