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

Latest commit

 

History

History
185 lines (147 loc) · 8.88 KB

File metadata and controls

185 lines (147 loc) · 8.88 KB

ObjWithRequiredPropsBase

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

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 ObjWithRequiredPropsBase.ObjWithRequiredPropsBase1Boxed
sealed interface for validated payloads
record ObjWithRequiredPropsBase.ObjWithRequiredPropsBase1BoxedMap
boxed class to store validated Map payloads
static class ObjWithRequiredPropsBase.ObjWithRequiredPropsBase1
schema class
static class ObjWithRequiredPropsBase.ObjWithRequiredPropsBaseMapBuilder
builder for Map payloads
static class ObjWithRequiredPropsBase.ObjWithRequiredPropsBaseMap
output class for Map payloads
sealed interface ObjWithRequiredPropsBase.BBoxed
sealed interface for validated payloads
record ObjWithRequiredPropsBase.BBoxedString
boxed class to store validated String payloads
static class ObjWithRequiredPropsBase.B
schema class

ObjWithRequiredPropsBase1Boxed

public sealed interface ObjWithRequiredPropsBase1Boxed
permits
ObjWithRequiredPropsBase1BoxedMap

sealed interface that stores validated payloads using boxed classes

ObjWithRequiredPropsBase1BoxedMap

public record ObjWithRequiredPropsBase1BoxedMap
implements ObjWithRequiredPropsBase1Boxed

record that stores validated Map payloads, sealed permits implementation

Constructor Summary

Constructor and Description
ObjWithRequiredPropsBase1BoxedMap(ObjWithRequiredPropsBaseMap data)
Creates an instance, private visibility

Method Summary

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

ObjWithRequiredPropsBase1

public static class ObjWithRequiredPropsBase1
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.ObjWithRequiredPropsBase;

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

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

// Map validation
ObjWithRequiredPropsBase.ObjWithRequiredPropsBaseMap validatedPayload =
    ObjWithRequiredPropsBase.ObjWithRequiredPropsBase1.validate(
    new ObjWithRequiredPropsBase.ObjWithRequiredPropsBaseMapBuilder()
        .b("a")

    .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("b", B.class))
)
Set required = Set.of(
    "b"
)

Method Summary

Modifier and Type Method and Description
ObjWithRequiredPropsBaseMap validate(Map<?, ?> arg, SchemaConfiguration configuration)
ObjWithRequiredPropsBase1BoxedMap validateAndBox(Map<?, ?> arg, SchemaConfiguration configuration)
ObjWithRequiredPropsBase1Boxed validateAndBox(@Nullable Object arg, SchemaConfiguration configuration)
@Nullable Object validate(@Nullable Object arg, SchemaConfiguration configuration)

ObjWithRequiredPropsBaseMap0Builder

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

A class that builds the Map input type

Constructor Summary

Constructor and Description
ObjWithRequiredPropsBaseMap0Builder(Map<String, @Nullable Object> instance)
Creates a builder that contains the passed instance

Method Summary

Modifier and Type Method and Description
Map<String, @Nullable Object> build()
Returns map input that should be used with Schema.validate
ObjWithRequiredPropsBaseMap0Builder additionalProperty(String key, Void value)
ObjWithRequiredPropsBaseMap0Builder additionalProperty(String key, boolean value)
ObjWithRequiredPropsBaseMap0Builder additionalProperty(String key, String value)
ObjWithRequiredPropsBaseMap0Builder additionalProperty(String key, int value)
ObjWithRequiredPropsBaseMap0Builder additionalProperty(String key, float value)
ObjWithRequiredPropsBaseMap0Builder additionalProperty(String key, long value)
ObjWithRequiredPropsBaseMap0Builder additionalProperty(String key, double value)
ObjWithRequiredPropsBaseMap0Builder additionalProperty(String key, List<?> value)
ObjWithRequiredPropsBaseMap0Builder additionalProperty(String key, Map<String, ?> value)

ObjWithRequiredPropsBaseMapBuilder

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

A class that builds the Map input type

Constructor Summary

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

Method Summary

Modifier and Type Method and Description
ObjWithRequiredPropsBaseMap0Builder b(String value)

ObjWithRequiredPropsBaseMap

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

A class to store validated Map payloads

Method Summary

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

BBoxed

public sealed interface BBoxed
permits
BBoxedString

sealed interface that stores validated payloads using boxed classes

BBoxedString

public record BBoxedString
implements BBoxed

record that stores validated String payloads, sealed permits implementation

Constructor Summary

Constructor and Description
BBoxedString(String data)
Creates an instance, private visibility

Method Summary

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

B

public static class B
extends StringJsonSchema.StringJsonSchema1

A schema class that validates payloads

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

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