Pipes and Filters
This is another interesting pattern and one of my favorites. To send a message from one application to another is not simple as it sounds. normally you don’t just send a message. In enterprise world, there are lot of guidelines, concerns and lot of xyz issues that you have to address from information exchange point of view. This is because of the very fact is “INFORMATION IS EVERYTHING TODAY”.
This pattern states what filters should be applied after the send has created the message and to the point that receiver has received the message. This concept makes use of PIPES which are transmission from one box to another and the boxes which are filters.
In the above example, the sender application(1st left), sends the message and then series of filters are applied to it – Encryption, authentication and decryption before the receiver application receives the same. The idea of this pattern is that the Sender and Receiver applications remains independent of the filter implementation.
I just took an example above but there are numerous implementation that are currently implemented using this pattern and are still yet to explored.
One of the favorite of my language to implement which is very powerful is SPRINGs. Try it out!
Hope you like the description of the pattern. Please share your ideas/thoughts or any questions you have.