This document describes the current stable version of Kombu (4.0). For development docs, go here.
Virtual Transport Base Class - kombu.transport.virtual
¶
Transports¶
-
class
kombu.transport.virtual.
Transport
(client, **kwargs)[source]¶ Virtual transport.
Parameters: client (kombu.Connection) – The client this is a transport for. -
Channel
= <class 'kombu.transport.virtual.base.Channel'>¶
-
Cycle
= <class 'kombu.utils.scheduling.FairCycle'>¶
-
polling_interval
= 1.0¶
-
default_port
= None¶
-
state
= <kombu.transport.virtual.base.BrokerState object>¶
-
cycle
= None¶
-
Channel¶
-
class
kombu.transport.virtual.
AbstractChannel
[source]¶ Abstract channel interface.
This is an abstract class defining the channel methods you’d usually want to implement in a virtual channel.
Note
Do not subclass directly, but rather inherit from
Channel
.
-
class
kombu.transport.virtual.
Channel
(connection, **kwargs)[source]¶ Virtual channel.
Parameters: connection (ConnectionT) – The transport instance this channel is part of. -
Message
= <class 'kombu.transport.virtual.base.Message'>¶
-
state
¶ Broker state containing exchanges and bindings.
-
do_restore
= True¶
-
exchange_types
= {u'topic': <class 'kombu.transport.virtual.exchange.TopicExchange'>, u'fanout': <class 'kombu.transport.virtual.exchange.FanoutExchange'>, u'direct': <class 'kombu.transport.virtual.exchange.DirectExchange'>}¶
-
exchange_declare
(exchange=None, type=u'direct', durable=False, auto_delete=False, arguments=None, nowait=False, passive=False)[source]¶ Declare exchange.
-
exchange_delete
(exchange, if_unused=False, nowait=False)[source]¶ Delete exchange and all its bindings.
-
queue_bind
(queue, exchange=None, routing_key=u'', arguments=None, **kwargs)[source]¶ Bind queue to exchange with routing key.
-
basic_qos
(prefetch_size=0, prefetch_count=0, apply_global=False)[source]¶ Change QoS settings for this channel.
Note
Only prefetch_count is supported.
-
prepare_message
(body, priority=None, content_type=None, content_encoding=None, headers=None, properties=None)[source]¶ Prepare message data.
-
flow
(active=True)[source]¶ Enable/disable message flow.
Raises: NotImplementedError
– as flow is not implemented by the base virtual implementation.
-
Message¶
-
class
kombu.transport.virtual.
Message
(payload, channel=None, **kwargs)[source]¶ Message object.
-
Message.
accept
¶
-
Message.
ack
(multiple=False)[source]¶ Acknowledge this message as being processed.
This will remove the message from the queue.
Raises: MessageStateError
– If the message has already been acknowledged/requeued/rejected.
-
Message.
acknowledged
¶ Set to true if the message has been acknowledged.
-
Message.
body
¶
-
Message.
channel
¶
-
Message.
content_encoding
¶
-
Message.
content_type
¶
-
Message.
decode
()[source]¶ Deserialize the message body.
Returning the original python structure sent by the publisher.
Note
The return value is memoized, use _decode to force re-evaluation.
-
Message.
delivery_info
¶
-
Message.
delivery_tag
¶
-
Message.
errors
= None¶
-
Message.
headers
¶
-
Message.
payload
¶ The decoded message body.
-
Message.
properties
¶
-
Message.
reject
(requeue=False)[source]¶ Reject this message.
The message will be discarded by the server.
Raises: MessageStateError
– If the message has already been acknowledged/requeued/rejected.
-
Message.
requeue
()[source]¶ Reject this message and put it back on the queue.
Warning
You must not use this method as a means of selecting messages to process.
Raises: MessageStateError
– If the message has already been acknowledged/requeued/rejected.
-
Quality Of Service¶
-
class
kombu.transport.virtual.
QoS
(channel, prefetch_count=0)[source]¶ Quality of Service guarantees.
Only supports prefetch_count at this point.
Parameters: - channel (ChannelT) – Connection channel.
- prefetch_count (int) – Initial prefetch count (defaults to 0).
-
can_consume
()[source]¶ Return true if the channel can be consumed from.
Used to ensure the client adhers to currently active prefetch limits.
-
can_consume_max_estimate
()[source]¶ Return the maximum number of messages allowed to be returned.
Returns an estimated number of messages that a consumer may be allowed to consume at once from the broker. This is used for services where bulk ‘get message’ calls are preferred to many individual ‘get message’ calls - like SQS.
Returns: greater than zero. Return type: int
-
prefetch_count
= 0¶
-
restore_at_shutdown
= True¶