Trait

play.api.db.slick

HasDatabaseConfigProvider

Related Doc: package slick

Permalink

trait HasDatabaseConfigProvider[P <: BasicProfile] extends HasDatabaseConfig[P]

Mix-in this trait if you need a Slick database and profile, and you are using dependency injection for obtaining an instance of DatabaseConfigProvider. If you are not using dependency injection, then prefer mixing HasDatabaseConfig instead.

This trait is useful if you need to define a Slick table or need to execute some operation in the database.

Example

// model definition
class Cat(name: String, color: String)
// DAO definition
class CatDAO @Inject()(protected val dbConfigProvider: DatabaseConfigProvider) extends HasDatabaseConfigProvider[RelationalProfile] {
import profile.api._

private val Cats = TableQuery[CatsTable]
def all() = db.run(Cats.result)
def insert(cat: Cat) = db.run(Cats += cat)

// Slick table definition
private class CatsTable(tag: Tag) extends Table[Cat](tag, "CAT") {
def name = column[String]("NAME", O.PrimaryKey)
def color = column[String]("COLOR")
def * = (name, color) <> (Cat.tupled, Cat.unapply _)
}
}

Of course, you do not need to define a DAO to use this trait (the above it is really just an example of usage).

Source
DatabaseConfigProvider.scala
Linear Supertypes
HasDatabaseConfig[P], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. HasDatabaseConfigProvider
  2. HasDatabaseConfig
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract val dbConfigProvider: DatabaseConfigProvider

    Permalink

    The provider of a Slick DatabaseConfig instance.

    The provider of a Slick DatabaseConfig instance.

    Attributes
    protected

Concrete Value Members

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

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

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def db: slick.basic.BasicProfile.Backend.Database

    Permalink

    The Slick database extracted from dbConfig.

    The Slick database extracted from dbConfig.

    Attributes
    protected
    Definition Classes
    HasDatabaseConfig
  7. final lazy val dbConfig: slick.basic.DatabaseConfig[P]

    Permalink

    The Slick database configuration.

    The Slick database configuration.

    Attributes
    protected
    Definition Classes
    HasDatabaseConfigProviderHasDatabaseConfig
  8. final def eq(arg0: AnyRef): Boolean

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. final def getClass(): Class[_]

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

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

    Permalink
    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  17. final lazy val profile: P

    Permalink

    The Slick profile extracted from dbConfig.

    The Slick profile extracted from dbConfig.

    Attributes
    protected
    Definition Classes
    HasDatabaseConfig
  18. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  19. def toString(): String

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

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. final lazy val driver: P

    Permalink
    Attributes
    protected
    Definition Classes
    HasDatabaseConfig
    Annotations
    @deprecated
    Deprecated

    (Since version 2.1) Use profile instead of driver

Inherited from HasDatabaseConfig[P]

Inherited from AnyRef

Inherited from Any

Ungrouped