:-)
LOL. Yes I accept that it was after your posts on http://imaginecup.com/forums/t/9442.aspx that I thought of making it a Asynchronous State Machine Design just to see that I also can do so even though I had submitted qualifying run way before. And in fact I had to figure out how to subscribe to iRobot and so on myself right? I didn't mean any offense simply not giving credits you and apologize if my (in)action hurt you in anyway.
agemagician:
By the way you can enhance the design be removing the mainHandler completely and this should be the optimal design.
Yes I know that this can be improved more but the idea of my tutorial was to show how to just change the existing Syncrhonous design to Asynchronous design without any other design change in the sample. It would be great if you can publish a tutorial about improving the service further.
Happy Coding!
Aravinda D.P.