package validation
- Alphabetic
- Public
- All
Type Members
-
case class
AlternativeIssues(alternatives: List[List[SchemaCompatibilityIssue]]) extends SchemaCompatibilityIssue with Product with Serializable
An issue raised when a schema is not compatible with any of the alternatives in a target union schema.
An issue raised when a schema is not compatible with any of the alternatives in a target union schema.
- alternatives
a list of non-empty lists of issues, where each list corresponds to one of the alternatives
- case class ArrayLengthBoundsMismatch(writerBounds: Bounds[Int], readerBounds: Bounds[Int]) extends SchemaCompatibilityIssue with Product with Serializable
- case class Bound[T](value: T, inclusive: Boolean) extends Product with Serializable
- case class Bounds[T](min: Option[Bound[T]], max: Option[Bound[T]]) extends Product with Serializable
- case class DiscriminatorPropertyMismatch(writerDiscriminator: String, readerDiscriminator: String) extends SchemaCompatibilityIssue with Product with Serializable
- case class EnumMismatch(incompatibleWriterValues: Option[List[ExampleValue]], readerValues: List[ExampleValue]) extends SchemaCompatibilityIssue with Product with Serializable
- case class FormatMismatch(writerFormat: Option[String], readerFormat: String) extends SchemaCompatibilityIssue with Product with Serializable
-
case class
GeneralSchemaMismatch(writerSchema: Schema, readerSchema: Schema) extends SchemaCompatibilityIssue with Product with Serializable
A SchemaCompatibilityIssue used when the schemas are different but the comparator was unable to determine compatibility.
A SchemaCompatibilityIssue used when the schemas are different but the comparator was unable to determine compatibility. Thus, the schemas may or may not be compatible.
- case class IncompatibleAdditionalProperties(subschemaIssues: List[SchemaCompatibilityIssue]) extends SubschemaCompatibilityIssue with Product with Serializable
- case class IncompatibleDiscriminatorCase(discriminatorValue: String, subschemaIssues: List[SchemaCompatibilityIssue]) extends SubschemaCompatibilityIssue with Product with Serializable
- case class IncompatibleItems(subschemaIssues: List[SchemaCompatibilityIssue]) extends SubschemaCompatibilityIssue with Product with Serializable
- case class IncompatiblePrefixItem(index: Int, subschemaIssues: List[SchemaCompatibilityIssue]) extends SubschemaCompatibilityIssue with Product with Serializable
- case class IncompatibleProperty(property: String, subschemaIssues: List[SchemaCompatibilityIssue]) extends SubschemaCompatibilityIssue with Product with Serializable
- case class IncompatiblePropertyNames(subschemaIssues: List[SchemaCompatibilityIssue]) extends SubschemaCompatibilityIssue with Product with Serializable
- case class IncompatibleUnionVariant(index: Int, subschemaIssues: List[SchemaCompatibilityIssue]) extends SubschemaCompatibilityIssue with Product with Serializable
- case class MissingDependentRequiredProperties(property: String, newRequiredProperties: Set[String]) extends SchemaCompatibilityIssue with Product with Serializable
- case class MissingRequiredProperties(newRequiredProperties: Set[String]) extends SchemaCompatibilityIssue with Product with Serializable
- case class MultipleOfMismatch(writerMultiplier: Option[BigDecimal], readerMultiplier: BigDecimal) extends SchemaCompatibilityIssue with Product with Serializable
- case class NoValuesAllowed(writerSchema: Schema) extends SchemaCompatibilityIssue with Product with Serializable
- case class NumericBoundsMismatch(writerBounds: Bounds[BigDecimal], readerBounds: Bounds[BigDecimal]) extends SchemaCompatibilityIssue with Product with Serializable
- case class ObjectSizeBoundsMismatch(writerBounds: Bounds[Int], readerBounds: Bounds[Int]) extends SchemaCompatibilityIssue with Product with Serializable
- case class PatternMismatch(writerPattern: Option[Pattern], readerPattern: Pattern) extends SchemaCompatibilityIssue with Product with Serializable
-
class
SchemaComparator extends AnyRef
Utility for comparing schemas for compatibility.
Utility for comparing schemas for compatibility. See compare for more details.
Since this class contains a cache of comparison results, it is meant to be reused between multiple schema comparisons.
- sealed abstract class SchemaCompatibilityIssue extends AnyRef
- class SchemaResolver extends AnyRef
- case class StringLengthBoundsMismatch(writerBounds: Bounds[Int], readerBounds: Bounds[Int]) extends SchemaCompatibilityIssue with Product with Serializable
-
sealed abstract
class
SubschemaCompatibilityIssue extends SchemaCompatibilityIssue
Base class for compatibility issues which aggregate issues from a subschema.
Base class for compatibility issues which aggregate issues from a subschema. A _subschema_ is a schema used within a structure of another schema, e.g. a schema for an array item, a property, etc.
- case class TypeMismatch(incompatibleWriterTypes: List[SchemaType], readerTypes: List[SchemaType]) extends SchemaCompatibilityIssue with Product with Serializable
- case class UnsupportedDiscriminatorValues(unsupportedValues: List[String]) extends SchemaCompatibilityIssue with Product with Serializable
Value Members
- object Bound extends Serializable
- object SchemaResolver
- object UniqueItemsRequired extends SchemaCompatibilityIssue with Product with Serializable