Component life cyle

#1

Hello,

I have been playing with ApplicationSession and I encounter many methods that are automatically called during the application life cycle such as onConnect, onJoin, onLeave, onDisconnect, etc.

It can be hard to understand which one does what (even with the docs on hand, lots of new concepts here), but more importantly, when.

A schema of the application life cycle, including what method is called step by step would be very helpful. Some explanations about what I can and can’t do as as an application developper in each of these methods would also be super useful. Bonus if we can see that life cycle in context in the reactor/asyncio main loop lifecycle and how it interacts with it. Extra bonus for contexte in crossbar.io.

I couldn’t find one in the documentation, but I could have missed it. If I did, I apologize. If not, I’m begging for one. I do, once again, understand this is a lot of work, so I won’t take offense if it’s not possible. Quick and dirty ASCII art will do. I can even turn it into a clean vectorial one if you want to contribute a little bit to the documentation.

Regards

0 Likes

#2

Michel,

Hello,

I have been playing with ApplicationSession and I encounter many methods
that are automatically called during the application life cycle such as
onConnect, onJoin, onLeave, onDisconnect, etc.

It can be hard to understand which one does what (even with the docs on
hand, lots of new concepts here), but more importantly, when.

A schema of the application life cycle, including what method is called
step by step would be very helpful. Some explanations about what I can
and _can't_ do as as an application developper in each of these methods
would also be super useful. Bonus if we can see that life cycle in
context in the reactor/asyncio main loop lifecycle and how it interacts
with it. Extra bonus for contexte in crossbar.io.

That's a very good suggestion! ApplicationSession is the main point of interaction between app code and WAMP. I like the idea of having a lifecycle diagram with callback descriptions

https://github.com/tavendo/AutobahnPython/issues/203

···

Am 11.04.2014 09:58, schrieb Michel Desmoulin:

I couldn't find one in the documentation, but I could have missed it. If
I did, I apologize. If not, I'm begging for one. I do, once again,
understand this is a lot of work, so I won't take offense if it's not
possible. Quick and dirty ASCII art will do. I can even turn it into a
clean vectorial one if you want to contribute a little bit to the
documentation.

Regards

--
You received this message because you are subscribed to the Google
Groups "Autobahn" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to autobahnws+...@googlegroups.com
<mailto:autobahnws+...@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout.

0 Likes

#3

I hope I didn’t seem like I have the knowledge to write it, because I don’t. I actually need it to understand the life cycle. I do offer to make a clean version of it though. A rought ASCII draft is enought for me.

···

On Friday, April 11, 2014 9:58:13 AM UTC+2, Michel Desmoulin wrote:

Hello,

I have been playing with ApplicationSession and I encounter many methods that are automatically called during the application life cycle such as onConnect, onJoin, onLeave, onDisconnect, etc.

It can be hard to understand which one does what (even with the docs on hand, lots of new concepts here), but more importantly, when.

A schema of the application life cycle, including what method is called step by step would be very helpful. Some explanations about what I can and can’t do as as an application developper in each of these methods would also be super useful. Bonus if we can see that life cycle in context in the reactor/asyncio main loop lifecycle and how it interacts with it. Extra bonus for contexte in crossbar.io.

I couldn’t find one in the documentation, but I could have missed it. If I did, I apologize. If not, I’m begging for one. I do, once again, understand this is a lot of work, so I won’t take offense if it’s not possible. Quick and dirty ASCII art will do. I can even turn it into a clean vectorial one if you want to contribute a little bit to the documentation.

Regards

0 Likes