+str #15174 Add dispatcher setting to FlowMaterializer

* Verify dispatcher with custom default mailbox
This commit is contained in:
Patrik Nordwall 2014-05-13 17:17:33 +02:00
parent a1588e2e39
commit e9a2585050
46 changed files with 183 additions and 68 deletions

View file

@ -10,6 +10,7 @@ import akka.stream.impl.Ast
import org.reactivestreams.api.Producer
import scala.concurrent.duration._
import org.reactivestreams.api.Consumer
import akka.actor.Deploy
object FlowMaterializer {
@ -102,7 +103,8 @@ case class MaterializerSettings(
initialInputBufferSize: Int = 4,
maximumInputBufferSize: Int = 16,
upstreamSubscriptionTimeout: FiniteDuration = 3.seconds,
downstreamSubscriptionTimeout: FiniteDuration = 3.seconds) {
downstreamSubscriptionTimeout: FiniteDuration = 3.seconds,
dispatcher: String = Deploy.NoDispatcherGiven) {
private def isPowerOfTwo(n: Integer): Boolean = (n & (n - 1)) == 0
require(initialFanOutBufferSize > 0, "initialFanOutBufferSize must be > 0")
@ -131,5 +133,7 @@ case class MaterializerSettings(
copy(upstreamSubscriptionTimeout = upstreamSubscriptionTimeout,
downstreamSubscriptionTimeout = downstreamSubscriptionTimeout)
def withDispatcher(dispatcher: String): MaterializerSettings = copy(dispatcher = dispatcher)
}