Asyncore Connection Adapter

Use Pika with the stdlib asyncore module.

class pika.adapters.asyncore_connection.AsyncoreConnection(parameters=None, on_open_callback=None, on_open_error_callback=None, on_close_callback=None, stop_ioloop_on_close=True)[source]

The AsyncoreConnection adapter uses the stdlib asyncore module as an IOLoop for asyncronous client development.

Parameters:
  • parameters (pika.connection.Parameters) – Connection parameters
  • on_open_callback (method) – Method to call on connection open
  • on_open_error_callback (method) – Method to call if the connection cant be opened
  • on_close_callback (method) – Method to call on connection close
  • stop_ioloop_on_close (bool) – Call ioloop.stop() if disconnected
Raises:

RuntimeError

add_backpressure_callback(callback_method)

Call method “callback” when pika believes backpressure is being applied.

Parameters:callback_method (method) – The method to call
add_on_close_callback(callback_method)

Add a callback notification when the connection has closed. The callback will be passed the connection, the reply_code (int) and the reply_text (str), if sent by the remote server.

Parameters:callback_method (method) – Callback to call on close
add_on_open_callback(callback_method)

Add a callback notification when the connection has opened.

Parameters:callback_method (method) – Callback to call when open
add_on_open_error_callback(callback_method, remove_default=True)

Add a callback notification when the connection can not be opened.

The callback method should accept the connection object that could not connect, and an optional error message.

Parameters:
  • callback_method (method) – Callback to call when can’t connect
  • remove_default (bool) – Remove default exception raising callback
add_timeout(deadline, callback_method)

Add the callback_method to the IOLoop timer to fire after deadline seconds. Returns a handle to the timeout

Parameters:
  • deadline (int) – The number of seconds to wait to call callback
  • callback_method (method) – The callback method
Return type:

str

basic_nack

Specifies if the server supports basic.nack on the active connection.

Return type:bool
channel(on_open_callback, channel_number=None)

Create a new channel with the next available channel number or pass in a channel number to use. Must be non-zero if you would like to specify but it is recommended that you let Pika manage the channel numbers.

Parameters:
  • on_open_callback (method) – The callback when the channel is opened
  • channel_number (int) – The channel number to use, defaults to the next available.
Return type:

pika.channel.Channel

close(reply_code=200, reply_text='Normal shutdown')

Disconnect from RabbitMQ. If there are any open channels, it will attempt to close them prior to fully disconnecting. Channels which have active consumers will attempt to send a Basic.Cancel to RabbitMQ to cleanly stop the delivery of messages prior to closing the channel.

Parameters:
  • reply_code (int) – The code number for the close
  • reply_text (str) – The text reason for the close
connect()

Invoke if trying to reconnect to a RabbitMQ server. Constructing the Connection object should connect on its own.

consumer_cancel_notify

Specifies if the server supports consumer cancel notification on the active connection.

Return type:bool
exchange_exchange_bindings

Specifies if the active connection supports exchange to exchange bindings.

Return type:bool
is_closed

Returns a boolean reporting the current connection state.

is_closing

Returns a boolean reporting the current connection state.

is_open

Returns a boolean reporting the current connection state.

publisher_confirms

Specifies if the active connection can use publisher confirmations.

Return type:bool
remove_timeout(timeout_id)

Remove the timeout from the IOLoop by the ID returned from add_timeout.

Return type:str
set_backpressure_multiplier(value=10)

Alter the backpressure multiplier value. We set this to 10 by default. This value is used to raise warnings and trigger the backpressure callback.

Parameters:value (int) – The multiplier value to set