当前位置: 首页>>代码示例>>Scala>>正文


Scala Stat类代码示例

本文整理汇总了Scala中org.apache.zookeeper.data.Stat的典型用法代码示例。如果您正苦于以下问题:Scala Stat类的具体用法?Scala Stat怎么用?Scala Stat使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了Stat类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Scala代码示例。

示例1: close

//设置package包名称以及导入依赖的类
package com.github.ybr.zk.client

import akka.NotUsed
import akka.stream.Materializer
import akka.stream.scaladsl.Source

import org.apache.zookeeper._
import org.apache.zookeeper.data.{ACL, Stat}

import scala.concurrent._

trait ZooKeeperClient {
  def close(): Unit

  def create[A](path: String, data: Array[Byte], acl: List[ACL], createMode: CreateMode, ctx: Option[A])(implicit ec: ExecutionContext): Future[CreateResponse[A]]
  def delete[A](path: String, version: Int, ctx: Option[A])(implicit ec: ExecutionContext): Future[VoidResponse[A]] 

  def exists(path: String)(implicit ec: ExecutionContext): Future[StatResponse[Nothing]]
  def watchExists[A](path: String, ctx: Option[A])(implicit ec: ExecutionContext): Future[(StatResponse[A], Source[(StatResponse[A], WatchedEvent), NotUsed])]

  def getACL[A](path: String, stat: Stat, ctx: Option[A])(implicit ec: ExecutionContext): Future[ACLResponse[A]]
  def setACL[A](path: String, acl: List[ACL], version: Int, ctx: Option[A])(implicit ec: ExecutionContext): Future[StatResponse[A]]

  def getChildren[A](path: String, ctx: Option[A])(implicit ec: ExecutionContext): Future[ChildrenResponse[A]]
  def watchChildren[A](path: String, ctx: Option[A])(implicit ec: ExecutionContext): Future[(ChildrenResponse[A], Source[(ChildrenResponse[A], WatchedEvent), NotUsed])]

  def getData(path: String)(implicit ec: ExecutionContext): Future[DataResponse[Nothing]]
  def setData[A](path: String, data: Array[Byte], version: Int, ctx: Option[A])(implicit ec: ExecutionContext): Future[StatResponse[A]]
  def watchData[A](path: String, ctx: Option[A])(implicit ec: ExecutionContext): Future[(DataResponse[A], Source[(DataResponse[A], WatchedEvent), NotUsed])]

  def sessionId(): Long
  def sessionTimeout(): Int
}

object ZooKeeperClient {
  def native(hosts: String, sessionTimeout: Int, canBeReadOnly: Boolean, watcher: Option[Watcher] = None)(implicit mat: Materializer) = {
    val zk = new ZooKeeper(hosts, sessionTimeout, watcher.getOrElse(null), canBeReadOnly)
    new NativeZookeeperClient(zk)
  }
}

case class ACLResponse[A](rc: KeeperException.Code, path: String, ctx: Option[A], acl: List[ACL], stat: Stat)
case class ChildrenResponse[A](rc: KeeperException.Code, path: String, ctx: Option[A], children: List[String], stat: Stat)
case class CreateResponse[A](rc: KeeperException.Code, path: String, ctx: Option[A], name: String)
case class DataResponse[A](rc: KeeperException.Code, path: String, ctx: Option[A], data: Array[Byte], stat: Stat)
case class VoidResponse[A](rc: KeeperException.Code, path: String, ctx: Option[A])
case class StatResponse[A](rc: KeeperException.Code, path: String, ctx: Option[A], stat: Stat) 
开发者ID:ybr,项目名称:scala-zookeeper-client,代码行数:48,代码来源:ZookeeperClient.scala

示例2: StormOffsetGetterSpec

//设置package包名称以及导入依赖的类
package com.quantifind.kafka.core

