Skip to content
This repository was archived by the owner on Dec 25, 2024. It is now read-only.

Latest commit

 

History

History
116 lines (92 loc) · 4.87 KB

File metadata and controls

116 lines (92 loc) · 4.87 KB

ObjectWithOnlyOptionalProps

org.openapijsonschematools.client.components.schemas.ObjectWithOnlyOptionalProps.java public class ObjectWithOnlyOptionalProps

A class that contains necessary nested schema classes, and classes to store validated list and map payloads

Nested Class Summary

Modifier and Type Class and Description
static class ObjectWithOnlyOptionalProps.ObjectWithOnlyOptionalProps1
schema class
static class ObjectWithOnlyOptionalProps.ObjectWithOnlyOptionalPropsMap
output class for Map payloads
static class ObjectWithOnlyOptionalProps.B
schema class
static class ObjectWithOnlyOptionalProps.A
schema class
static class ObjectWithOnlyOptionalProps.AdditionalProperties
schema class

ObjectWithOnlyOptionalProps1

public static class ObjectWithOnlyOptionalProps1
extends JsonSchema

A schema class that validates payloads

Code Sample

import org.openapijsonschematools.client.configurations.JsonSchemaKeywordFlags;
import org.openapijsonschematools.client.configurations.SchemaConfiguration;
import org.openapijsonschematools.client.exceptions.ValidationException;
import org.openapijsonschematools.client.schemas.MapMaker;
import org.openapijsonschematools.client.schemas.validation.FrozenList;
import org.openapijsonschematools.client.schemas.validation.FrozenMap;

import java.util.Arrays;
import java.util.List;
import java.util.AbstractMap;

static final SchemaConfiguration configuration = new SchemaConfiguration(JsonSchemaKeywordFlags.ofNone());

// Map validation
ObjectWithOnlyOptionalProps.ObjectWithOnlyOptionalPropsMap validatedPayload =
    ObjectWithOnlyOptionalProps.ObjectWithOnlyOptionalProps1.validate(
    MapMaker.makeMap(
        new AbstractMap.SimpleEntry<>(
            "a",
            "a"
        ),
        new AbstractMap.SimpleEntry<>(
            "b",
            1
        )
    ),
    configuration
);

Field Summary

Modifier and Type Field and Description
static LinkedHashMap<String, KeywordValidator> keywordToValidator
new LinkedHashMap<>(Map.ofEntries(
    new KeywordEntry("type", new TypeValidator(Set.of(FrozenMap.class))),
    new KeywordEntry("properties", new PropertiesValidator(Map.ofEntries(
        new PropertyEntry("a", A.class)),
        new PropertyEntry("b", B.class))
    ))),
    new KeywordEntry("additionalProperties", new AdditionalPropertiesValidator(AdditionalProperties.class))
));

Method Summary

Modifier and Type Method and Description
static ObjectWithOnlyOptionalPropsMap validate(Map<String, Object> arg, SchemaConfiguration configuration)

ObjectWithOnlyOptionalPropsMap

public static class ObjectWithOnlyOptionalPropsMap
extends FrozenMap<String, Object>

A class to store validated Map payloads

Method Summary

Modifier and Type Method and Description
static ObjectWithOnlyOptionalPropsMap of(Map<String, Object> arg, SchemaConfiguration configuration)
String a()
[optional]
Number b()
[optional]

Input Map Keys

type: Map<String, Object>
Key Type Description Notes
a String [optional]
b Number [optional]

B

public static class B
extends NumberJsonSchema

A schema class that validates payloads

Methods Inherited from class org.openapijsonschematools.client.schemas.NumberJsonSchema
validate

A

public static class A
extends StringJsonSchema

A schema class that validates payloads

Methods Inherited from class org.openapijsonschematools.client.schemas.StringJsonSchema
validate

AdditionalProperties

public static class AdditionalProperties
extends NotAnyTypeJsonSchema

A schema class that validates payloads

Methods Inherited from class org.openapijsonschematools.client.schemas.NotAnyTypeJsonSchema
validate

[Back to top] [Back to Component Schemas] [Back to README]