RedisTransaction

case class RedisTransaction[F[_], K, V](cmd: RedisCommands[F, K, V])(`evidence$1`: Async[F], `evidence$2`: Log[F])
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any

Value members

Methods

def exec[T <: HList](commands: T)(w: Witness[T]): F[R]

* Exclusively run Redis commands as part of a transaction.

Every command needs to be forked (.start) to be sent to the server asynchronously. After a transaction is complete, either successfully or with a failure, the spawned fibers will be treated accordingly.

It should not be used to run other computations, only Redis commands. Fail to do so may end in unexpected results such as a dead lock.

Returns

F[R] or it raises a @TransactionError in case of failure.

def filterExec[T <: HList](commands: T)(w: WitnessFilter[T]): F[S]

Same as @exec, except it filters out values of type Unit from its result.

Inherited methods

def productElementNames: Iterator[String]
Inherited from
Product
def productIterator: Iterator[Any]
Inherited from
Product