oslo.messaging/openstack/common/messaging/_executors
Mark McLoughlin f0f3d4b5f2 Re-work server API to eliminate server subclasses
This is something I think Doug has been trying to tell me to do from the
start :-)

The main idea is to remove all the MessageHandlingServer subclasses and,
instead, if you want a server which is hooked up with the RPC dispatcher
you just use this convenience function:

  server = rpc_server.get_rpc_server(transport, target, endpoints)

This means the dispatcher interface is now part of the public API, but
that should be fine since it's very simple - it's a callable that takes
a request context and message.

However, we also need to be able to construct a MessageHandlingServer
with a specific executor. By having an executor_cls parameter to the
constructor as part of the public API, we'd be exposing the executor
interface which is quite likely to change. Instead - and this seems
obvious in retrospect - just use stevedore to load executors and allow
them to be requested by name:

  server = rpc_server.get_rpc_server(transport, target, endpoints,
                                     executor='eventlet')

This also means we can get rid of openstack.common.messaging.eventlet.
2013-06-14 11:41:49 +01:00
..
__init__.py Add license header to _executors/__init__.py 2013-06-14 09:44:13 +01:00
base.py Dispatch methods in their own greenthreads 2013-06-07 07:59:30 +01:00
impl_blocking.py Re-work server API to eliminate server subclasses 2013-06-14 11:41:49 +01:00
impl_eventlet.py Re-work server API to eliminate server subclasses 2013-06-14 11:41:49 +01:00