Tidy up docs

pull/35/head
David Wilson 7 years ago
parent 7634b4c31c
commit a1044d8a6e

@ -338,8 +338,8 @@ Sentinel Value
The special value :py:data:`econtext.core._DEAD` is used to signal
disconnection or closure of the remote end. It is used internally by
:py:class:`Channel <econtext.core.Channel>` and also passed to any function
still registered with :py:meth:`add_handle_cb()
<econtext.core.Context.add_handle_cb>` during Broker shutdown.
still registered with :py:meth:`add_handler()
<econtext.core.Router.add_handler>` during Broker shutdown.
Use of Pickle
@ -387,26 +387,23 @@ Twisted that we would like to use.
Message Routing
---------------
At present routing is very simple, and assumes that it is impossible for a tree
of contexts to be constructed such that at least one of a context's indirect
parents will not know the ID of a target the context is attempting to
Routing assumes it is impossible to construct a tree such that one of a
context's parents will not know the ID of a target the context is attempting to
communicate with.
When :py:class:`econtext.core.Router` receives a message, it first checks the
IDs associated with its directly connected streams for a potential route for
the message. If one of the streams matches, either because the stream directly
connects to the target ID, or the master has sent an ``ADD_ROUTE`` message
associating that stream with the target ID, then the message will be forwarded
down the tree using that stream.
When :py:class:`econtext.core.Router` receives a message, it checks the IDs
associated with its directly connected streams for a potential route. If any
stream matches, either because it directly connects to the target ID, or
because the master sent an ``ADD_ROUTE`` message associating it, then the
message will be forwarded down the tree using that stream.
If the message does not match any ``ADD_ROUTE`` message or directly connected
stream, instead it is forwarded upstream, first to the context's parent, and
recursively by the each parent context in turn, until some tree node is reached
that knows how to forward the message back down the tree.
If the message does not match any ``ADD_ROUTE`` message or stream, instead it
is forwarded upwards to the immediate parent, and recursively by each parent in
turn until one is reached that knows how to forward the message down the tree.
When the master establishes a new context via an existing child context, it
takes care to send corresponding ``ADD_ROUTE`` messages to each indirect parent
up the tree.
sends corresponding ``ADD_ROUTE`` messages to each indirect parent between the
context and the root.
Example

Loading…
Cancel
Save