Class

slick.jdbc

JdbcModelBuilder

Related Doc: package jdbc

Permalink

class JdbcModelBuilder extends Logging

Build a Slick model from introspecting the JDBC metadata.

In most cases you are better off transforming the generated model instead of overriding functionality here. It is only useful if you need easy access to the JDBC metadata in order to influence how the model is generated. A good use case would be interpreting column types or default values that Slick doesn't understand out of the box. If you just want to remove or hard code some default values, transform the resulting model instead.

The tight coupling can easily lead to source code incompatibilities in future versions. Avoid hooking in here if you don't have to.

Source
JdbcModelBuilder.scala
Linear Supertypes
Logging, AnyRef, Any
Known Subclasses
Type Hierarchy
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. JdbcModelBuilder
  2. Logging
  3. AnyRef
  4. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new JdbcModelBuilder(mTables: Seq[MTable], ignoreInvalidDefaults: Boolean)(implicit ec: ExecutionContext)

    Permalink

    ignoreInvalidDefaults

    see JdbcModelBuilder#ColumnBuilder#default

Type Members

  1. class Builders extends AnyRef

    Permalink
  2. class ColumnBuilder extends AnyRef

    Permalink

    Column model builder.

  3. class ForeignKeyBuilder extends AnyRef

    Permalink
  4. class IndexBuilder extends AnyRef

    Permalink
  5. class PrimaryKeyBuilder extends AnyRef

    Permalink
  6. class TableBuilder extends AnyRef

    Permalink

    Table model builder

  7. class TableNamer extends AnyRef

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from JdbcModelBuilder to any2stringadd[JdbcModelBuilder] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (JdbcModelBuilder, B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from JdbcModelBuilder to ArrowAssoc[JdbcModelBuilder] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. def buildModel: DBIO[Model]

    Permalink

    Creates a Slick data model from jdbc meta data.

    Creates a Slick data model from jdbc meta data. Foreign keys pointing out of the given tables are not included.

  8. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. def createBuilders(tablesByQName: Map[MQName, TableBuilder]): Builders

    Permalink
  10. def createColumnBuilder(tableBuilder: TableBuilder, meta: MColumn): ColumnBuilder

    Permalink

    Column model builder factory.

    Column model builder factory. Override for customization.

  11. def createForeignKeyBuilder(tableBuilder: TableBuilder, meta: Seq[MForeignKey]): ForeignKeyBuilder

    Permalink
  12. def createIndexBuilder(tableBuilder: TableBuilder, meta: Seq[MIndexInfo]): IndexBuilder

    Permalink
  13. def createPrimaryKeyBuilder(tableBuilder: TableBuilder, meta: Seq[MPrimaryKey]): PrimaryKeyBuilder

    Permalink
  14. def createTableBuilder(namer: TableNamer): DBIO[TableBuilder]

    Permalink

    Table model builder factory.

    Table model builder factory. Override for customization.

  15. def createTableNamer(meta: MTable): TableNamer

    Permalink
  16. def ensuring(cond: (JdbcModelBuilder) ⇒ Boolean, msg: ⇒ Any): JdbcModelBuilder

    Permalink
    Implicit information
    This member is added by an implicit conversion from JdbcModelBuilder to Ensuring[JdbcModelBuilder] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  17. def ensuring(cond: (JdbcModelBuilder) ⇒ Boolean): JdbcModelBuilder

    Permalink
    Implicit information
    This member is added by an implicit conversion from JdbcModelBuilder to Ensuring[JdbcModelBuilder] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  18. def ensuring(cond: Boolean, msg: ⇒ Any): JdbcModelBuilder

    Permalink
    Implicit information
    This member is added by an implicit conversion from JdbcModelBuilder to Ensuring[JdbcModelBuilder] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  19. def ensuring(cond: Boolean): JdbcModelBuilder

    Permalink
    Implicit information
    This member is added by an implicit conversion from JdbcModelBuilder to Ensuring[JdbcModelBuilder] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  20. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  21. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  22. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  23. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from JdbcModelBuilder to StringFormat[JdbcModelBuilder] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  24. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  25. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  26. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  27. def jdbcTypeToScala(jdbcType: Int, typeName: String = ""): ClassTag[_]

    Permalink

    Converts from java.sql.Types w/ type name to the corresponding Java class name (with fully qualified path).

  28. lazy val logger: SlickLogger

    Permalink
    Attributes
    protected[this]
    Definition Classes
    Logging
  29. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  30. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  31. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  32. def readColumns(t: MTable): DBIO[Vector[MColumn]]

    Permalink

    Read the column metadata for a table in ordinal position order

  33. def readForeignKeys(t: MTable): DBIO[Seq[Seq[MForeignKey]]]

    Permalink

    Read the foreign key metadata for a table grouped by name and in key sequence order

  34. def readIndices(t: MTable): DBIO[Seq[Seq[MIndexInfo]]]

    Permalink

    Read the index metadata grouped by name and in ordinal position order

  35. def readPrimaryKeys(t: MTable): DBIO[Vector[MPrimaryKey]]

    Permalink

    Read the primary key metadata for a table in key sequence order

  36. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  37. lazy val tableNamers: Seq[TableNamer]

    Permalink
  38. lazy val tableNamersByQName: Map[MQName, TableNamer]

    Permalink
  39. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  40. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  41. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  42. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  43. def [B](y: B): (JdbcModelBuilder, B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from JdbcModelBuilder to ArrowAssoc[JdbcModelBuilder] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Inherited from Logging

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from JdbcModelBuilder to any2stringadd[JdbcModelBuilder]

Inherited by implicit conversion StringFormat from JdbcModelBuilder to StringFormat[JdbcModelBuilder]

Inherited by implicit conversion Ensuring from JdbcModelBuilder to Ensuring[JdbcModelBuilder]

Inherited by implicit conversion ArrowAssoc from JdbcModelBuilder to ArrowAssoc[JdbcModelBuilder]

Basic customization overrides

Ungrouped