org.openapijsonschematools.client.components.schemas.AnimalFarm.java
public class AnimalFarm
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 list payloads, extends FrozenList
- classes to build inputs for list payloads
Modifier and Type | Class and Description |
---|---|
sealed interface | AnimalFarm.AnimalFarm1Boxed sealed interface for validated payloads |
record | AnimalFarm.AnimalFarm1BoxedList boxed class to store validated List payloads |
static class | AnimalFarm.AnimalFarm1 schema class |
static class | AnimalFarm.AnimalFarmListBuilder builder for List payloads |
static class | AnimalFarm.AnimalFarmList output class for List payloads |
public sealed interface AnimalFarm1Boxed
permits
AnimalFarm1BoxedList
sealed interface that stores validated payloads using boxed classes
public record AnimalFarm1BoxedList
implements AnimalFarm1Boxed
record that stores validated List payloads, sealed permits implementation
Constructor and Description |
---|
AnimalFarm1BoxedList(AnimalFarmList data) Creates an instance, private visibility |
Modifier and Type | Method and Description |
---|---|
AnimalFarmList | data() validated payload |
@Nullable Object | getData() validated payload |
public static class AnimalFarm1
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.AnimalFarm;
import java.util.Arrays;
import java.util.List;
import java.util.AbstractMap;
static final SchemaConfiguration configuration = new SchemaConfiguration(new JsonSchemaKeywordFlags.Builder().build());
// List validation
AnimalFarm.AnimalFarmList validatedPayload =
AnimalFarm.AnimalFarm1.validate(
new AnimalFarm.AnimalFarmListBuilder()
.add(
MapUtils.makeMap(
new AbstractMap.SimpleEntry<String, String>(
"className",
"a"
),
new AbstractMap.SimpleEntry<String, String>(
"color",
"a"
)
)
)
.build(),
configuration
);
Modifier and Type | Field and Description |
---|---|
Set<Class<?>> | type = Set.of(List.class) |
Class<? extends JsonSchema> | items = Animal.Animal1.class |
Modifier and Type | Method and Description |
---|---|
AnimalFarmList | validate(List<?> arg, SchemaConfiguration configuration) |
AnimalFarm1BoxedList | validateAndBox(List<?> arg, SchemaConfiguration configuration) |
AnimalFarm1Boxed | validateAndBox(@Nullable Object arg, SchemaConfiguration configuration) |
@Nullable Object | validate(@Nullable Object arg, SchemaConfiguration configuration) |
public class AnimalFarmListBuilder
builder for List<Map<String, @Nullable Object>>
A class that builds the List input type
Constructor and Description |
---|
AnimalFarmListBuilder() Creates an empty list |
AnimalFarmListBuilder(List<Map<String, @Nullable Object>> items) Stores the items in a list |
Modifier and Type | Method and Description |
---|---|
AnimalFarmListBuilder | add(Map<String, @Nullable Object> item) |
List<Map<String, @Nullable Object>> | build() Returns list input that should be used with Schema.validate |
public class AnimalFarmList
extends FrozenList<Animal.AnimalMap>
A class to store validated List payloads
Modifier and Type | Method and Description |
---|---|
static AnimalFarmList | of(List<Map<String, ? extends @Nullable Object>> arg, SchemaConfiguration configuration) |