org.openapijsonschematools.client.components.schemas.EnumClass.java
public class EnumClass
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
- enum classes
| Modifier and Type | Class and Description |
|---|---|
| sealed interface | EnumClass.EnumClass1Boxed sealed interface for validated payloads |
| record | EnumClass.EnumClass1BoxedString boxed class to store validated String payloads |
| static class | EnumClass.EnumClass1 schema class |
| enum | EnumClass.StringEnumClassEnums String enum |
public sealed interface EnumClass1Boxed
permits
EnumClass1BoxedString
sealed interface that stores validated payloads using boxed classes
public record EnumClass1BoxedString
implements EnumClass1Boxed
record that stores validated String payloads, sealed permits implementation
| Constructor and Description |
|---|
| EnumClass1BoxedString(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 EnumClass1
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.EnumClass;
import java.util.Arrays;
import java.util.List;
import java.util.AbstractMap;
static final SchemaConfiguration configuration = new SchemaConfiguration(JsonSchemaKeywordFlags.ofNone());
// String validation
String validatedPayload = EnumClass.EnumClass1.validate(
"_abc",
configuration
);
| Modifier and Type | Field and Description |
|---|---|
| Set<Class<?>> | type = Set.of( String.class ) |
| Set | enumValues = SetMaker.makeSet( "_abc", "-efg", "(xyz)", "COUNT_1M", "COUNT_50M" ) |
| @Nullable Object | defaultValue = "-efg" |
| Modifier and Type | Method and Description |
|---|---|
| String | validate(String arg, SchemaConfiguration configuration) |
| String | validate(StringEnumClassEnums arg, SchemaConfiguration configuration) |
| EnumClass1BoxedString | validateAndBox(String arg, SchemaConfiguration configuration) |
| EnumClass1Boxed | validateAndBox(@Nullable Object arg, SchemaConfiguration configuration) |
| @Nullable Object | validate(@Nullable Object arg, SchemaConfiguration configuration) |
public enum StringEnumClassEnums
extends Enum<StringEnumClassEnums>
A class that stores String enum values
| Enum Constant | Description |
|---|---|
| LOW_LINE_ABC | value = "_abc" |
| HYPHEN_MINUS_EFG | value = "-efg" |
| LEFT_PARENTHESIS_XYZ_RIGHT_PARENTHESIS | value = "(xyz)" |
| COUNT_1M | value = "COUNT_1M" |
| COUNT_50M | value = "COUNT_50M" |