fetch

package fetch

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. fetch
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. final case class Ap[A, B](ff: Query[(A) ⇒ B], fa: Query[A]) extends Query[B] with Product with Serializable

  2. final case class Async[A](action: ((A) ⇒ Unit, (Throwable) ⇒ Unit) ⇒ Unit, timeout: Duration) extends Query[A] with Product with Serializable

    A query that can only be satisfied asynchronously.

  3. final case class Concurrent(queries: NonEmptyList[FetchQuery[Any, Any]]) extends FetchOp[InMemoryCache] with FetchRequest with Product with Serializable

  4. trait DataSource[I, A] extends AnyRef

    A DataSource is the recipe for fetching a certain identity I, which yields results of type A.

  5. trait DataSourceCache extends AnyRef

    A Cache trait so the users of the library can provide their own cache.

  6. type DataSourceIdentity = (DataSourceName, Any)

  7. type DataSourceName = String

  8. trait Env extends AnyRef

    An environment that is passed along during the fetch rounds.

  9. sealed trait ExecutionType extends Product with Serializable

  10. type Fetch[A] = Free[FetchOp, A]

  11. case class FetchEnv(cache: DataSourceCache, rounds: Queue[Round] = ...) extends Env with Product with Serializable

    A concrete implementation of Env used in the default Fetch interpreter.

  12. trait FetchException extends Throwable with Product with Serializable

  13. type FetchInterpreter[M[_]] = AnyRef { type f[x] = cats.data.StateT[M,fetch.FetchEnv,x] }

  14. trait FetchInterpreters extends AnyRef

  15. final case class FetchMany[I, A](ids: NonEmptyList[I], ds: DataSource[I, A]) extends FetchOp[List[A]] with FetchQuery[I, A] with Product with Serializable

  16. trait FetchMonadError[M[_]] extends MonadError[M, FetchException]

  17. final case class FetchOne[I, A](id: I, ds: DataSource[I, A]) extends FetchOp[A] with FetchQuery[I, A] with Product with Serializable

  18. sealed abstract class FetchOp[A] extends Product with Serializable

    Primitive operations in the Fetch Free monad.

  19. sealed trait FetchQuery[I, A] extends FetchRequest

  20. sealed trait FetchRequest extends Product with Serializable

    Requests in Fetch Free monad.

  21. case class InMemoryCache(state: Map[(DataSourceName, Any), Any]) extends DataSourceCache with Product with Serializable

    A cache that stores its elements in memory.

  22. final case class Join[A, B](fl: Fetch[A], fr: Fetch[B]) extends FetchOp[(A, B)] with Product with Serializable

  23. case class MissingIdentities(env: Env, missing: Map[DataSourceName, List[Any]]) extends Throwable with FetchException with Product with Serializable

  24. case class NotFound(env: Env, request: FetchOne[_, _]) extends Throwable with FetchException with Product with Serializable

  25. sealed trait Query[A] extends Product with Serializable

  26. case class Round(cache: DataSourceCache, request: FetchRequest, response: Any, start: Long, end: Long) extends Product with Serializable

    A data structure that holds information about a fetch round.

  27. final case class Sync[A](action: Eval[A]) extends Query[A] with Product with Serializable

    A query that can be satisfied synchronously.

  28. final case class Thrown[A](err: Throwable) extends FetchOp[A] with Product with Serializable

  29. case class UnhandledException(env: Env, err: Throwable) extends Throwable with FetchException with Product with Serializable

Value Members

  1. object Fetch extends FetchInterpreters with Serializable

  2. object FetchMonadError extends Serializable

  3. object InMemoryCache extends Serializable

  4. object Parallel extends ExecutionType with Product with Serializable

  5. object Query extends Serializable

  6. object Sequential extends ExecutionType with Product with Serializable

  7. implicit val fetchApplicative: Applicative[Fetch]

  8. object implicits

  9. package interpreters

  10. object syntax

Inherited from AnyRef

Inherited from Any

Ungrouped