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.

Reply via email to