Package

fetch

Permalink

package fetch

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. fetch
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
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

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

    Permalink

    A query that can only be satisfied asynchronously.

    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

    Permalink
  4. trait DataSource[I, A] extends AnyRef

    Permalink

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

  5. trait DataSourceCache extends AnyRef

    Permalink

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

  6. type DataSourceIdentity = (DataSourceName, Any)

    Permalink
  7. type DataSourceName = String

    Permalink
  8. trait Env extends AnyRef

    Permalink

    An environment that is passed along during the fetch rounds.

    An environment that is passed along during the fetch rounds. It holds the cache and the list of rounds that have been executed.

  9. sealed trait ExecutionType extends Product with Serializable

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

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

    Permalink

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

  12. trait FetchException extends Throwable with Product with Serializable

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

    Permalink
  14. 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

    Permalink
  15. trait FetchMonadError[M[_]] extends MonadError[M, FetchException]

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

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

    Permalink

    Primitive operations in the Fetch Free monad.

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

    Permalink
  19. sealed trait FetchRequest extends Product with Serializable

    Permalink

    Requests in Fetch Free monad.

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

    Permalink

    A cache that stores its elements in memory.

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

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

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

    Permalink
  24. sealed trait Query[A] extends Product with Serializable

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

    Permalink

    A data structure that holds information about a fetch round.

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

    Permalink

    A query that can be satisfied synchronously.

    A query that can be satisfied synchronously. *

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

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

    Permalink

Value Members

  1. object Fetch extends FetchInterpreters with Serializable

    Permalink
  2. object FetchMonadError extends Serializable

    Permalink
  3. object InMemoryCache extends Serializable

    Permalink
  4. object Parallel extends ExecutionType with Product with Serializable

    Permalink
  5. object Query extends Serializable

    Permalink
  6. object Sequential extends ExecutionType with Product with Serializable

    Permalink
  7. implicit val fetchApplicative: Applicative[Fetch]

    Permalink
  8. object implicits

    Permalink
  9. package interpreters

    Permalink
  10. object syntax

    Permalink

Inherited from AnyRef

Inherited from Any

Ungrouped