Class AdditionalPropertiesModule
- java.lang.Object
-
- com.github.victools.jsonschema.generator.impl.module.AdditionalPropertiesModule
-
-
Constructor Summary
Constructors Constructor Description AdditionalPropertiesModule(ConfigFunction<TypeScope,Type> generalAdditionalPropertiesResolver)
Constructor.AdditionalPropertiesModule(ConfigFunction<TypeScope,Type> generalAdditionalPropertiesResolver, BiFunction<FieldScope,SchemaGenerationContext,com.fasterxml.jackson.databind.JsonNode> fieldAdditionalPropertiesResolver, BiFunction<MethodScope,SchemaGenerationContext,com.fasterxml.jackson.databind.JsonNode> methodAdditionalPropertiesResolver)
Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
applyToConfigBuilder(SchemaGeneratorConfigBuilder builder)
Apply this module to the given configuration builder instance.static AdditionalPropertiesModule
forbiddenForAllObjectsButContainers()
Create module instance that forbids additional properties everywhere but on container types.static AdditionalPropertiesModule
forMapValues()
Create module instance that specifically allows additional properties onMap
instances.
-
-
-
Constructor Detail
-
AdditionalPropertiesModule
public AdditionalPropertiesModule(ConfigFunction<TypeScope,Type> generalAdditionalPropertiesResolver)
Constructor.- Parameters:
generalAdditionalPropertiesResolver
- resolver for additionalProperties of types in general
-
AdditionalPropertiesModule
public AdditionalPropertiesModule(ConfigFunction<TypeScope,Type> generalAdditionalPropertiesResolver, BiFunction<FieldScope,SchemaGenerationContext,com.fasterxml.jackson.databind.JsonNode> fieldAdditionalPropertiesResolver, BiFunction<MethodScope,SchemaGenerationContext,com.fasterxml.jackson.databind.JsonNode> methodAdditionalPropertiesResolver)
Constructor.- Parameters:
generalAdditionalPropertiesResolver
- resolver for additionalProperties of types in generalfieldAdditionalPropertiesResolver
- resolver for additionalPropoerties for fieldsmethodAdditionalPropertiesResolver
- resolver for additionalPropoerties for methods
-
-
Method Detail
-
forMapValues
public static AdditionalPropertiesModule forMapValues()
Create module instance that specifically allows additional properties onMap
instances.- Returns:
- module instance
-
forbiddenForAllObjectsButContainers
public static AdditionalPropertiesModule forbiddenForAllObjectsButContainers()
Create module instance that forbids additional properties everywhere but on container types.
This assumes that the respectiveSimpleTypeModule
instance is being applied first and already enforces the "additionalProperties" keyword to be omitted on other non-object schemas.- Returns:
- module instance
-
applyToConfigBuilder
public void applyToConfigBuilder(SchemaGeneratorConfigBuilder builder)
Description copied from interface:Module
Apply this module to the given configuration builder instance.- Specified by:
applyToConfigBuilder
in interfaceModule
- Parameters:
builder
- configuration builder instance to which to apply this module
-
-