我需要添加一些自定义系统消息处理到spray.routing.HttpService
. 我需要receive
按如下方式链接方法:
def receive = {
case ...my messages here
case _ => ...call httpReceive below
}
def httpReceive = runRoute...
如何组织这个?
in SprayrunRoute
将您的路由结构转换为 Akka 的Receive
,这是PartialFunction[Any, Unit]
. 因此,如果您有一些方法可以处理您自己的消息和一些路由,您可以使用以下方法编写它们orElse
:
def httpReceive: Receive = runRoute(...)
def handle: Receive = ...
def receive = handle orElse httpReceive
现在,如果您的消息将使用handle
方法处理,然后,如果它是一个请求,spray 将处理这个请求