模組mq
訊息隊列模組
物件
Message
建立一個訊息對象,參見Message
1Message mq.Message;
HttpHandler
創建一個http協定處理器對象,參見HttpHandler
1HttpHandler mq.HttpHandler;
Handler
建立一個訊息處理器對象,傳遞值內建處理器則直接傳回
1Handler mq.Handler;
回傳結果:
- 返回封裝了處理函數的處理器
hdlr 接受內建訊息處理器,處理函數,鍊式處理數組,路由物件:
- Function javascript 函數,將使用此函數進行處理
- Handler內建處理器,將使用此處理器進行處理
- 鍊式處理數組,等同於傳回newmq.Chain(hdlr),參見Chain
- 路由對象,等同於回傳newmq.Routing(hdlr),參見Routing
訊息處理函數語法如下:
1function func(v) {}
參數v 為正在處理的訊息,返回結果允許有四種:
- Function javascript 函數,將使用此函數進行下一階段處理
- Handler內建處理器,將使用此處理器進行下一階段處理
- 鍊式處理數組,等同於newmq.Chain(v),參見Chain
- 路由對象,等同於newmq.Routing(v),參見Routing
無返回或其他的返回結果將結束訊息處理。
Chain
建立一個訊息處理器鏈處理對象,參見Chain
1Chain mq.Chain;
Routing
建立一個訊息處理器路由對象,參見Routing
1Routing mq.Routing;
靜態函數
nullHandler
建立一個空處理器對象,次處理對像不做任何處理直接返回
1static Handler mq.nullHandler();
回傳結果:
- Handler, 返回空處理函數
invoke
使用給定的處理器處理一個訊息或對象
1
2static mq.invoke(Handler hdlr,
object v) async;
呼叫參數:
不同於處理器的invoke 方法,此方法將循環呼叫每個處理器的返回處理器,直到處理器返回null 為止。