Packages

case class Callback[P, W, V, ID](update: (W) => (V) => (P) => Future[Unit], predicate: (V) => Boolean = (_ : V) => true, name: Option[String] = None)(implicit pw: Postable[P, W, ID], lv: LocalQueryable[V, W, ID]) extends TypedPostResponse[P, W, ID] with Product with Serializable

Callback executed on a post of type P; the returned task gives an empty vector, but running it executes the callback, in fact, a callback is executed for each value of the auxiliary queryable

update

the callback, may also update the web as a side-effect

predicate

condition on post to trigger callbask

pw

postability

lv

queryability of parameters on which the callback depends

Linear Supertypes
Serializable, Product, Equals, TypedPostResponse[P, W, ID], PostResponse[W, ID], AnyRef, Any
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Callback
  2. Serializable
  3. Product
  4. Equals
  5. TypedPostResponse
  6. PostResponse
  7. AnyRef
  8. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new Callback(update: (W) => (V) => (P) => Future[Unit], predicate: (V) => Boolean = (_ : V) => true, name: Option[String] = None)(implicit pw: Postable[P, W, ID], lv: LocalQueryable[V, W, ID])

    update

    the callback, may also update the web as a side-effect

    predicate

    condition on post to trigger callbask

    pw

    postability

    lv

    queryability of parameters on which the callback depends

Type Members

  1. type PostType = P
    Definition Classes
    TypedPostResponsePostResponse

Value Members

  1. def &&(that: TypedPostResponse[P, W, ID]): ConcurrentResponse[P, W, ID]
    Definition Classes
    TypedPostResponse
  2. def >>[Q](that: TypedPostResponse[Q, W, ID])(implicit qw: Postable[Q, W, ID], dg: DataGetter[Q, W, ID]): ComposedResponse[P, Q, W, ID]
    Definition Classes
    TypedPostResponse
  3. def andThen[Q, V](second: Callback[Q, W, V, ID])(implicit pw: Postable[P, W, ID], qw: Postable[Q, W, ID]): AndThen[P, Q, V, W, ID]
    Definition Classes
    TypedPostResponse
  4. val name: Option[String]
  5. def post(web: W, content: P, id: ID): Future[Vector[PostData[_, W, ID]]]
    Definition Classes
    CallbackTypedPostResponsePostResponse
  6. val predicate: (V) => Boolean
  7. def productElementNames: Iterator[String]
    Definition Classes
    Product
  8. implicit val pw: Postable[P, W, ID]
    Definition Classes
    TypedPostResponse
  9. def reduce[Q, R](reduction: (Vector[Q]) => R)(implicit qw: Postable[Q, W, ID], rw: Postable[R, W, ID], dgr: DataGetter[R, W, ID]): ReducedResponse[P, Q, R, W, ID]
    Definition Classes
    TypedPostResponse
  10. def respond(web: W)(pds: Vector[PostData[PostType, W, ID]]): Future[Vector[PostData[_, W, ID]]]
    Definition Classes
    PostResponse
  11. def triggerWith[R](implicit rw: Postable[R, W, ID], pq: LocalQueryable[P, W, ID]): Callback[R, W, ::[P, ::[V, HNil]], ID]
  12. val update: (W) => (V) => (P) => Future[Unit]