Packages

final case class FlatSchema(subschemas: SubSchemas, required: Set[SchemaPointer], parents: SubSchemas) extends Product with Serializable

An object represents flattened JSON Schema, i.e. JSON Schema processed with an algorithm that unfolds nested JSON structure into sequence of typed pointers - JSON Pointers, pointing to leaf schemas - schemas that cannot be flattened further. Leaf schemas are mostly primitive values (strings, booleans etc), but also can be something that could not be flattened

This is mostly a transitive tool and should not be used by user-code and instead user should be creating *ordered* list of typed pointers from multiple schema via FlatSchema.extractProperties

subschemas

set of typed pointers (order should not matter at this point)

required

keys listed in required property, whose parents also listed in required some of parent properties still can be null and thus not required

parents

keys that are not primitive, but can contain important information (e.g. nullability)

Linear Supertypes
Serializable, Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. FlatSchema
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new FlatSchema(subschemas: SubSchemas, required: Set[SchemaPointer], parents: SubSchemas)

    subschemas

    set of typed pointers (order should not matter at this point)

    required

    keys listed in required property, whose parents also listed in required some of parent properties still can be null and thus not required

    parents

    keys that are not primitive, but can contain important information (e.g. nullability)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def checkUnionSubSchema(pointer: SchemaPointer): Boolean
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  10. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  11. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. def nestedNullable(pointer: SchemaPointer): Boolean

    Any parent properties contain null in type or enum

  13. def nestedRequired(current: SchemaPointer): Boolean

    All parents are required

    All parents are required

    Annotations
    @tailrec()
  14. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  15. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  16. val parents: SubSchemas
  17. val required: Set[SchemaPointer]
  18. def show: String
  19. val subschemas: SubSchemas
  20. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  21. def toMap: Map[SchemaPointer, Schema]
  22. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  25. def withLeaf(pointer: SchemaPointer, schema: Schema): FlatSchema

    Add a JSON Pointer that can be converted into a separate column

  26. def withParent(pointer: SchemaPointer, schema: Schema): FlatSchema
  27. def withRequired(pointer: SchemaPointer, schema: Schema): FlatSchema

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped