entitytled.RelationshipComponent

Relationship

Related Doc: package RelationshipComponent

trait Relationship[From <: (RelationshipComponent.this)#EntityTable[E, I], To <: slick.driver.JdbcProfile.API.Table[T], E <: (RelationshipComponent.this)#Entity[E, I], I, T, +C[_]] extends (RelationshipComponent.this)#Includable[From, E]

Represents a relationship between an owner entity and an owned relation.

From

The owner entity's table type.

To

The target relation's table type.

E

The owner entity's type.

I

The owner entity's ID type.

T

The target relation's type.

C

The type of the functor containing target relation values that are retrieved from the database.

Linear Supertypes
(RelationshipComponent.this)#Includable[From, E], AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Relationship
  2. Includable
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def actionFor(id: I)(implicit ec: ExecutionContext): slick.driver.JdbcProfile.API.DBIOAction[C[T], slick.driver.JdbcProfile.API.NoStream, Read]

    Returns a database action for retrieving the owned relations belong to the owner entity with the given ID.

    Returns a database action for retrieving the owned relations belong to the owner entity with the given ID.

    id

    The ID of the owner entity to build the action for.

    ec

    The execution context in which the action is the be build.

  2. abstract val emptyValue: C[T]

    Value to be used when the owner entity does not own any target relations.

  3. abstract def expandJoin[W <: slick.driver.JdbcProfile.API.Table[O], O](query: slick.driver.JdbcProfile.API.Query[(W, From), (O, E), Seq]): slick.driver.JdbcProfile.API.Query[(W, To), (O, T), Seq]

    Expands a join query from an origin relation to the owner relation, into a join query from that origin relation to the target relation.

    Expands a join query from an origin relation to the owner relation, into a join query from that origin relation to the target relation.

    W

    The origin relation's table type.

    O

    The origin relation's row type.

    query

    A join query from the origin relation to the owner relation.

  4. abstract def include(includables: (RelationshipComponent.this)#Includable[To, T]*): (RelationshipComponent.this)#Relationship[From, To, E, I, T, C]

    Modifies actions build for this relationship to include (eager-load) the given includables on the owned relations.

    Modifies actions build for this relationship to include (eager-load) the given includables on the owned relations.

    includables

    The includables to be included on database actions.

  5. abstract def inclusionActionFor(query: slick.driver.JdbcProfile.API.Query[From, E, Seq])(implicit ec: ExecutionContext): slick.driver.JdbcProfile.API.DBIOAction[Map[E, C[T]], slick.driver.JdbcProfile.API.NoStream, Read]

    Returns a database action that will result in a map of owner entities to their owned values for this relationship.

    Returns a database action that will result in a map of owner entities to their owned values for this relationship.

    The resulting map only includes owner entities for which the relationship is not empty.

    query

    The query for the relevant owner entities.

    ec

    The execution context this action is to be build in.

  6. abstract def innerJoinFor(query: slick.driver.JdbcProfile.API.Query[From, E, Seq]): slick.driver.JdbcProfile.API.Query[(From, To), (E, T), Seq]

    Returns a query for the inner product of the given owner entity query with the respective owned relations.

    Returns a query for the inner product of the given owner entity query with the respective owned relations.

    query

    Query for owner entities on which the set of owned relations is to be joined.

  7. abstract def queryFor(query: slick.driver.JdbcProfile.API.Query[From, E, Seq]): slick.driver.JdbcProfile.API.Query[To, T, Seq]

    Returns a query for all the owned relations belonging all the owner entities with retrieved by the given query.

    Returns a query for all the owned relations belonging all the owner entities with retrieved by the given query.

    query

    The query for owner entities for which to build a query for the owned relations.

  8. abstract def queryFor(id: I): slick.driver.JdbcProfile.API.Query[To, T, Seq]

    Returns a query for the owned relations belonging the owner entity with the given ID.

    Returns a query for the owned relations belonging the owner entity with the given ID.

    id

    The ID of the owner entity to build the query for.

Concrete 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 clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

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

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

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

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

    Definition Classes
    AnyRef → Any
  11. def includeOn[F[_]](action: slick.driver.JdbcProfile.API.DBIOAction[F[E], slick.driver.JdbcProfile.API.NoStream, Read], query: slick.driver.JdbcProfile.API.Query[From, E, Seq])(implicit arg0: Functor[F], ec: ExecutionContext): slick.driver.JdbcProfile.API.DBIOAction[F[E], slick.driver.JdbcProfile.API.NoStream, Read]

    Includes this relationship on a database action.

    Includes this relationship on a database action.

    F

    The type of the functor that contains the owner entity instance(s).

    action

    The entity action the relationship is to be included on.

    query

    The query that produced the database action the relationship is to be included on.

    ec

    The execution context in which the action is to be modified.

    returns

    The database action, modified to include this relationship on the resulting owner instance(s).

    Definition Classes
    RelationshipIncludable
  12. val inclusionKey: (RelationshipComponent.this)#Relationship[From, To, E, I, T, C]

  13. final def isInstanceOf[T0]: Boolean

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

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

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

    Definition Classes
    AnyRef
  17. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  18. def toString(): String

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

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from (RelationshipComponent.this)#Includable[From, E]

Inherited from AnyRef

Inherited from Any

Ungrouped