Trying out a new route...
As you've all noticed, there hasn't been a lot of movement in the Spring RCP codebase lately. But that doesn't mean we've been sitting on our butts (at least I haven't
).
There have been some things we were planning on changing in the current codebase, but the changes were of such magnitude, it would mean we'd have to rethink the entire system. Which I did.
I started with the existing codebase from the ground up (starting point was the ApplicationLauncher), changing the parts I wanted to change for a while now. Things like the Application.getInstance(), the service accessor pattern (ApplicationServices.getInstance()...) and the complexity of the configuration when starting an RCP application. And off course the fact that it had to be Spring 3. Wherever I could, I also adapted some of Bluebell's features, as some of them were quite nice (the OverlayService concept is a nice one).
The result came out quite nice (it only took me about a week) and now most of the core codebase has been ported (except for some non-urgent components, but those will be ported shortly). The simple sample works perfectly. Other samples will follow shortly.
The code is currently under the codename Valkyrie and is found on Gitorious (www.gitorious.org/valkyrie-rcp). Valkyrie is completely operational, but still lacks some critical elements in order to use it in production (unit tests being the most important one, I didn't make time to port those as well). Which brings up the question what to do next... As I see it, we have multiple options: we can port Valkyrie to Spring RCP (in effect, creating a 2.0 version, as this'll break about every RCP code out there) or let Valkyrie live on as a project on it's own (perhaps merging it with Bluebell?). In that case there the second question: what to do with Spring RCP?
Suggestions, ideas, comments?
MSN: PM me please
Skype: doclo_lieven
Spring Rich Client Project Lead