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

Latest commit

 

History

History
122 lines (98 loc) · 6.36 KB

File metadata and controls

122 lines (98 loc) · 6.36 KB

SelfReferencingObjectModel

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

A class that contains necessary nested

  • schema classes (which validate payloads), extends JsonSchema
  • sealed interfaces which store validated payloads, java version of a sum type
  • boxed classes which store validated payloads, sealed permits class implementations
  • classes to store validated map payloads, extends FrozenMap
  • classes to build inputs for map payloads

Nested Class Summary

Modifier and Type Class and Description
sealed interface SelfReferencingObjectModel.SelfReferencingObjectModel1Boxed
sealed interface for validated payloads
record SelfReferencingObjectModel.SelfReferencingObjectModel1BoxedMap
boxed class to store validated Map payloads
static class SelfReferencingObjectModel.SelfReferencingObjectModel1
schema class
static class SelfReferencingObjectModel.SelfReferencingObjectModelMapBuilder
builder for Map payloads
static class SelfReferencingObjectModel.SelfReferencingObjectModelMap
output class for Map payloads

SelfReferencingObjectModel1Boxed

public sealed interface SelfReferencingObjectModel1Boxed
permits
SelfReferencingObjectModel1BoxedMap

sealed interface that stores validated payloads using boxed classes

SelfReferencingObjectModel1BoxedMap

public record SelfReferencingObjectModel1BoxedMap
implements SelfReferencingObjectModel1Boxed

record that stores validated Map payloads, sealed permits implementation

Constructor Summary

Constructor and Description
SelfReferencingObjectModel1BoxedMap(SelfReferencingObjectModelMap data)
Creates an instance, private visibility

Method Summary

Modifier and Type Method and Description
SelfReferencingObjectModelMap data()
validated payload
@Nullable Object getData()
validated payload

SelfReferencingObjectModel1

public static class SelfReferencingObjectModel1
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.validation.MapUtils;
import org.openapijsonschematools.client.schemas.validation.FrozenList;
import org.openapijsonschematools.client.schemas.validation.FrozenMap;
import org.openapijsonschematools.client.components.schemas.SelfReferencingObjectModel;

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

static final SchemaConfiguration configuration = new SchemaConfiguration(new JsonSchemaKeywordFlags.Builder().build());

// Map validation
SelfReferencingObjectModel.SelfReferencingObjectModelMap validatedPayload =
    SelfReferencingObjectModel.SelfReferencingObjectModel1.validate(
    new SelfReferencingObjectModel.SelfReferencingObjectModelMapBuilder()
    .build(),
    configuration
);

Field Summary

Modifier and Type Field and Description
Set<Class<?>> type = Set.of(Map.class)
Map<String, Class<? extends JsonSchema>> properties = Map.ofEntries(
    new PropertyEntry("selfRef", SelfReferencingObjectModel1.class))
)
Class<? extends JsonSchema> additionalProperties = SelfReferencingObjectModel1.class

Method Summary

Modifier and Type Method and Description
SelfReferencingObjectModelMap validate(Map<?, ?> arg, SchemaConfiguration configuration)
SelfReferencingObjectModel1BoxedMap validateAndBox(Map<?, ?> arg, SchemaConfiguration configuration)
SelfReferencingObjectModel1Boxed validateAndBox(@Nullable Object arg, SchemaConfiguration configuration)
@Nullable Object validate(@Nullable Object arg, SchemaConfiguration configuration)

SelfReferencingObjectModelMapBuilder

public class SelfReferencingObjectModelMapBuilder
builder for Map<String, @Nullable Object>

A class that builds the Map input type

Constructor Summary

Constructor and Description
SelfReferencingObjectModelMapBuilder()
Creates a builder that contains an empty map

Method Summary

Modifier and Type Method and Description
Map<String, @Nullable Object> build()
Returns map input that should be used with Schema.validate
SelfReferencingObjectModelMapBuilder selfRef(Map<String, @Nullable Object> value)
SelfReferencingObjectModelMapBuilder additionalProperty(String key, Map<String, @Nullable Object> value)

SelfReferencingObjectModelMap

public static class SelfReferencingObjectModelMap
extends FrozenMap<String, @Nullable Object>

A class to store validated Map payloads

Method Summary

Modifier and Type Method and Description
static SelfReferencingObjectModelMap of(Map<String, ? extends @Nullable Object> arg, SchemaConfiguration configuration)
SelfReferencingObjectModelMap selfRef()
[optional]
SelfReferencingObjectModelMap getAdditionalProperty(String name)
provides type safety for additional properties

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