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

Latest commit

 

History

History
324 lines (260 loc) · 13.4 KB

File metadata and controls

324 lines (260 loc) · 13.4 KB

Cat

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

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 Cat.Cat1Boxed
sealed interface for validated payloads
record Cat.Cat1BoxedVoid
boxed class to store validated null payloads
record Cat.Cat1BoxedBoolean
boxed class to store validated boolean payloads
record Cat.Cat1BoxedNumber
boxed class to store validated Number payloads
record Cat.Cat1BoxedString
boxed class to store validated String payloads
record Cat.Cat1BoxedList
boxed class to store validated List payloads
record Cat.Cat1BoxedMap
boxed class to store validated Map payloads
static class Cat.Cat1
schema class
sealed interface Cat.Schema1Boxed
sealed interface for validated payloads
record Cat.Schema1BoxedMap
boxed class to store validated Map payloads
static class Cat.Schema1
schema class
static class Cat.Schema1MapBuilder
builder for Map payloads
static class Cat.Schema1Map
output class for Map payloads
sealed interface Cat.DeclawedBoxed
sealed interface for validated payloads
record Cat.DeclawedBoxedBoolean
boxed class to store validated boolean payloads
static class Cat.Declawed
schema class

Cat1Boxed

public sealed interface Cat1Boxed
permits
Cat1BoxedVoid, Cat1BoxedBoolean, Cat1BoxedNumber, Cat1BoxedString, Cat1BoxedList, Cat1BoxedMap

sealed interface that stores validated payloads using boxed classes

Cat1BoxedVoid

public record Cat1BoxedVoid
implements Cat1Boxed

record that stores validated null payloads, sealed permits implementation

Constructor Summary

Constructor and Description
Cat1BoxedVoid(Void data)
Creates an instance, private visibility

Method Summary

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

Cat1BoxedBoolean

public record Cat1BoxedBoolean
implements Cat1Boxed

record that stores validated boolean payloads, sealed permits implementation

Constructor Summary

Constructor and Description
Cat1BoxedBoolean(boolean data)
Creates an instance, private visibility

Method Summary

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

Cat1BoxedNumber

public record Cat1BoxedNumber
implements Cat1Boxed

record that stores validated Number payloads, sealed permits implementation

Constructor Summary

Constructor and Description
Cat1BoxedNumber(Number data)
Creates an instance, private visibility

Method Summary

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

Cat1BoxedString

public record Cat1BoxedString
implements Cat1Boxed

record that stores validated String payloads, sealed permits implementation

Constructor Summary

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

Method Summary

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

Cat1BoxedList

public record Cat1BoxedList
implements Cat1Boxed

record that stores validated List payloads, sealed permits implementation

Constructor Summary

Constructor and Description
Cat1BoxedList(FrozenList<@Nullable Object> data)
Creates an instance, private visibility

Method Summary

Modifier and Type Method and Description
FrozenList<@Nullable Object> data()
validated payload
@Nullable Object getData()
validated payload

Cat1BoxedMap

public record Cat1BoxedMap
implements Cat1Boxed

record that stores validated Map payloads, sealed permits implementation

Constructor Summary

Constructor and Description
Cat1BoxedMap(FrozenMap<@Nullable Object> data)
Creates an instance, private visibility

Method Summary

Modifier and Type Method and Description
FrozenMap<@Nullable Object> data()
validated payload
@Nullable Object getData()
validated payload

Cat1

public static class Cat1
extends JsonSchema

A schema class that validates payloads

Field Summary

Modifier and Type Field and Description
List<Class<? extends JsonSchema>> allOf = List.of(
    Animal.Animal1.class,
    Schema1.class
;)

Method Summary

