The tacker.common.rpc Module

The tacker.common.rpc Module

class tacker.common.rpc.BackingOffClient(transport, target, timeout=None, version_cap=None, serializer=None, retry=None)

Bases: oslo_messaging.rpc.client.RPCClient

An oslo messaging RPC Client that implements a timeout backoff.

This has all of the same interfaces as oslo_messaging.RPCClient but if the timeout parameter is not specified, the _ContextWrapper returned will track when call timeout exceptions occur and exponentially increase the timeout for the given call method.

prepare(*args, **kwargs)
static set_max_timeout(max_timeout)

Set RPC timeout ceiling for all backing-off RPC clients.

class tacker.common.rpc.Connection

Bases: object

close()
consume_in_threads()
create_consumer(topic, endpoints, fanout=False, exchange='tacker', host=None)
class tacker.common.rpc.RequestContextSerializer(base=None)

Bases: oslo_messaging.serializer.Serializer

convert RPC common context int tacker Context.

deserialize_context(ctxt)
deserialize_entity(ctxt, entity)
serialize_context(ctxt)
serialize_entity(ctxt, entity)
class tacker.common.rpc.Service(host, topic, manager=None, serializer=None)

Bases: oslo_service.service.Service

Service object for binaries running on hosts.

A service enables rpc by listening to queues based on topic and host.

start()
stop()
class tacker.common.rpc.VoidConnection

Bases: object

close()
consume_in_threads()
create_consumer(topic, endpoints, fanout=False, exchange='tacker', host=None)
tacker.common.rpc.add_extra_exmods(*args)
tacker.common.rpc.cleanup()
tacker.common.rpc.clear_extra_exmods()
tacker.common.rpc.create_connection()
tacker.common.rpc.get_allowed_exmods()
tacker.common.rpc.get_client(target, version_cap=None, serializer=None)
tacker.common.rpc.get_notifier(service=None, host=None, publisher_id=None)
tacker.common.rpc.get_server(target, endpoints, serializer=None)
tacker.common.rpc.init(conf)
tacker.common.rpc.init_action_rpc(conf)
Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.