播放2 Scala为一个Websocket输出Iteratee提供了几个枚举器(PatchPannel?)

时间:2012-12-21 20:51:42

标签: scala playframework websocket iterate

我想逐步向几个枚举器提供WebSocket输出Iteratee(例如,当我通过Websocket输入迭代接收特定事件时,我想在输出Iteratee中添加一个特定的枚举器。)

如果我是对的,如果我只是在Websocket函数参数的末尾返回(in,out)这是不可能的,因为out已经是一个不可变的枚举器:

WebSocket.using[JsValue] { request =>
    val in: Iteratee[JsValue,Unit] = ...
    val out: Enumerator[JsValue] = ...

    (in, out)
}

我认为Concurrent.PatchPannel是我正在寻找的,但我无法理解如何使用它。有没有人有使用Concurrent.PatchPannel的例子? (如果这确实是我正在寻找的东西)。

由于

1 个答案:

答案 0 :(得分:5)

我终于找到了解决方案。

修改:请参阅我的博文中的“可混合子流”部分:http://atamborrino.github.io/play/2013/12/25/play-framework-websocket.html