Modifier and Type Method and Description
String validate(String arg, SchemaConfiguration configuration)
Void validate(Void arg, SchemaConfiguration configuration)
int validate(int arg, SchemaConfiguration configuration)
long validate(long arg, SchemaConfiguration configuration)
float validate(float arg, SchemaConfiguration configuration)
double validate(double arg, SchemaConfiguration configuration)
Number validate(Number arg, SchemaConfiguration configuration)
boolean validate(boolean arg, SchemaConfiguration configuration)
FrozenMap<@Nullable Object> validate(Map<?, ?> arg, SchemaConfiguration configuration)
FrozenList<@Nullable Object> validate(List<?> arg, SchemaConfiguration configuration)
Cat1BoxedString validateAndBox(String arg, SchemaConfiguration configuration)
Cat1BoxedVoid validateAndBox(Void arg, SchemaConfiguration configuration)
Cat1BoxedNumber validateAndBox(Number arg, SchemaConfiguration configuration)
Cat1BoxedBoolean validateAndBox(boolean arg, SchemaConfiguration configuration)
Cat1BoxedMap validateAndBox(Map<?, ?> arg, SchemaConfiguration configuration)
Cat1BoxedList validateAndBox(List<?> arg, SchemaConfiguration configuration)
Cat1Boxed validateAndBox(@Nullable Object arg, SchemaConfiguration configuration)
@Nullable Object validate(@Nullable Object arg, SchemaConfiguration configuration)

Schema1Boxed

public sealed interface Schema1Boxed
permits
Schema1BoxedMap

sealed interface that stores validated payloads using boxed classes

Schema1BoxedMap

public record Schema1BoxedMap
implements Schema1Boxed

record that stores validated Map payloads, sealed permits implementation

Constructor Summary

Constructor and Description
Schema1BoxedMap(Schema1Map data)
Creates an instance, private visibility

Method Summary

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

Schema1

public static class Schema1
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.Cat;

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

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

// Map validation
Cat.Schema1Map validatedPayload =
    Cat.Schema1.validate(
    new Cat.Schema1MapBuilder()
        .declawed(true)

    .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("declawed", Declawed.class))
)

Method Summary

Modifier and Type Method and Description
Schema1Map validate(Map<?, ?> arg, SchemaConfiguration configuration)
Schema1BoxedMap validateAndBox(Map<?, ?> arg, SchemaConfiguration configuration)
Schema1Boxed validateAndBox(@Nullable Object arg, SchemaConfiguration configuration)
@Nullable Object validate(@Nullable Object arg, SchemaConfiguration configuration)

Schema1MapBuilder

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

A class that builds the Map input type

Constructor Summary

Constructor and Description
Schema1MapBuilder()
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
Schema1MapBuilder declawed(boolean value)
Schema1MapBuilder additionalProperty(String key, Void value)
Schema1MapBuilder additionalProperty(String key, boolean value)
Schema1MapBuilder additionalProperty(String key, String value)
Schema1MapBuilder additionalProperty(String key, int value)
Schema1MapBuilder additionalProperty(String key, float value)
Schema1MapBuilder additionalProperty(String key, long value)
Schema1MapBuilder additionalProperty(String key, double value)
Schema1MapBuilder additionalProperty(String key, List<?> value)
Schema1MapBuilder additionalProperty(String key, Map<String, ?> value)

Schema1Map

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

A class to store validated Map payloads

Method Summary

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

DeclawedBoxed

public sealed interface DeclawedBoxed
permits
DeclawedBoxedBoolean

sealed interface that stores validated payloads using boxed classes

DeclawedBoxedBoolean

public record DeclawedBoxedBoolean
implements DeclawedBoxed

record that stores validated boolean payloads, sealed permits implementation

Constructor Summary

Constructor and Description
DeclawedBoxedBoolean(boolean data)
Creates an instance, private visibility

Method Summary

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

Declawed

public static class Declawed
extends BooleanJsonSchema.BooleanJsonSchema1

A schema class that validates payloads

Methods Inherited from class org.openapijsonschematools.client.schemas.BooleanJsonSchema.BooleanJsonSchema1
validate
validateAndBox

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