PureMVC Pipes
12 June 2008I had a chance to work with Cliff Hall’s PureMVC ‘Pipes’ utility this week. Highly recommended.
If your interested in utilizing modules in your PureMVC projects, you owe it to yourself to take a look at the Pipes utility.
What’s needed to integrate a module?
The requirements are very light. You module should:
Implement IPipeAware
Create a JunctionMediator.
Thats it.
I took some time and refactored the Mortgage app to use the Pipes utility.
I ran into a small bump after unloading widgets. If I unloaded a widget and then clicked “Quotes”, I still received a loan quote from what should have been an unloaded module. I ended up subclassing the ‘TeeSplit’ class to allow disconnecting a single known IPipeFitting. This allowed me to ‘cleanup’ the dynamic modules properly.
That aside, the utility was very easy to work with - the plumbing metaphors really make things clear.
I found the utility to be quite flexible as well. I just wrapped up working on some utility classes that allow modules to load modules that load modules etc. Getting this to work with direct core to core communications was at best ‘messy.’ Using the pipes made this very clean and simple.









