Sha256: 84a56ac81e147d5893628eb2195bb692e994205baae523eadb9f7194d8666108

Contents?: true

Size: 657 Bytes

Versions: 2

Compression:

Stored size: 657 Bytes

Contents

package org.embulk.filter.key_in_redis.redis

import scala.concurrent.{ExecutionContext, Future}
import scala.util.{Failure, Success}
import scalaz._, Scalaz._
import scalaz.concurrent._

final class FutureExtensionOps[A](self: Future[A]) {
  def toTask(implicit ec: ExecutionContext): Task[A] = Task.async { register =>
    self.onComplete {
      case Success(v) => register(v.right)
      case Failure(ex) => register(ex.left)
    }
  }
}

trait ToFutureExtensionOps {
  implicit def toFutureExtensionOps[A](
      future: Future[A]): FutureExtensionOps[A] =
    new FutureExtensionOps(future)
}

object ToFutureExtensionOps extends ToFutureExtensionOps

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
embulk-filter-key_in_redis-0.1.2 src/main/scala/org/embulk/filter/key_in_redis/redis/TaskExtensionOps.scala
embulk-filter-key_in_redis-0.1.1 src/main/scala/org/embulk/filter/key_in_redis/redis/TaskExtensionOps.scala