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(new JsonSchemaKeywordFlags.Builder().build());
// 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" |