I'm busy working my way through the ProcessingPattern source code in an effort to understand how it work.
I'm quite happy with everything up until the point the dispachTask method is called in the DefaultTaskDispatcher class.
I don't understand how a TaskProcessorMediator and a TaskProcessor work together (the docs say that that TaskProcessorMediator is a proxy for a TaskProcessor, but I can't see how). Nor do I understand how how calling taskProcessorMediatorProxy.offerTask actually results in the task getting executed.
I can see the cache associated with the taskProcessorMediatorProxy has a BackingMapListener on it that results in the task getting executed but I can't work out what action results in the listener being fired - or am I completely off base?
Could someone possibly explain:
- What the TaskProcessorMediator and TaskProcessor are, how they interact with one another and what service they run on
- How a task moves from the DefaultTaskDispatcher.dispathTask method to actually being executed