Overview of Twisted Internet

Twisted Internet is a collection of compatible event-loops for Python. It contains the code to dispatch events to interested observers and a portable API so that observers need not care about which event loop is running. Thus, it is possible to use the same code for different loops, from Twisted’s basic, yet portable, select -based loop to the loops of various GUI toolkits like GTK+ or Tk.

Twisted Internet contains the various interfaces to the reactor API, whose usage is documented in the low-level chapter. Those APIs are IReactorCore , IReactorTCP , IReactorSSL , IReactorUNIX , IReactorUDP , IReactorTime , IReactorProcess , IReactorMulticast and IReactorThreads . The reactor APIs allow non-persistent calls to be made.

Twisted Internet also covers the interfaces for the various transports, in ITransport and friends. These interfaces allow Twisted network code to be written without regard to the underlying implementation of the transport.

The IProtocolFactory dictates how factories, which are usually a large part of third party code, are written.