All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.twitter.conversions.common.zookeeper.scala Maven / Gradle / Ivy

There is a newer version: 6.38.0
Show newest version
package com.twitter.conversions.common

import com.twitter.common.zookeeper.ZooKeeperClient
import com.twitter.conversions.common.quantity.COMMON_FOREVER
import com.twitter.util.{Duration, FuturePool}
import com.twitter.zk.{CommonConnector, ZkClient}
import scala.language.implicitConversions

/** Adapters for common's ZooKeeperClient (and, later, serversets, etc) */
object zookeeper {
  class CommonZkClientAdapter(zkc: ZooKeeperClient) {
    def toConnector(timeout: Duration = COMMON_FOREVER)
                   (implicit pool: FuturePool): CommonConnector = {
      new CommonConnector(zkc, timeout)
    }

    def toZkClient(timeout: Duration = COMMON_FOREVER)(implicit pool: FuturePool): ZkClient = {
      ZkClient(toConnector(timeout))
    }
  }

  /** Implicit conversion of ZooKeeperClient to CommonZkClient */
  implicit def commonZkClient(zkc: ZooKeeperClient): CommonZkClientAdapter =
    new CommonZkClientAdapter(zkc)
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy