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

Latest commit

 

History

History
229 lines (190 loc) · 11.7 KB

MixedPropertiesAndAdditionalPropertiesClass.md

File metadata and controls

229 lines (190 loc) · 11.7 KB

MixedPropertiesAndAdditionalPropertiesClass

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

A class that contains necessary nested

  • schema classes (which validate payloads), extends JsonSchema
  • classes to store validated map payloads, extends FrozenMap
  • classes to build inputs for map payloads

Nested Class Summary

Modifier and Type Class and Description
static class MixedPropertiesAndAdditionalPropertiesClass.MixedPropertiesAndAdditionalPropertiesClass1
schema class
static class MixedPropertiesAndAdditionalPropertiesClass.MixedPropertiesAndAdditionalPropertiesClassMapBuilder
builder for Map payloads
static class MixedPropertiesAndAdditionalPropertiesClass.MixedPropertiesAndAdditionalPropertiesClassMap
output class for Map payloads
static class MixedPropertiesAndAdditionalPropertiesClass.MapSchema
schema class
static class MixedPropertiesAndAdditionalPropertiesClass.MapMapBuilder
builder for Map payloads
static class MixedPropertiesAndAdditionalPropertiesClass.MapMap
output class for Map payloads
static class MixedPropertiesAndAdditionalPropertiesClass.DateTime
schema class
static class MixedPropertiesAndAdditionalPropertiesClass.UuidSchema
schema class

MixedPropertiesAndAdditionalPropertiesClass1

public static class MixedPropertiesAndAdditionalPropertiesClass1
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 java.util.Arrays;
import java.util.List;
import java.util.AbstractMap;

static final SchemaConfiguration configuration = new SchemaConfiguration(JsonSchemaKeywordFlags.ofNone());

// Map validation
MixedPropertiesAndAdditionalPropertiesClass.MixedPropertiesAndAdditionalPropertiesClassMap validatedPayload =
    MixedPropertiesAndAdditionalPropertiesClass.MixedPropertiesAndAdditionalPropertiesClass1.validate(
    new MixedPropertiesAndAdditionalPropertiesClass.MixedPropertiesAndAdditionalPropertiesClassMapBuilder()
        .setUuid("046b6c7f-0b8a-43b9-b35d-6489e6daee91")

        .dateTime("1970-01-01T00:00:00.00Z")

        .setMap(
            MapUtils.makeMap(
                new AbstractMap.SimpleEntry<String, Map<String, ?>>(
                    "someAdditionalProperty",
                    MapUtils.makeMap(
                        new AbstractMap.SimpleEntry<String, String>(
                            "className",
                            "a"
                        ),
                        new AbstractMap.SimpleEntry<String, String>(
                            "color",
                            "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("uuid", UuidSchema.class)),
    new PropertyEntry("dateTime", DateTime.class)),
    new PropertyEntry("map", MapSchema.class))
)

Method Summary

Modifier and Type Method and Description
MixedPropertiesAndAdditionalPropertiesClassMap validate(Map<?, ?> arg, SchemaConfiguration configuration)
@Nullable Object validate(@Nullable Object arg, SchemaConfiguration configuration)

MixedPropertiesAndAdditionalPropertiesClassMapBuilder

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

A class that builds the Map input type

Constructor Summary

Constructor and Description
MixedPropertiesAndAdditionalPropertiesClassMapBuilder()
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
MixedPropertiesAndAdditionalPropertiesClassMapBuilder setUuid(String value)
MixedPropertiesAndAdditionalPropertiesClassMapBuilder dateTime(String value)
MixedPropertiesAndAdditionalPropertiesClassMapBuilder setMap(Map<String, Map<String, @Nullable Object>> value)
MixedPropertiesAndAdditionalPropertiesClassMapBuilder additionalProperty(String key, Void value)
MixedPropertiesAndAdditionalPropertiesClassMapBuilder additionalProperty(String key, boolean value)
MixedPropertiesAndAdditionalPropertiesClassMapBuilder additionalProperty(String key, String value)
MixedPropertiesAndAdditionalPropertiesClassMapBuilder additionalProperty(String key, int value)
MixedPropertiesAndAdditionalPropertiesClassMapBuilder additionalProperty(String key, float value)
MixedPropertiesAndAdditionalPropertiesClassMapBuilder additionalProperty(String key, long value)
MixedPropertiesAndAdditionalPropertiesClassMapBuilder additionalProperty(String key, double value)
MixedPropertiesAndAdditionalPropertiesClassMapBuilder additionalProperty(String key, List<?> value)
MixedPropertiesAndAdditionalPropertiesClassMapBuilder additionalProperty(String key, Map<String, ?> value)

MixedPropertiesAndAdditionalPropertiesClassMap

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

A class to store validated Map payloads

Method Summary

Modifier and Type Method and Description
static MixedPropertiesAndAdditionalPropertiesClassMap of(Map<String, ? extends @Nullable Object> arg, SchemaConfiguration configuration)
String dateTime()
[optional] value must conform to RFC-3339 date-time
@Nullable Object get(String key)
This schema has invalid Java names so this method must be used when you access instance["uuid"], instance["map"],
@Nullable Object getAdditionalProperty(String name)
provides type safety for additional properties

MapSchema

public static class MapSchema
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 java.util.Arrays;
import java.util.List;
import java.util.AbstractMap;

static final SchemaConfiguration configuration = new SchemaConfiguration(JsonSchemaKeywordFlags.ofNone());

// Map validation
MixedPropertiesAndAdditionalPropertiesClass.MapMap validatedPayload =
    MixedPropertiesAndAdditionalPropertiesClass.MapSchema.validate(
    new MixedPropertiesAndAdditionalPropertiesClass.MapMapBuilder()
        .additionalProperty(
            "someAdditionalProperty",
            MapUtils.makeMap(
                new AbstractMap.SimpleEntry<String, String>(
                    "className",
                    "a"
                ),
                new AbstractMap.SimpleEntry<String, String>(
                    "color",
                    "a"
                )
            )
        )
    .build(),
    configuration
);

Field Summary

Modifier and Type Field and Description
Set<Class<?>> type = Set.of(Map.class)
Class<? extends JsonSchema> additionalProperties = Animal.Animal1.class

Method Summary

Modifier and Type Method and Description
MapMap validate(Map<?, ?> arg, SchemaConfiguration configuration)
@Nullable Object validate(@Nullable Object arg, SchemaConfiguration configuration)

MapMapBuilder

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

A class that builds the Map input type

Constructor Summary

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

Method Summary

Modifier and Type Method and Description
Map<String, Map<String, @Nullable Object>> build()
Returns map input that should be used with Schema.validate
MapMapBuilder additionalProperty(String key, Map<String, @Nullable Object> value)

MapMap

public static class MapMap
extends FrozenMap<String, Animal.AnimalMap>

A class to store validated Map payloads

Method Summary

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

DateTime

public static class DateTime
extends DateTimeJsonSchema

A schema class that validates payloads

Methods Inherited from class org.openapijsonschematools.client.schemas.DateTimeJsonSchema
validate

UuidSchema

public static class UuidSchema
extends UuidJsonSchema

A schema class that validates payloads

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

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