#2168 - Exposing more Netty options in remtoe config

This commit is contained in:
Viktor Klang 2012-06-01 21:29:47 +02:00
parent 2940740c48
commit 12b9af25cf
9 changed files with 83 additions and 47 deletions

View file

@ -69,21 +69,21 @@ class MyMessageQueue(_owner: ActorContext)
val storage = new QueueStorage
// A real-world implmentation would use configuration to set the last
// three parameters below
val breaker = CircuitBreaker(_owner.system.scheduler,5,30.seconds,1.minute)
val breaker = CircuitBreaker(_owner.system.scheduler, 5, 30.seconds, 1.minute)
def enqueue(receiver: ActorRef, envelope: Envelope): Unit = breaker.withSyncCircuitBreaker {
val data: Array[Byte] = serialize(envelope)
storage.push(data)
}
def dequeue(): Envelope = breaker.withSyncCircuitBreaker {
def dequeue(): Envelope = breaker.withSyncCircuitBreaker {
val data: Option[Array[Byte]] = storage.pull()
data.map(deserialize).orNull
}
def hasMessages: Boolean = breaker.withSyncCircuitBreaker { !storage.isEmpty }
def numberOfMessages: Int = breaker.withSyncCircuitBreaker { storage.size }
def numberOfMessages: Int = breaker.withSyncCircuitBreaker { storage.size }
/**
* Called when the mailbox is disposed.