消息队列模块
| Type | Method and Description |
|---|---|
| void | public static static MessageMessageMessage创建一个消息对象,参见 Message |
| void | public static static HttpHandlerHttpHandlerHttpHandler创建一个 http 协议处理器对象,参见 HttpHandler |
| void | public static static HandlerHandlerHandler创建一个消息处理器对象,传递值内置处理器则直接返回 |
| void | public static static ChainChainChain创建一个消息处理器链处理对象,参见 Chain |
| void | public static static RoutingRoutingRouting创建一个消息处理器路由对象,参见 Routing |
| Type | Method and Description |
|---|---|
| Handler | await()创建一个异步等待处理器 |
| Handler | nullHandler()创建一个空处理器对象,次处理对象不做任何处理直接返回 |
| void | invoke(Handler hdlr,object v)使用给定的处理器处理一个消息或对象 |
public static static MessageMessageMessage创建一个消息对象,参见 Message
public static static HttpHandlerHttpHandlerHttpHandler创建一个 http 协议处理器对象,参见 HttpHandler
public static static HandlerHandlerHandler创建一个消息处理器对象,传递值内置处理器则直接返回
hdlr 内置消息处理器,处理函数,链式处理数组,路由对象:
Function javascript 函数,将使用此函数进行处理
Handler 内置处理器,将使用此处理器进行处理
链式处理数组,等同于返回 new mq.Chain(hdlr),参见 Chain
路由对象,等同于返回 new mq.Routing(hdlr),参见 Routing
返回封装了处理函数的处理器
消息处理函数语法如下:
function func(v){
}
参数 v 为正在处理的消息,返回结果允许有四种:
Function javascript 函数,将使用此函数进行下一阶段处理
Handler 内置处理器,将使用此处理器进行下一阶段处理
链式处理数组,等同于 new mq.Chain(v),参见 Chain
路由对象,等同于 new mq.Routing(v),参见 Routing
无返回或者其他的返回结果将结束消息处理。
public static static ChainChainChain创建一个消息处理器链处理对象,参见 Chain
public static static RoutingRoutingRouting创建一个消息处理器路由对象,参见 Routing
await()创建一个异步等待处理器
返回创建的处理器
异步等待处理器用于需要异步处理的消息处理模式,示例如下:
function func(v){
var await = mq.await();
call_some_async_func(v1, v2, v3, function() {
await.end();
});
return await;
}
示例是一个 javascript 消息处理函数,当函数返回时,消息处理引擎将等待 await,直到 await.end 被调用,才继续下一阶段的处理。
nullHandler()创建一个空处理器对象,次处理对象不做任何处理直接返回
返回空处理函数
invoke(Handler hdlr,object v)使用给定的处理器处理一个消息或对象
hdlr 指定使用的处理器
v 指定要处理的消息或对象
不同于处理器的 invoke 方法,此方法将循环调用每个处理器的返回处理器,直到处理器返回 null 为止。