import com.quantifind.utils.ZkUtilsWrapper
import org.I0Itec.zkclient.ZkClient
import org.apache.zookeeper.data.Stat
import org.mockito.Matchers._
import org.mockito.Mockito._
import org.mockito.{Matchers => MockitoMatchers, Mockito}
import org.scalatest._

class StormOffsetGetterSpec extends FlatSpec with ShouldMatchers {

  trait Fixture {

    val mockedZkClient = Mockito.mock(classOf[ZkClient])
    val zkOffsetBase = "/stormconsumers"
    val mockedZkUtil =  Mockito.mock(classOf[ZkUtilsWrapper])

    val offsetGetter = new StormOffsetGetter(mockedZkClient, zkOffsetBase, mockedZkUtil)
  }

  "StormOffsetGetter" should "be able to extract topic from persisted spout state" in new Fixture {

    val testGroup = "testgroup"
    val testTopic = "testtopic"
    val spoutState = s"""{
                        "broker": {
                            "host": "kafka.sample.net",
                            "port": 9092
                        },
                        "offset": 4285,
                        "partition": 1,
                        "topic": "${testTopic}",
                        "topology": {
                            "id": "fce905ff-25e0 -409e-bc3a-d855f 787d13b",
                            "name": "Test Topology"
                        }
                       }"""
    val ret = (spoutState, Mockito.mock(classOf[Stat]))
    when(mockedZkUtil.readData(MockitoMatchers.eq(mockedZkClient), anyString)).thenReturn(ret)

    val topics = offsetGetter.getTopicList(testGroup)
    
    topics.size shouldBe 1
    topics(0) shouldBe testTopic
  }
} 
开发者ID:ZhouGitHub1,项目名称:KafkaOffsetMonitor,代码行数:48,代码来源:StormOffsetGetterSpec.scala

示例3: process

//设置package包名称以及导入依赖的类
package com.twitter.zk

import java.util.{List => JList}

import scala.collection.JavaConverters._

import org.apache.zookeeper.data.Stat
import org.apache.zookeeper.{AsyncCallback, KeeperException}

import com.twitter.util.{Promise, Return, Throw}


  protected def process(rc: Int, path: String)(result: => T) {
    KeeperException.Code.get(rc) match {
      case KeeperException.Code.OK => updateIfEmpty(Return(result))
      case code => updateIfEmpty(Throw(KeeperException.create(code, path)))
    }
  }
}

class StringCallbackPromise extends AsyncCallbackPromise[String] with AsyncCallback.StringCallback {
  def processResult(rc: Int, path: String, ctx: AnyRef, name: String) {
    process(rc, path) { name }
  }
}

class UnitCallbackPromise extends AsyncCallbackPromise[Unit] with AsyncCallback.VoidCallback {
  def processResult(rc: Int, path: String, ctx: AnyRef) {
    process(rc, path) { Unit }
  }
}

class ExistsCallbackPromise(znode: ZNode) extends AsyncCallbackPromise[ZNode.Exists]
    with AsyncCallback.StatCallback {
  def processResult(rc: Int, path: String, ctx: AnyRef, stat: Stat) {
    process(rc, path) {
      znode(stat)
    }
  }
}

class ChildrenCallbackPromise(znode: ZNode) extends AsyncCallbackPromise[ZNode.Children]
    with AsyncCallback.Children2Callback {
  def processResult(rc: Int, path: String, ctx: AnyRef, children: JList[String], stat: Stat) {
    process(rc, path) {
      znode(stat, children.asScala.toSeq)
    }
  }
}

class DataCallbackPromise(znode: ZNode) extends AsyncCallbackPromise[ZNode.Data]
    with AsyncCallback.DataCallback {
  def processResult(rc: Int, path: String, ctx: AnyRef, bytes: Array[Byte], stat: Stat) {
    process(rc, path) {
      znode(stat, bytes)
    }
  }
} 
开发者ID:lanshuijuntuan,项目名称:Java.util,代码行数:59,代码来源:AsyncCallbackPromise.scala


注:本文中的org.apache.zookeeper.data.Stat类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。