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

Latest commit

 

History

History
293 lines (230 loc) · 12.2 KB

File metadata and controls

293 lines (230 loc) · 12.2 KB

MyObjectDto

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

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 MyObjectDto.MyObjectDto1Boxed
sealed interface for validated payloads
record MyObjectDto.MyObjectDto1BoxedMap
boxed class to store validated Map payloads
static class MyObjectDto.MyObjectDto1
schema class
static class MyObjectDto.MyObjectDtoMapBuilder
builder for Map payloads
static class MyObjectDto.MyObjectDtoMap
output class for Map payloads
sealed interface MyObjectDto.IdBoxed
sealed interface for validated payloads
record MyObjectDto.IdBoxedString
boxed class to store validated String payloads
static class MyObjectDto.Id
schema class
sealed interface MyObjectDto.AdditionalPropertiesBoxed
sealed interface for validated payloads
record MyObjectDto.AdditionalPropertiesBoxedVoid
boxed class to store validated null payloads
record MyObjectDto.AdditionalPropertiesBoxedBoolean
boxed class to store validated boolean payloads
record MyObjectDto.AdditionalPropertiesBoxedNumber
boxed class to store validated Number payloads
record MyObjectDto.AdditionalPropertiesBoxedString
boxed class to store validated String payloads
record MyObjectDto.AdditionalPropertiesBoxedList
boxed class to store validated List payloads
record MyObjectDto.AdditionalPropertiesBoxedMap
boxed class to store validated Map payloads
static class MyObjectDto.AdditionalProperties
schema class

MyObjectDto1Boxed

public sealed interface MyObjectDto1Boxed
permits
MyObjectDto1BoxedMap

sealed interface that stores validated payloads using boxed classes

MyObjectDto1BoxedMap

public record MyObjectDto1BoxedMap
implements MyObjectDto1Boxed

record that stores validated Map payloads, sealed permits implementation

Constructor Summary

Constructor and Description
MyObjectDto1BoxedMap(MyObjectDtoMap data)
Creates an instance, private visibility

Method Summary

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

MyObjectDto1

public static class MyObjectDto1
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.MyObjectDto;

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

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

// Map validation
MyObjectDto.MyObjectDtoMap validatedPayload =
    MyObjectDto.MyObjectDto1.validate(
    new MyObjectDto.MyObjectDtoMapBuilder()
        .id("046b6c7f-0b8a-43b9-b35d-6489e6daee91")

    .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("id", Id.class))
)
Class<? extends JsonSchema> additionalProperties = AdditionalProperties.class

Method Summary

Modifier and Type Method and Description
MyObjectDtoMap validate(Map<?, ?> arg, SchemaConfiguration configuration)
MyObjectDto1BoxedMap validateAndBox(Map<?, ?> arg, SchemaConfiguration configuration)
MyObjectDto1Boxed validateAndBox(@Nullable Object arg, SchemaConfiguration configuration)
@Nullable Object validate(@Nullable Object arg, SchemaConfiguration configuration)

MyObjectDtoMapBuilder

public class MyObjectDtoMapBuilder
builder for Map<String, String>

A class that builds the Map input type

Constructor Summary

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

Method Summary

Modifier and Type Method and Description
Map<String, String> build()
Returns map input that should be used with Schema.validate
MyObjectDtoMapBuilder id(String value)

MyObjectDtoMap

public static class MyObjectDtoMap
extends FrozenMap<String, String>

A class to store validated Map payloads

Method Summary

Modifier and Type Method and Description
static MyObjectDtoMap of(Map<String, String> arg, SchemaConfiguration configuration)
String id()
[optional] value must be a uuid

IdBoxed

public sealed interface IdBoxed
permits
IdBoxedString

sealed interface that stores validated payloads using boxed classes

IdBoxedString

public record IdBoxedString
implements IdBoxed

record that stores validated String payloads, sealed permits implementation

Constructor Summary

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

Method Summary

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

Id

public static class Id
extends UuidJsonSchema.UuidJsonSchema1

A schema class that validates payloads

Methods Inherited from class org.openapijsonschematools.client.schemas.UuidJsonSchema.UuidJsonSchema1
validate
validateAndBox

AdditionalPropertiesBoxed

public sealed interface AdditionalPropertiesBoxed
permits
AdditionalPropertiesBoxedVoid, AdditionalPropertiesBoxedBoolean, AdditionalPropertiesBoxedNumber, AdditionalPropertiesBoxedString, AdditionalPropertiesBoxedList, AdditionalPropertiesBoxedMap

sealed interface that stores validated payloads using boxed classes

AdditionalPropertiesBoxedVoid

public record AdditionalPropertiesBoxedVoid
implements AdditionalPropertiesBoxed

record that stores validated null payloads, sealed permits implementation

Constructor Summary

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

Method Summary

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

AdditionalPropertiesBoxedBoolean

public record AdditionalPropertiesBoxedBoolean
implements AdditionalPropertiesBoxed

record that stores validated boolean payloads, sealed permits implementation

Constructor Summary

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

Method Summary

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

AdditionalPropertiesBoxedNumber

public record AdditionalPropertiesBoxedNumber
implements AdditionalPropertiesBoxed

record that stores validated Number payloads, sealed permits implementation

Constructor Summary

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

Method Summary

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

AdditionalPropertiesBoxedString

public record AdditionalPropertiesBoxedString
implements AdditionalPropertiesBoxed

record that stores validated String payloads, sealed permits implementation

Constructor Summary

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

Method Summary

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

AdditionalPropertiesBoxedList

public record AdditionalPropertiesBoxedList
implements AdditionalPropertiesBoxed

record that stores validated List payloads, sealed permits implementation

Constructor Summary

Constructor and Description
AdditionalPropertiesBoxedList(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

AdditionalPropertiesBoxedMap

public record AdditionalPropertiesBoxedMap
implements AdditionalPropertiesBoxed

record that stores validated Map payloads, sealed permits implementation

Constructor Summary

Constructor and Description
AdditionalPropertiesBoxedMap(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

AdditionalProperties

public static class AdditionalProperties
extends NotAnyTypeJsonSchema.NotAnyTypeJsonSchema1

A schema class that validates payloads

Methods Inherited from class org.openapijsonschematools.client.schemas.NotAnyTypeJsonSchema.NotAnyTypeJsonSchema1
validate
validateAndBox

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