Packages

object TypedPostResponse

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

Type Members

  1. case class AndThen[P, Q, V, W, ID](first: TypedPostResponse[P, W, ID], second: Callback[Q, W, V, ID])(implicit pw: Postable[P, W, ID], qw: Postable[Q, W, ID]) extends TypedPostResponse[P, W, ID] with Product with Serializable
  2. 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

    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

  3. case class ComposedResponse[P, Q, W, ID](first: TypedPostResponse[P, W, ID], second: TypedPostResponse[Q, W, ID])(implicit pw: Postable[P, W, ID], qw: Postable[Q, W, ID]) extends TypedPostResponse[P, W, ID] with Product with Serializable
  4. case class ConcurrentResponse[P, W, ID](first: TypedPostResponse[P, W, ID], second: TypedPostResponse[P, W, ID])(implicit pw: Postable[P, W, ID]) extends TypedPostResponse[P, W, ID] with Product with Serializable
  5. case class DualMiniBot[P, Q, W, V, ID](responses: (V) => (P) => Vector[Future[Q]], predicate: (V) => Boolean = (_: V) => true, name: Option[String] = None)(implicit pw: Postable[P, W, ID], qw: Postable[Q, W, ID], lv: LocalQueryable[V, W, ID], dg: DataGetter[Q, W, ID]) extends TypedPostResponse[P, W, ID] with Product with Serializable

    Bot responding to a post returning a vector of posts for each value of the auxiliary queryable - so even if the auxiliary has a single response, many posts are made but posts are in the future : this works if branches are known in advance but each branch calculation is expensive.

    Bot responding to a post returning a vector of posts for each value of the auxiliary queryable - so even if the auxiliary has a single response, many posts are made but posts are in the future : this works if branches are known in advance but each branch calculation is expensive.

    responses

    the responses of the bot

    predicate

    the condition the post must satisfy to trigger the bot

    pw

    postability of the post type

    qw

    postability of the response post type

    lv

    queryability of the other arguments

  6. case class DualMiniBotTask[P, Q, W, V, ID](responses: (V) => (P) => Vector[Task[Q]], predicate: (V) => Boolean = (_: V) => true, name: Option[String] = None)(implicit pw: Postable[P, W, ID], qw: Postable[Q, W, ID], lv: LocalQueryable[V, W, ID], dg: DataGetter[Q, W, ID]) extends TypedPostResponse[P, W, ID] with Product with Serializable

    Bot responding to a post returning a vector of posts for each value of the auxiliary queryable - so even if the auxiliary has a single response, many posts are made but posts are in the future : this works if branches are known in advance but each branch calculation is expensive.

    Bot responding to a post returning a vector of posts for each value of the auxiliary queryable - so even if the auxiliary has a single response, many posts are made but posts are in the future : this works if branches are known in advance but each branch calculation is expensive.

    responses

    the responses of the bot

    predicate

    the condition the post must satisfy to trigger the bot

    pw

    postability of the post type

    qw

    postability of the response post type

    lv

    queryability of the other arguments

  7. case class MicroBot[P, Q, W, V, ID](response: (V) => (P) => Future[Q], predicate: (P) => (V) => Boolean = (_: P) => (_ : V) => true, name: Option[String] = None)(implicit ppw: Postable[P, W, ID], qw: Postable[Q, W, ID], lv: LocalQueryable[V, W, ID], dg: DataGetter[Q, W, ID]) extends TypedPostResponse[P, W, ID] with Product with Serializable

    Bot responding to a post returning a vector of posts, one for each value of the auxiliary queryable (in simple cases a singleton is returned)

    Bot responding to a post returning a vector of posts, one for each value of the auxiliary queryable (in simple cases a singleton is returned)

    response

    the action of the bot

    predicate

    the condition the post must satisfy to trigger the bot

    qw

    postability of the response post type

    lv

    queryability of the other arguments

  8. case class MiniBot[P, Q, W, V, ID](responses: (V) => (P) => Future[Vector[Q]], predicate: (V) => Boolean = (_: V) => true, name: Option[String] = None)(implicit pw: Postable[P, W, ID], qw: Postable[Q, W, ID], lv: LocalQueryable[V, W, ID], dg: DataGetter[Q, W, ID]) extends TypedPostResponse[P, W, ID] with Product with Serializable

    Bot responding to a post returning a vector of posts for each value of the auxiliary queryable - so even if the auxiliary has a single response, many posts are made

    Bot responding to a post returning a vector of posts for each value of the auxiliary queryable - so even if the auxiliary has a single response, many posts are made

    responses

    the responses of the bot

    predicate

    the condition the post must satisfy to trigger the bot

    pw

    postability of the post type

    qw

    postability of the response post type

    lv

    queryability of the other arguments

  9. case class PairBot[P, Q1, Q2 <: HList, W, V, ID](response: (V) => (P) => Future[::[Q1, Q2]], predicate: (V) => Boolean = (_ : V) => true)(implicit pw: Postable[P, W, ID], q1w: Postable[Q1, W, ID], q2w: Postable[Q2, W, ID], lv: LocalQueryable[V, W, ID]) extends TypedPostResponse[P, W, ID] with Product with Serializable

    Probabaly not needed, need to just post pairs

  10. case class ReducedResponse[P, Q, R, W, ID](first: TypedPostResponse[P, W, ID], reduce: (Vector[Q]) => R)(implicit pw: Postable[P, W, ID], qw: Postable[Q, W, ID], rw: Postable[R, W, ID], dgr: DataGetter[R, W, ID]) extends TypedPostResponse[P, W, ID] with Product with Serializable

Value Members

  1. object Callback extends Serializable
  2. object MicroBot extends Serializable