Here are some links to Wave Summit talks. https://cwiki.apache.org/confluence/display/WAVE/Wave+Summit+Talks
On Thu, Apr 4, 2013 at 10:03 PM, Pratik Paranjape <pratikparanj...@gmail.com > wrote: > @Willie I don't think an all pervasive event bus exists in the code, if > that is what you are looking for. Someone will correct me if > following explanation is wrong. > > The the keystrokes are first seen by the Editor (see EditorImpl), they are > categorized between commands for annotations > and text input by a sub handler and given to the underlying structure (see > ContentDocument and IndexedDocumentImpl) to > update the model and record the deltas. These deltas are internally > propogated through the higher order wavelet-wave abstraction. > The operations coming from server pass through the same set..wavelet-wave > abstraction -> structured model abstraction (documents) > -> finally editor. There is a tight integration between editor and model at > the lowest level through event handlers. > The progress from document to higher abstraction is foggy in mind atm, > haven't seen the code for some time, but there is a very nice > video in Google IO10 that explains it. > > Then there is a Websocket based channel > (see concurrencycontrol.channel.OperationChannel.java). This one comes > closest to what you > might have heard about.It manages communication between server and client, > adding a buffer in between for cases of lost connectivity. > > GWT later added an event bus in it's apis, having nothing to do with Wave > directly. It was popularized when Ray Ryan gave a talk called > Best Practices for Aritecting GWT Apps in Google IO 2009. It was around > the > same time Wave was being explained, so not sure if you are > referring to that. > > And for my own 2 cents, when I checked the wave code base by the intentions > of pulling things apart and modular-izing them for one of my > own projects, the job seemed tough because of tight integration between > various parts (Editor-CC stack-Wave Model-UI). The whole framework > will be easier to handle, if you are willing to build on top of Wave model. > And then Converting it to Scala, that is interesting. In any case, you will > get most ideas, if you scan around through the whitepapers on the > wave-protocol site and old Google IO videos from wave section. > > Good luck. > > > > > > On Fri, Apr 5, 2013 at 12:06 AM, Yuri Z <vega...@gmail.com> wrote: > > > I think then, you should take a look at > > the org.waveprotocol.box.server.waveserver.WaveBus interface. > > > > > > > > On Thu, Apr 4, 2013 at 9:16 PM, Willie Slepecki <scpha...@gmail.com> > > wrote: > > > > > If im reading the documents right, the federation system is the > transport > > > system between two wave servers. in laymans terms, its waves version > of > > > SMTP, basically where google tried replacing email servers. that part > i > > > have no interest in (at this time), maybe in the future i will want the > > > ability to move a wavelet between my cloud and a clients local cloud > but > > > thats so far down the road, its not worth looking at right now. > > > > > > no, what im talking about is the push pull event bus between the UI and > > the > > > server. The event bus that allows save on key stroke, reaplay (when > > > rebuilt) and concurrent editing of documents, concurrent group > > > collaboration between people in concurrent editing of documents, etc. > Is > > > the heart of that system build outside of GWT and GWT simply accesses > it > > or > > > does that part of the system live entirely in GWT. Its a distinction > > that > > > makes a big difference in what im doing and im still trying to figure > out > > > which way is up on this thing. > > > > > > thanks > > > > > > > > > On Thu, Apr 4, 2013 at 8:35 AM, Yuri Z <vega...@gmail.com> wrote: > > > > > > > If you refer to the Wave Federation Protocol, then yes it is > > implemented > > > as > > > > part of the server. However, federation wasn't tested for a while... > > > > > > > > > > > > On Thu, Apr 4, 2013 at 11:16 AM, Willie Slepecki <scpha...@gmail.com > > > > > > wrote: > > > > > > > > > Ok, i see what you are doing now. Well that fits into what i > wanted > > to > > > > do > > > > > very well. I don't want my system to be built around wave, i want > > wave > > > > to > > > > > be a component of a much larger system. In order to do that I will > > > pull > > > > > this apart into more fine grained modules and be able to use those > > > > modules > > > > > at will within the rest of the system. > > > > > > > > > > What about the event bus that was so touted when this was released. > > is > > > > > that part of the protocol that was released or is that built into > the > > > GWT > > > > > interface that your team built? > > > > > > > > > > Lastly, is the protocol itself functional? meaning i intend to > fork > > > this > > > > > and redevelop a large chunk of it in scala to make other parts of > my > > > life > > > > > easier. If i do that at this point in time am i going to find some > > > major > > > > > release in 8 months that brings a major system back online that by > > that > > > > > point would be completely incompatible with my code base? > > > > > > > > > > thanks for your help > > > > > > > > > > > > > > > On Thu, Apr 4, 2013 at 3:36 AM, Yuri Z <vega...@gmail.com> wrote: > > > > > > > > > > > Hi > > > > > > Google did not open the source of original Google Wave, but > instead > > > it > > > > > > created a stand alone open source implementation, with some core > > > parts > > > > - > > > > > > like the OT implementation - being ported as is. But the client > was > > > > > rebuilt > > > > > > from the scratch. > > > > > > The current implementation saves all the deltas, so it is > possible > > to > > > > > > implement the feature to replay the wave state to some earlier > > > > condition, > > > > > > however it is not implemented yet. > > > > > > > > > > > > > > > > > > On Thu, Apr 4, 2013 at 9:17 AM, Willie Slepecki < > > scpha...@gmail.com> > > > > > > wrote: > > > > > > > > > > > > > is the history replay in the old code repo and just hasn't been > > > > ported > > > > > > yet > > > > > > > or did google not release it. > > > > > > > > > > > > > > I have been looking at the code for several hours now. its in > > > pretty > > > > > > rough > > > > > > > shape but good enough to run i guess. I had to fix several > issues > > > in > > > > > the > > > > > > > code to get it to compile but it appears to be compiling > > correctly > > > > now. > > > > > > im > > > > > > > not very interested in trying to get it to run yet, i just want > > to > > > > see > > > > > > how > > > > > > > its packaged. > > > > > > > > > > > > > > but im starting to feel my way around it. i finally found the > > gwt > > > > > > > interface and have been pulling that apart. im mainly trying > to > > > > > > determine > > > > > > > if they implemented the event bus for the save on change as a > > > client > > > > > > system > > > > > > > or a server system. right now it looks like both. but i will > > > still > > > > > play > > > > > > > > > > > > > > > > > > > > > On Thu, Apr 4, 2013 at 1:54 AM, Yuri Z <vega...@gmail.com> > > wrote: > > > > > > > > > > > > > > > Hi > > > > > > > > You can find the source code at > > > > > > > > http://incubator.apache.org/wave/source-code.html > > > > > > > > The current implementation supports concurrent edition of the > > > > > document > > > > > > by > > > > > > > > several users, but there's no implementation for history > > replay. > > > > > > > > You can take a look at demo server: waveinabox.net > > > > > > > > Regarding your needs - if you only need to support real time > > > > > concurrent > > > > > > > > editing, then you might also take a look at ShareJS > > > > > > > > <http://sharejs.org/>project > > > > > > > > or Google Realtime API < > > > > > https://developers.google.com/drive/realtime/> > > > > > > > > > > > > > > > > > > > > > > > > On Thu, Apr 4, 2013 at 3:52 AM, Willie Slepecki < > > > > scpha...@gmail.com> > > > > > > > > wrote: > > > > > > > > > > > > > > > > > I am looking into building a sort of collaborative document > > > > > > management > > > > > > > > > application. I remembered wave from the google beta days > > and I > > > > > > > remember > > > > > > > > it > > > > > > > > > having two features that just astonished me, two features > > that > > > > > could > > > > > > > > > complete my design for this new CMS system im designing. > > > > > > > > > > > > > > > > > > the first feature was its concurrent editing of a document. > > I > > > > > > remember > > > > > > > > the > > > > > > > > > presenter creating a new wave, indicating that it was a > > > document, > > > > > > not a > > > > > > > > > message, sharing it with other users, and then like 6 > people > > > > > started > > > > > > > > > editing the document in different languages at different > > > > locations, > > > > > > at > > > > > > > > the > > > > > > > > > same time. I remember the presenter talking about the > > control > > > > bus > > > > > > that > > > > > > > > > made that possible and how it was that single feature that > > took > > > > the > > > > > > > > longest > > > > > > > > > to get right > > > > > > > > > > > > > > > > > > The second feature was the history replay. he was able to > > pull > > > > up > > > > > a > > > > > > > > > document and click some kind of history button and a time > bar > > > > > similar > > > > > > > to > > > > > > > > > windows media players showed up, he was then able to slide > > the > > > > bar > > > > > > all > > > > > > > > the > > > > > > > > > way to the left to an empty document and replay each and > > every > > > > > change > > > > > > > > that > > > > > > > > > happened to that document one at a time until all > > modifications > > > > > > > > culminated > > > > > > > > > into the present state of the document. > > > > > > > > > > > > > > > > > > My memory is fuzzy so i may have gotten the fine details > > wrong, > > > > but > > > > > > the > > > > > > > > > essence of what those features were are here. My question > is > > > in > > > > > the > > > > > > > > apache > > > > > > > > > version of this thing, what are the status of those two > > > features, > > > > > > what > > > > > > > > are > > > > > > > > > the plans for them, and where would i find them in the old > > > google > > > > > > code > > > > > > > if > > > > > > > > > they havn't been migrated over yet. > > > > > > > > > > > > > > > > > > > > > > > > > > > thanks guys > > > > > > > > > > > > > > > > > > -- > > > > > > > > > You want it fast, cheap, or right. Pick two!! > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > You want it fast, cheap, or right. Pick two!! > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > You want it fast, cheap, or right. Pick two!! > > > > > > > > > > > > > > > > > > > > > -- > > > You want it fast, cheap, or right. Pick two!! > > > > > >