It's been a long time, can't do much right now, lottachanges, will write about that later. However, I feel the need to share this document I wrote a little while ago; it's a documentation of a test-tool I wrote for the work.
The context of this post: Cataroo
Well, through the process, I learned two things, I believe:
- I kind of see the value of functional programming now.
- I feel the need to learn Scala, for its promise of better support for conccurency / parallelism.
- I see the value of Continuation. I had to keep the number of active threads below certain limit. There are situations where a thread have to wait, but I can't simply use sleep(), because it would't release the thread. So, in Java, without Continuation, I had to do some tricks to achieve the effect pausing / resuming thread (basically I had to make the thread stores its current state somewhere, before entering "paused mode", and immediately exits its run() method. Later, when the thread has to be resumed, another process will retrieve its current state, kick it to run, and pick up from where it left off. Tricky, could've been easier with Continuation, I guess).
UPDATE: The source code is available at http://www.box.net/shared/q0f90dmmx4
UPDATE: the JAR of the library can be downloaded from http://jananuraga.blogspot.com/2010/01/anything-goes-just-to-have-nasty.html ... the PDF can be downloaded directly from Box.com: https://www.box.com/s/o9jrdseo12u1oieemnxa
Automated Scenario Test