org.openapijsonschematools.client.components.schemas.Animal.java
public class Animal
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
Modifier and Type | Class and Description |
---|---|
sealed interface | Animal.Animal1Boxed sealed interface for validated payloads |
record | Animal.Animal1BoxedMap boxed class to store validated Map payloads |
static class | Animal.Animal1 schema class |
static class | Animal.AnimalMapBuilder builder for Map payloads |
static class | Animal.AnimalMap output class for Map payloads |
sealed interface | Animal.ColorBoxed sealed interface for validated payloads |
record | Animal.ColorBoxedString boxed class to store validated String payloads |
static class | Animal.Color schema class |
sealed interface | Animal.ClassNameBoxed sealed interface for validated payloads |
record | Animal.ClassNameBoxedString boxed class to store validated String payloads |
static class | Animal.ClassName schema class |
public sealed interface Animal1Boxed
permits
Animal1BoxedMap
sealed interface that stores validated payloads using boxed classes
public record Animal1BoxedMap
implements Animal1Boxed
record that stores validated Map payloads, sealed permits implementation
Constructor and Description |
---|
Animal1BoxedMap(AnimalMap data) Creates an instance, private visibility |
Modifier and Type | Method and Description |
---|---|
AnimalMap | data() validated payload |
@Nullable Object | getData() validated payload |
public static class Animal1
extends JsonSchema
A schema class that validates payloads
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.Animal;
import java.util.Arrays;
import java.util.List;
import java.util.AbstractMap;
static final SchemaConfiguration configuration = new SchemaConfiguration(new JsonSchemaKeywordFlags.Builder().build());
// Map validation
Animal.AnimalMap validatedPayload =
Animal.Animal1.validate(
new Animal.AnimalMapBuilder()
.className("a")
.color("a")
.build(),
configuration
);
Modifier and Type | Field and Description |
---|---|
Set<Class<?>> | type = Set.of(Map.class) |
Map<String, Class<? extends JsonSchema>> | properties = Map.ofEntries( new PropertyEntry("className", ClassName.class)), new PropertyEntry("color", Color.class)) ) |
Set | required = Set.of( "className" ) |
Modifier and Type | Method and Description |
---|---|
AnimalMap | validate(Map<?, ?> arg, SchemaConfiguration configuration) |
Animal1BoxedMap | validateAndBox(Map<?, ?> arg, SchemaConfiguration configuration) |
Animal1Boxed | validateAndBox(@Nullable Object arg, SchemaConfiguration configuration) |
@Nullable Object | validate(@Nullable Object arg, SchemaConfiguration configuration) |
public class AnimalMap0Builder
builder for Map<String, @Nullable Object>
A class that builds the Map input type
Constructor and Description |
---|
AnimalMap0Builder(Map<String, @Nullable Object> instance) Creates a builder that contains the passed instance |
Modifier and Type | Method and Description |
---|---|
Map<String, @Nullable Object> | build() Returns map input that should be used with Schema.validate |
AnimalMap0Builder | color(String value) |
AnimalMap0Builder | additionalProperty(String key, Void value) |
AnimalMap0Builder | additionalProperty(String key, boolean value) |
AnimalMap0Builder | additionalProperty(String key, String value) |
AnimalMap0Builder | additionalProperty(String key, int value) |
AnimalMap0Builder | additionalProperty(String key, float value) |
AnimalMap0Builder | additionalProperty(String key, long value) |
AnimalMap0Builder | additionalProperty(String key, double value) |
AnimalMap0Builder | additionalProperty(String key, List<?> value) |
AnimalMap0Builder | additionalProperty(String key, Map<String, ?> value) |
public class AnimalMapBuilder
builder for Map<String, @Nullable Object>
A class that builds the Map input type
Constructor and Description |
---|
AnimalMapBuilder() Creates a builder that contains an empty map |
Modifier and Type | Method and Description |
---|---|
AnimalMap0Builder | className(String value) |
public static class AnimalMap
extends FrozenMap<String, @Nullable Object>
A class to store validated Map payloads
Modifier and Type | Method and Description |
---|---|
static AnimalMap | of(Map<String, ? extends @Nullable Object> arg, SchemaConfiguration configuration) |
String | className() |
String | color() [optional] if omitted the server will use the default value of red |
@Nullable Object | getAdditionalProperty(String name) provides type safety for additional properties |
public sealed interface ColorBoxed
permits
ColorBoxedString
sealed interface that stores validated payloads using boxed classes
public record ColorBoxedString
implements ColorBoxed
record that stores validated String payloads, sealed permits implementation
Constructor and Description |
---|
ColorBoxedString(String data) Creates an instance, private visibility |
Modifier and Type | Method and Description |
---|---|
String | data() validated payload |
@Nullable Object | getData() validated payload |
public static class Color
extends JsonSchema
A schema class that validates payloads
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.Animal;
import java.util.Arrays;
import java.util.List;
import java.util.AbstractMap;
static final SchemaConfiguration configuration = new SchemaConfiguration(new JsonSchemaKeywordFlags.Builder().build());
// String validation
String validatedPayload = Animal.Color.validate(
"a",
configuration
);
Modifier and Type | Field and Description |
---|---|
Set<Class<?>> | type = Set.of( String.class ) |
@Nullable Object | defaultValue = "red" |
Modifier and Type | Method and Description |
---|---|
String | validate(String arg, SchemaConfiguration configuration) |
ColorBoxedString | validateAndBox(String arg, SchemaConfiguration configuration) |
ColorBoxed | validateAndBox(@Nullable Object arg, SchemaConfiguration configuration) |
@Nullable Object | validate(@Nullable Object arg, SchemaConfiguration configuration) |
public sealed interface ClassNameBoxed
permits
ClassNameBoxedString
sealed interface that stores validated payloads using boxed classes
public record ClassNameBoxedString
implements ClassNameBoxed
record that stores validated String payloads, sealed permits implementation
Constructor and Description |
---|
ClassNameBoxedString(String data) Creates an instance, private visibility |
Modifier and Type | Method and Description |
---|---|
String | data() validated payload |
@Nullable Object | getData() validated payload |
public static class ClassName
extends StringJsonSchema.StringJsonSchema1
A schema class that validates payloads
Methods Inherited from class org.openapijsonschematools.client.schemas.StringJsonSchema.StringJsonSchema1 |
---|
validate |
validateAndBox |