classCassandraZioContext[N <: NamingStrategy] extends CassandraRowContext[N] with ZioContext[CqlIdiom, N] with StandardContext[CqlIdiom, N] with CioOps
Quill context that executes Cassandra queries inside of ZIO.
Quill context that executes Cassandra queries inside of ZIO. Unlike most other contexts
that require passing in a Data Source, this context takes in a ZioCassandraSession
as a resource dependency which can be provided later (see the ZioCassandraSession object for helper methods
that assist in doing this).
The resource dependency itself is just a Has[ZioCassandraSession]
Various methods in the io.getquill.ZioCassandraSession can assist in simplifying it's creation, for example, you can
provide a Config object instead of a ZioCassandraSession like this
(note that the resulting ZioCassandraSession has a closing bracket).
{{
val zioSession =
ZioCassandraSession.fromPrefix("testStreamDB")
}}
If you are using a Plain Scala app however, you will need to manually run it e.g. using zio.Runtime
{{
Runtime.default.unsafeRun(MyZioContext.run(query[Person]).provideCustomLayer(zioSession))
}}
case classCassandraZioSession(cluster: Cluster, keyspace: String, preparedStatementCacheSize: Long) extends CassandraSession with SyncCache with AsyncZioCache with AutoCloseable with Product with Serializable
Quill context that executes Cassandra queries inside of ZIO. Unlike most other contexts that require passing in a Data Source, this context takes in a
ZioCassandraSession
as a resource dependency which can be provided later (see theZioCassandraSession
object for helper methods that assist in doing this).The resource dependency itself is just a Has[ZioCassandraSession]
Various methods in the
io.getquill.ZioCassandraSession
can assist in simplifying it's creation, for example, you can provide aConfig
object instead of aZioCassandraSession
like this (note that the resulting ZioCassandraSession has a closing bracket). {{ val zioSession = ZioCassandraSession.fromPrefix("testStreamDB") }}If you are using a Plain Scala app however, you will need to manually run it e.g. using zio.Runtime {{ Runtime.default.unsafeRun(MyZioContext.run(query[Person]).provideCustomLayer(zioSession)) }}