Ultimately, I would be interested in it being possible to create a new server/client for WIAB, without being required to rework the entire codebase (e.g. keep the exisiting GWT client, but have a new wave server)t.
So I see a distinction needing to be made in the server code between: 1) 'WIAB server' -> responsible for delta transformation, federation, persistence, robots, search implementation, data API 2) 'CLIENT server' -> responsible for presenting the client GUI over HTTP. with the client server responsible for receiving WebSocket traffic (since that is a client implementation detail), and relaying the actual information to the WIAB server somehow (is the data API powerful enough to support a full client?) and with these 2 servers being completely seperate running processes. Is this what others were thinking with a client-server split? Currently the entire codebase is shared code (as far as I understand), with the 'server' (both 'CLIENT' and 'WIAB') existing mostly around src/org/waveprotocol/box/server/. The GWT interface for the client exists mostly around src/org/waveprotocol/box/webclient and the rest of it would bundle into a shared library. Ali On 9 June 2012 19:31, Michael MacFadden <[email protected]> wrote: > All, > > Paulo and I have made a lot of progress on the maven build. We will be > woking on getting the unit test working over the next week or so. > > One of the main goals is to separate the client code and the server code. > Beyond that you would typically separate the modules based on either logical > groupings of code our on how others might consume the code. To that end I > have two questions. > > 1) Does any one have good insight in to what is client code, what is server > code and what is shared? > > 2) What modules would be see being useful (wave-api?, robot-api? > client-server protocol stuff?)? > > Thanks.
