oslo.messaging/doc/source/driver-dev-guide.rst

76 lines
1.6 KiB
ReStructuredText

---------------------------------------
Guide for Transport Driver Implementors
---------------------------------------
.. currentmodule:: oslo_messaging
.. automodule:: oslo_messaging._drivers.base
============
Introduction
============
This document is a *best practices* guide for the developer interested
in creating a new transport driver for Oslo.Messaging. It should also
be used by maintainers as a reference for proper driver behavior.
This document will describe the driver interface and prescribe the
expected behavior of any driver implemented to this interface.
**Note well:** The API described in this document is internal to the
oslo.messaging library and therefore **private**. Under no
circumstances should this API be referenced by code external to the
oslo.messaging library.
================
Driver Interface
================
The driver interface is defined by a set of abstract base classes. The
developer creates a driver by defining concrete classes from these
bases. The derived classes embody the logic that is specific for the
messaging back-end that is to be supported.
These base classes are defined in the *base.py* file in the *_drivers*
subdirectory.
===============
IncomingMessage
===============
.. autoclass:: IncomingMessage
:members:
==================
RpcIncomingMessage
==================
.. autoclass:: RpcIncomingMessage
:members:
========
Listener
========
.. autoclass:: Listener
:members:
=================
PollStyleListener
=================
.. autoclass:: PollStyleListener
:members:
==========
BaseDriver
==========
.. autoclass:: BaseDriver
:members: