Class JsonSchemaGenerator

  • All Implemented Interfaces:
    ISchemaGenerator

    public class JsonSchemaGenerator
    extends AbstractSchemaGenerator<com.fasterxml.jackson.core.JsonGenerator,​gov.nist.secauto.metaschema.schemagen.json.datatype.JsonDatatypeManager,​gov.nist.secauto.metaschema.schemagen.json.impl.JsonGenerationState>
    • Method Detail

      • getJsonFactory

        @NonNull
        public com.fasterxml.jackson.core.JsonFactory getJsonFactory()
      • newWriter

        protected com.fasterxml.jackson.core.JsonGenerator newWriter​(Writer out)
        Description copied from class: AbstractSchemaGenerator
        Create a new writer to use to write the schema.
        Specified by:
        newWriter in class AbstractSchemaGenerator<com.fasterxml.jackson.core.JsonGenerator,​gov.nist.secauto.metaschema.schemagen.json.datatype.JsonDatatypeManager,​gov.nist.secauto.metaschema.schemagen.json.impl.JsonGenerationState>
        Parameters:
        out - the Writer to write the schema content to
        Returns:
        the schema writer
      • newGenerationState

        protected gov.nist.secauto.metaschema.schemagen.json.impl.JsonGenerationState newGenerationState​(IModule module,
                                                                                                         com.fasterxml.jackson.core.JsonGenerator schemaWriter,
                                                                                                         IConfiguration<SchemaGenerationFeature<?>> configuration)
        Description copied from class: AbstractSchemaGenerator
        Create a new schema generation state object.
        Specified by:
        newGenerationState in class AbstractSchemaGenerator<com.fasterxml.jackson.core.JsonGenerator,​gov.nist.secauto.metaschema.schemagen.json.datatype.JsonDatatypeManager,​gov.nist.secauto.metaschema.schemagen.json.impl.JsonGenerationState>
        Parameters:
        module - the Metaschema module to generate the schema for
        schemaWriter - the writer to use to write the schema
        configuration - the generation configuration
        Returns:
        the schema generation state used for context and writing
      • generateSchema

        protected void generateSchema​(gov.nist.secauto.metaschema.schemagen.json.impl.JsonGenerationState state)
        Description copied from class: AbstractSchemaGenerator
        Called to generate the actual schema content.
        Specified by:
        generateSchema in class AbstractSchemaGenerator<com.fasterxml.jackson.core.JsonGenerator,​gov.nist.secauto.metaschema.schemagen.json.datatype.JsonDatatypeManager,​gov.nist.secauto.metaschema.schemagen.json.impl.JsonGenerationState>
        Parameters:
        state - the generation state object