On Tue, Feb 3, 2015 at 4:26 PM, Darryl L. Pierce <[email protected]> wrote:
> On Mon, Feb 02, 2015 at 09:12:22AM -0500, Darryl L. Pierce wrote: > > Are there any example apps for Python that don't use the reactive APIs? > > If no examples, perhaps a primer of how the logical components of the > enger interact to help guide providing an example? > The quick primer is that Connections/Sessions/Links/Deliveries pretty much directly model the endpoint state described in the AMQP specification. In order to wire that endpoint state up to a remote peer, you create, configure, and bind a Transport object into the Connection. The Transport has an interface that lets you pump bytes into/out of it. You can use this to pump bytes into/out of a socket. When you pump bytes from the socket into the Transport, it may change the state of the Connection and/or any of the objects it contains (Sessions, Links, Deliveries, etc). It may in fact cause new Session, Link, or Delivery endpoints to be created. The best way to find out what exactly has happened here is to use the events API. The events API allows you to register the Connection with a Collector. When a Connection is registered with a Collector it will post events to that Collector. Each event has a pointer back into the object model indicating which object has changed state, and a type that indicates how/why it changed state. You can look at event.h (or the doxygen) for a list of all the core events. --Rafael
