Class SchemaTransformer
java.lang.Object
com.atlassian.oai.validator.schema.transform.SchemaTransformer
- Direct Known Subclasses:
AdditionalPropertiesInjectionTransformer,RequiredFieldTransformer,SchemaDefinitionsInjectionTransformer,SchemaRefInjectionTransformer
A base class for transformers that mutate the state of a parsed Swagger/OpenAPI schema object.
Provides some helpers for working with the parsed schema objects. Used to avoid mutating the
Schema object which can't easily be cloned.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final Stringprotected static final Stringprotected static final Stringprotected static final Stringprotected static final Stringprotected static final Stringprotected static final Stringprotected static final Stringprotected static final Stringprotected static final Stringprotected static final Stringprotected static final Stringprotected static final String -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected static Iterator<com.fasterxml.jackson.databind.JsonNode>allOf(com.fasterxml.jackson.databind.JsonNode n) protected static Iterator<com.fasterxml.jackson.databind.JsonNode>anyOf(com.fasterxml.jackson.databind.JsonNode n) abstract voidapply(com.fasterxml.jackson.databind.JsonNode schemaObject, SchemaTransformationContext context) Apply the schema transformation to the given node.protected static voiddisableAdditionalProperties(com.fasterxml.jackson.databind.node.ObjectNode n) getRequiredFieldNames(com.fasterxml.jackson.databind.JsonNode n) protected static booleanhasAdditionalFieldSet(com.fasterxml.jackson.databind.JsonNode n) protected static booleanhasAllOfField(com.fasterxml.jackson.databind.JsonNode n) protected static booleanhasDiscriminatorField(com.fasterxml.jackson.databind.JsonNode n) protected static booleanhasPropertiesField(com.fasterxml.jackson.databind.JsonNode n) protected static booleanhasRequiredFields(com.fasterxml.jackson.databind.JsonNode n) protected static booleanisArrayDefinition(com.fasterxml.jackson.databind.JsonNode n) protected static booleanisObjectDefinition(com.fasterxml.jackson.databind.JsonNode n) protected static booleanisReadOnly(com.fasterxml.jackson.databind.JsonNode n) protected static booleanisWriteOnly(com.fasterxml.jackson.databind.JsonNode n) protected static com.fasterxml.jackson.databind.JsonNodeitemsDefinition(com.fasterxml.jackson.databind.JsonNode n) protected static Iterator<com.fasterxml.jackson.databind.JsonNode>oneOf(com.fasterxml.jackson.databind.JsonNode n) protected static Iterator<com.fasterxml.jackson.databind.JsonNode>properties(com.fasterxml.jackson.databind.JsonNode n) protected static com.fasterxml.jackson.databind.JsonNodeprotected static Iterator<com.fasterxml.jackson.databind.JsonNode>schemaComponents(com.fasterxml.jackson.databind.JsonNode n) protected static voidsetRequiredFieldNames(com.fasterxml.jackson.databind.JsonNode n, List<String> required) protected static voidsetSchemaRef(com.fasterxml.jackson.databind.JsonNode n, String value)
-
Field Details
-
ADDITIONAL_PROPERTIES_FIELD
- See Also:
-
DISCRIMINATOR_FIELD
- See Also:
-
PROPERTIES_FIELD
- See Also:
-
REQUIRED_FIELD
- See Also:
-
READONLY_FIELD
- See Also:
-
WRITEONLY_FIELD
- See Also:
-
TYPE_FIELD
- See Also:
-
COMPONENTS_FIELD
- See Also:
-
SCHEMAS_FIELD
- See Also:
-
ALLOF_FIELD
- See Also:
-
ANYOF_FIELD
- See Also:
-
ONEOF_FIELD
- See Also:
-
SCHEMA_REF_FIELD
- See Also:
-
-
Constructor Details
-
SchemaTransformer
public SchemaTransformer()
-
-
Method Details
-
apply
public abstract void apply(com.fasterxml.jackson.databind.JsonNode schemaObject, SchemaTransformationContext context) Apply the schema transformation to the given node.Note: Callers should assume that this will mutate the given schema object.
-
hasAllOfField
protected static boolean hasAllOfField(com.fasterxml.jackson.databind.JsonNode n) -
hasPropertiesField
protected static boolean hasPropertiesField(com.fasterxml.jackson.databind.JsonNode n) -
itemsDefinition
@Nullable protected static com.fasterxml.jackson.databind.JsonNode itemsDefinition(com.fasterxml.jackson.databind.JsonNode n) -
isObjectDefinition
-
isArrayDefinition
-
disableAdditionalProperties
protected static void disableAdditionalProperties(com.fasterxml.jackson.databind.node.ObjectNode n) -
properties
-
allOf
-
anyOf
-
oneOf
-
schemaComponents
-
property
-
hasDiscriminatorField
-
hasAdditionalFieldSet
-
hasRequiredFields
-
getRequiredFieldNames
-
setRequiredFieldNames
-
isReadOnly
-
isWriteOnly
-
setSchemaRef
-