incubator-wave-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Eduardo Garcia Lopez <egar...@stream18.com>
Subject Re: Modularisation of WIAB
Date Thu, 21 Jul 2011 13:55:16 GMT
Thank you very much for the valuable information, Thomas. This is exactly
the kind of feedback we was wanting to receive, we will modify the document
immediately to make it more accurate, and also will incorporate this
detailed information to another document where the current c/s protocol will
be explained at a higher level of detail.

On Thu, Jul 21, 2011 at 8:04 AM, Thomas Wrobel <darkflame@gmail.com> wrote:

> David recently described the current c/s protocol to me when I was
> trying to understand it;
>
> "The messages are JSON, and their structure is defined by some protos, and
>  enveloped as (see WaveWebSocketClient$MessageWrapper):
>  { sequenceNumber: <unused I think>, messageType: <message class name>,
>  message: <object> }.
>
>  WaveWebSocketClient essentially defines the client side of the protocol,
> and
>  it's very trivial.  Over a bidirectional stream (websocket), the client
>  sends an open request (ProtocolOpenRequest), some number of submit
> requests
>  (ProtocolSubmitRequest), and then closes the web socket.  After the open
>  request, the client receives a constant stream of ProtocolWaveletUpdates,
>  containing either wavelet snapshots or wavelet deltas, interleaved with
>  ProtocolSubmitResponses, which contain the success/failure of the client's
>  own submits.  Details about those particular messages can be found in
>  waveclient-rpc.proto, but the previous sentence above covers almost the
>  entire protocol, and it's expressed quite simply in the code.  The bit I
>  left out is the authentication messages, which I never looked into, but
> the
>  code looks pretty straightforward."
>
> However, there is some problems with this current protocol, hence the
> new one (which you are correct, hasn't been implemented yet).
>
> -Thomas
>
>
> On 21 July 2011 01:38, Eduardo Garcia Lopez <egarcia@stream18.com> wrote:
> > Hi Thomas,
> >
> > well, the diagram is there just to raise (and try to get answer to) this
> > kind of questions. I am not sure if the client server protocol described
> in
> > that document you pointed is already implemented. Anyway, reading this
> other
> > document "http://www.waveprotocol.org/code/wave-model-code-walk" it
> seems
> > clear that the communication with the client side is done from the model,
> > specifically in the "org.webprotocol.wave.model.conversation" package.
> How
> > the events are propagated to the Undercurrent GWT client is something I
> > still don't know, that is why I put that black box named "Events
> Listener"
> > between the model and the client, that somehow communicates with the GWT
> > side (although something I know is that this communication is not via GWT
> > RPC).
> > I have read about the WaveData API (distributed as part of the Robots
> API),
> > it seems it was the originally proposed mechanism to communicate with
> > clients (not only with robots) when Wave was a Google product, but I
> don't
> > know how/if this has changed.
> >
> > Thanks,
> >
> > Eduardo.
> >
> >
> > On Thu, Jul 21, 2011 at 12:56 AM, Thomas Wrobel <darkflame@gmail.com>
> wrote:
> >
> >> Ive always thought modularisation is a very good idea, but in that
> >> diagram I'm a little confused as it shows the GWT client communicating
> >> with the server via the "wave-protocol" - I'm not sure this is right?
> >> The wave federation protocol is for server<>server, the client<>server
> >> uses (and will use) something different;
> >>
> >>
> http://www.waveprotocol.org/protocol/design-proposals/clientserver-protocol
> >>
> >> I think I heard this called the "simple data protocol" at one point,
> >> but I dont think it is named.
> >>
> >> Or are you proposing the s<>s and c<>s communication should basically
> >> be the same? (or, one as a subset of the other).
> >>
> >> On 21 July 2011 00:41, Yuri Z <vega113@gmail.com> wrote:
> >> > Regarding modularization - there were talks about using Maven to
> manage
> >> WIAB
> >> > dependencies and introduce better modularization of the code. It might
> be
> >> of
> >> > interest to you -
> >> >
> >>
> http://mail-archives.apache.org/mod_mbox/incubator-wave-dev/201105.mbox/%3CBANLkTimWyRKWreY2NUDPPySFrSdtfWF8YQ@mail.gmail.com%3E#archives
> >> >
> >> > 2011/7/21 Michael Lilly <mikelilly@codelaboration.com>
> >> >
> >> >> Hi, code-laboration is working on a project that uses WIAB as the
> core
> >> >> framework, but with modifications to the UI and the UX. We saw that
> >> there
> >> >> were just some talks about modularisation, and had actually been
> >> thinking
> >> >> of
> >> >> the same thing for the past several days. We had talked to Yuri the
> >> other
> >> >> day about this, and now feel it is at a point where we can share our
> >> >> interests with everyone.
> >> >>
> >> >> Because we will be doing so many modifications, it would be great for
> >> WIAB
> >> >> to be more modular to allow for us, and potentially other forks of
> the
> >> WIAB
> >> >> project to work in parallel. We have come up with a list of things
> that
> >> we
> >> >> personally feel would be a great help to modularize. the document is
> >> posted
> >> >> on Google Docs. This document is a rough draft of what would be
> changed,
> >> >> and
> >> >> is fully open to comments of the dev community. Here is the Doc:
> >> >>
> >> >>
> >>
> http://www.google.com/url?sa=D&q=https%3A%2F%2Fdocs.google.com%2Fdocument%2Fpub%3Fid%3D1V4PaVPMKPdt0-BugDxmy0dfvmf9UJh-MvLDRBd-vk_Q
> >> >>
> >> >> Also, we have been creating documentation related to WIAB, and would
> >> like
> >> >> to
> >> >> share them with the community. I see there is a wiki on the Apache
> >> >> incubator
> >> >> website, but with no content. So I am wondering where the proper
> place
> >> >> would
> >> >> be to add this content.
> >> >>
> >> >> We do not have much on our websites currently, but you are free to
> check
> >> it
> >> >> out. Our two websites are codelaboration.com and twykin.com
> >> >>
> >> >
> >>
> >
> >
> >
> > --
> > Eduardo G.
> > http://www.stream18.com
> >
>



-- 
Eduardo G.
http://www.stream18.com

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message