Skip to content

Package io.github.qishr.cascara.schema.util

Interface SchemaResolver

java.lang.Object
        io.github.qishr.cascara.schema.util.SchemaResolver

All Implemented Interfaces:
    ServiceProvider

All Known Implementing Classes:
    SchemaResolverImpl


public interface SchemaResolver

Method Summary

Modifier and Type Method Description
public abstract Schema getSchema(URI uri) Returns the Schema indicated by the given URI.
public abstract SchemaNode resolve(String ref, SchemaNode relativeTo)
public abstract Schema getSchemaForClass(Class<?> clazz)
public abstract Schema getSchemaForClass(Class<?> clazz, List<TypeAnalyzer> typeAnalyzers)
public abstract SchemaNode resolve(String ref, SchemaNode relativeTo, DynamicScope scope)
public abstract DynamicScope getCurrentScope()
public abstract void registerSchema(URI uri, Schema compiled)
public abstract void registerSchemaNode(URI uri, SchemaNode node)
public abstract Map<URI, Schema> getCachedSchemas()

Method Details

getSchema

public abstract Schema getSchema(URI uri)

Returns the Schema indicated by the given URI.If the Schema is cached, it will be retrieved from the cache, otherwise it will be compiled and returned.

Throws:

SchemaException


resolve

public abstract SchemaNode resolve(String ref, SchemaNode relativeTo)

Throws:

SchemaException


getSchemaForClass

public abstract Schema getSchemaForClass(Class<?> clazz)


getSchemaForClass

public abstract Schema getSchemaForClass(Class<?> clazz, List<TypeAnalyzer> typeAnalyzers)


resolve

public abstract SchemaNode resolve(String ref, SchemaNode relativeTo, DynamicScope scope)

Throws:

SchemaException


getCurrentScope

public abstract DynamicScope getCurrentScope()


registerSchema

public abstract void registerSchema(URI uri, Schema compiled)


registerSchemaNode

public abstract void registerSchemaNode(URI uri, SchemaNode node)


getCachedSchemas

public abstract Map<URI, Schema> getCachedSchemas()