Package

com.snowplowanalytics.iglu

schemaddl

Permalink

package schemaddl

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. schemaddl
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. case class FlatSchema(elems: ListMap[String, Map[String, String]], required: Set[String] = Set.empty[String]) extends Product with Serializable

    Permalink

    Flat schema container.

    Flat schema container. Contains self-describing properties in self and all primitive types as ordered flatten map in elems

    elems

    The ordered map of every primitive type in schema and it's unordered map of properties

  2. type IgluSchema = SelfDescribingSchema[JValue]

    Permalink

    Self-describing Schema container for JValue

  3. case class Migration(vendor: String, name: String, from: Full, to: Full, diff: SchemaDiff) extends Product with Serializable

    Permalink

    Class representing common information about Schema change, without details about specific DDLs

    Class representing common information about Schema change, without details about specific DDLs

    vendor

    Schema vendor

    name

    Schema name

    from

    source Schema version

    to

    target Schema version

    diff

    ordered map of added Schema properties

  4. type MigrationMap = Map[SchemaMap, List[Migration]]

    Permalink

    Map of Schemas to all its possible target schemas Examples: com.acme/event/1-0-0 -> [1-0-0/1-0-1, 1-0-0/1-0-2, 1-0-0/1-0-3] com.acme/event/1-0-1 -> [1-0-1/1-0-2, 1-0-1/1-0-3] com.acme/event/1-0-2 -> [1-0-2/1-0-3] com.acme/config/1-1-0 -> [1-1-0/1-0-1]

  5. type ModelGroup = (String, String, Int)

    Permalink

    Schema criterion restricted to model: vendor/name/m-*-* Tuple using as root key to bunch of Schemas differing only by addition (vendor, name, model)

  6. type PropertyList = ListMap[String, Map[String, String]]

    Permalink

    List of Schema properties First-level key is arbitrary property (like id, name etc) Second-level is map of JSON Schema properties (type, enum etc)

  7. type RevisionGroup = (String, String, Int, Int)

    Permalink

    Schema criterion restricted to revision: vendor/name/m-r-* Tuple using as root key to bunch of Schemas differing only by addition (vendor, name, model, revision) Hypothetical "lower" AdditionGroup could contain only one Schema

  8. type RevisionMigrationMap = Map[RevisionGroup, MigrationMap]

    Permalink

    Intermediate nested structure used to group schemas by revision Examples: com.acme/event/1-0-* -> MigrationMap com.acme/event/1-1-* -> MigrationMap com.acme/config/1-1-* -> MigrationMap com.google/schema/1-0-* -> MigrationMap

  9. type ValidMigrationMap = Map[SchemaMap, Validated[String, List[Migration]]]

    Permalink

    Failure-aware version of MigrationMap

Value Members

  1. object FlatSchema extends Serializable

    Permalink

    Flattens a JsonSchema into Strings representing the path to a field.

    Flattens a JsonSchema into Strings representing the path to a field. This will be linked with a Map of attributes that the field possesses.

  2. object Migration extends Serializable

    Permalink
  3. object StringUtils

    Permalink

    Utilities for manipulating Strings

  4. package bigquery

    Permalink
  5. package jsonschema

    Permalink
  6. package redshift

    Permalink

Inherited from AnyRef

Inherited from Any

Ungrouped