adf4cd9d05
Add detailed documentation to the driver API to help driver developers create drivers that behave consistently. Specifically prescribes a set of operational characteristics that a driver must conform to in order to provide consistent behavior across different implementations. Change-Id: Icb251ee724f9a0ac4fede702a367910de4ba95e3
76 lines
1.6 KiB
ReStructuredText
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:
|
|
|
|
|
|
|
|
|
|
|
|
|