2012-11-13 28 views
0

我試圖在Mule上實現一個簡單的消息觀察器,它不需要改變消息。如何實現Mule Message Observer?

這個link上的文檔說最簡單的方法就是擴展AbstractMessageObserver。但正如我在this link上看到的那樣,這個類在Mule的早期版本中已經被刪除。

因此,現在最好的方法是實現MessageProcessor接口,並簡單地返回過程方法中的MuleEvent參數?

回答

1

如果您需要訪問整個MuleEvent,請執行MessageProcessor或執行Callable的POJO。否則,如果你只需要觀察有效載荷,一個簡單的POJO組件就可以做到這一點。

請注意,Mule還提供攔截器(和InterceptingMessageProcessor s):如果需要在動作之前/之後運行或者希望停止處理的可能性,請使用攔截器。

+0

非常感謝。我使用MessageProcessor解決方案。 – jonfornari

+0

實現MessageProcessor接口或實現可調用的pojo(在性能,調優,行爲等方面)之間有什麼區別? – jonfornari

+1

當使用通過''調用的POJO時,通過入口點解析器機制會產生輕微的開銷。如果你使用''調用你的POJO,它將非常接近自定義消息處理器的開銷。但總而言之,這種開銷通常比在IO中花費的時間少一個數量級,IO是整合流程的主要部分。 –