fetch
package
fetch
Type Members
-
final
case class
Cached[A](a: A) extends FetchOp[A] with Product with Serializable
-
final
case class
Concurrent(as: List[FetchMany[_, _]]) extends FetchOp[Env] with Product with Serializable
-
final
case class
ConcurrentRound(ids: Map[String, List[Any]]) extends RoundKind with Product with Serializable
-
trait
DataSource[I, A] extends AnyRef
-
-
type
DataSourceIdentity = (DataSourceName, Any)
-
type
DataSourceName = String
-
trait
Env extends AnyRef
-
type
Fetch[A] = Free[FetchOp, A]
-
case class
FetchEnv(cache: DataSourceCache, ids: List[Any] = Nil, rounds: Queue[Round] = Queue.empty) extends Env with Product with Serializable
-
final
case class
FetchError[A, E <: Throwable](err: E) extends FetchOp[A] with Product with Serializable
-
case class
FetchFailure(env: Env) extends Throwable with Product with Serializable
-
type
FetchInterpreter[M[_]] = AnyRef { type f[x] = cats.data.StateT[M,fetch.FetchEnv,x] }
-
-
final
case class
FetchMany[I, A](as: NonEmptyList[I], ds: DataSource[I, A]) extends FetchOp[List[A]] with Product with Serializable
-
type
FetchMonadError[M[_]] = MonadError[M, Throwable]
-
final
case class
FetchOne[I, A](a: I, ds: DataSource[I, A]) extends FetchOp[A] with Product with Serializable
-
sealed abstract
class
FetchOp[A] extends Product with Serializable
-
-
final
case class
ManyRound(ids: List[Any]) extends RoundKind with Product with Serializable
-
final
case class
OneRound(id: Any) extends RoundKind with Product with Serializable
-
case class
Round(cache: DataSourceCache, ds: DataSourceName, kind: RoundKind, startRound: Long, endRound: Long, cached: Boolean = false) extends Product with Serializable
-
sealed
trait
RoundKind extends AnyRef
Value Members
-
-
object
InMemoryCache extends Serializable
-
implicit
val
fetchApplicative: Applicative[Fetch]
-
-
Inherited from AnyRef
Inherited from Any