Ah, have to stop forgetting to post here :) From now on (on Mithro's que) I'll be posting regularly on Fridays.
So, the past week was rather fruitful, although the pace is still not as good as I'd like it to be. Put in perhaps 25 hrs, which is not nearly what I normally do (have an excuse tho... was my b-day ;).
Since the last report, I've been concentrating on mostly peripheral things, although I did get good progress on the client itself. First off, I was busy getting the connection-event logger in working condition (still working with jezuch about submitting it as a patch to libtpproto-java, have a few minor things to sort out). It can successfully log all connection events, and dump the info to any PrintStream in a convenient format. I spent so much time on it since it's a good to know ~exactly~ what's going on in the client-server communication. Also, I worked on a feature for the client for a couple of days, which will allow the user (really, "operator", since it's doing everything autonomously) to properly shut down the client at any point in its operation. To do this, I created a wrapper-class for Scanner, and put a listener in a new thread, which detects the special exit input string from standard-in. I realize this is perhaps not what I should be concentrating on, but I allowed myself to digress and explore the implementation of a neat feature ;).
As to the client itself, I re-organized it a bit, to allow for "autorun" mode (completely autonomous) and "standard" mode (user input required to start up), as opposed to having "autologin" and "no-autologin" modes, where both required some user input. This will greatly improve on testing, and allow for various implementation of harnesses on which the client will run (since on autorun the client simply needs to be supplied with arguments).
Now that the overall architecture of the operation of the client is done, I'm starting to explore the mechanism of client-server communication. The basic method is pretty straightforward (client-driven requests for info, and some server driven stuff), but the nitty gritty of Frame-specifics is something to spend this week of coding on.
By this week, I hope to have a good prototype of a working client.
Victor Ivri (vi1985)
Blog address: BLOG
You can find the project in the git repo here: REPO