Class PublisherCallbackChannelImpl

java.lang.Object
org.springframework.amqp.rabbit.connection.PublisherCallbackChannelImpl
All Implemented Interfaces:
com.rabbitmq.client.Channel, com.rabbitmq.client.ConfirmListener, com.rabbitmq.client.ReturnCallback, com.rabbitmq.client.ShutdownListener, com.rabbitmq.client.ShutdownNotifier, AutoCloseable, EventListener, PublisherCallbackChannel

public class PublisherCallbackChannelImpl extends Object implements PublisherCallbackChannel, com.rabbitmq.client.ConfirmListener, com.rabbitmq.client.ReturnCallback, com.rabbitmq.client.ShutdownListener
Channel wrapper to allow a single listener able to handle confirms from multiple channels.
Since:
1.0.1
Author:
Gary Russell, Arnaud Cogoluègnes, Artem Bilan, Christian Tzolov, Ngoc Nhan
  • Constructor Details

    • PublisherCallbackChannelImpl

      public PublisherCallbackChannelImpl(com.rabbitmq.client.Channel delegate, ExecutorService executor)
      Create a PublisherCallbackChannelImpl instance based on the provided delegate and executor.
      Parameters:
      delegate - the delegate channel.
      executor - the executor.
  • Method Details

    • setAfterAckCallback

      public void setAfterAckCallback(Consumer<com.rabbitmq.client.Channel> callback)
      Description copied from interface: PublisherCallbackChannel
      Set a callback to be invoked after the ack/nack has been handled.
      Specified by:
      setAfterAckCallback in interface PublisherCallbackChannel
      Parameters:
      callback - the callback.
    • addShutdownListener

      public void addShutdownListener(com.rabbitmq.client.ShutdownListener listener)
      Specified by:
      addShutdownListener in interface com.rabbitmq.client.ShutdownNotifier
    • removeShutdownListener

      public void removeShutdownListener(com.rabbitmq.client.ShutdownListener listener)
      Specified by:
      removeShutdownListener in interface com.rabbitmq.client.ShutdownNotifier
    • getCloseReason

      public com.rabbitmq.client.ShutdownSignalException getCloseReason()
      Specified by:
      getCloseReason in interface com.rabbitmq.client.ShutdownNotifier
    • notifyListeners

      public void notifyListeners()
      Specified by:
      notifyListeners in interface com.rabbitmq.client.ShutdownNotifier
    • isOpen

      public boolean isOpen()
      Specified by:
      isOpen in interface com.rabbitmq.client.ShutdownNotifier
    • getChannelNumber

      public int getChannelNumber()
      Specified by:
      getChannelNumber in interface com.rabbitmq.client.Channel
    • getConnection

      public com.rabbitmq.client.Connection getConnection()
      Specified by:
      getConnection in interface com.rabbitmq.client.Channel
    • close

      public void close(int closeCode, String closeMessage) throws IOException, TimeoutException
      Specified by:
      close in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      TimeoutException
    • abort

      public void abort() throws IOException
      Specified by:
      abort in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • abort

      public void abort(int closeCode, String closeMessage) throws IOException
      Specified by:
      abort in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • getDefaultConsumer

      public com.rabbitmq.client.Consumer getDefaultConsumer()
      Specified by:
      getDefaultConsumer in interface com.rabbitmq.client.Channel
    • setDefaultConsumer

      public void setDefaultConsumer(com.rabbitmq.client.Consumer consumer)
      Specified by:
      setDefaultConsumer in interface com.rabbitmq.client.Channel
    • basicQos

      public void basicQos(int prefetchSize, int prefetchCount, boolean global) throws IOException
      Specified by:
      basicQos in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • basicQos

      public void basicQos(int prefetchCount, boolean global) throws IOException
      Added to the 3.3.x client.
      Specified by:
      basicQos in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      1.3.3
    • basicQos

      public void basicQos(int prefetchCount) throws IOException
      Specified by:
      basicQos in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • basicPublish

      public void basicPublish(String exchange, String routingKey, com.rabbitmq.client.AMQP.BasicProperties props, byte[] body) throws IOException
      Specified by:
      basicPublish in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • basicPublish

      public void basicPublish(String exchange, String routingKey, boolean mandatory, boolean immediate, com.rabbitmq.client.AMQP.BasicProperties props, byte[] body) throws IOException
      Specified by:
      basicPublish in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • basicPublish

      public void basicPublish(String exchange, String routingKey, boolean mandatory, com.rabbitmq.client.AMQP.BasicProperties props, byte[] body) throws IOException
      Specified by:
      basicPublish in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeDeclare

      public com.rabbitmq.client.AMQP.Exchange.DeclareOk exchangeDeclare(String exchange, String type) throws IOException
      Specified by:
      exchangeDeclare in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeDeclare

      public com.rabbitmq.client.AMQP.Exchange.DeclareOk exchangeDeclare(String exchange, com.rabbitmq.client.BuiltinExchangeType type) throws IOException
      Specified by:
      exchangeDeclare in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeDeclare

      public com.rabbitmq.client.AMQP.Exchange.DeclareOk exchangeDeclare(String exchange, String type, boolean durable) throws IOException
      Specified by:
      exchangeDeclare in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeDeclare

      public com.rabbitmq.client.AMQP.Exchange.DeclareOk exchangeDeclare(String exchange, com.rabbitmq.client.BuiltinExchangeType type, boolean durable) throws IOException
      Specified by:
      exchangeDeclare in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeDeclare

      public com.rabbitmq.client.AMQP.Exchange.DeclareOk exchangeDeclare(String exchange, String type, boolean durable, boolean autoDelete, Map<String,Object> arguments) throws IOException
      Specified by:
      exchangeDeclare in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeDeclare

      public com.rabbitmq.client.AMQP.Exchange.DeclareOk exchangeDeclare(String exchange, com.rabbitmq.client.BuiltinExchangeType type, boolean durable, boolean autoDelete, Map<String,Object> arguments) throws IOException
      Specified by:
      exchangeDeclare in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeDeclare

      public com.rabbitmq.client.AMQP.Exchange.DeclareOk exchangeDeclare(String exchange, String type, boolean durable, boolean autoDelete, boolean internal, Map<String,Object> arguments) throws IOException
      Specified by:
      exchangeDeclare in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeDeclare

      public com.rabbitmq.client.AMQP.Exchange.DeclareOk exchangeDeclare(String exchange, com.rabbitmq.client.BuiltinExchangeType type, boolean durable, boolean autoDelete, boolean internal, Map<String,Object> arguments) throws IOException
      Specified by:
      exchangeDeclare in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeDeclarePassive

      public com.rabbitmq.client.AMQP.Exchange.DeclareOk exchangeDeclarePassive(String name) throws IOException
      Specified by:
      exchangeDeclarePassive in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeDelete

      public com.rabbitmq.client.AMQP.Exchange.DeleteOk exchangeDelete(String exchange, boolean ifUnused) throws IOException
      Specified by:
      exchangeDelete in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeDelete

      public com.rabbitmq.client.AMQP.Exchange.DeleteOk exchangeDelete(String exchange) throws IOException
      Specified by:
      exchangeDelete in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeBind

      public com.rabbitmq.client.AMQP.Exchange.BindOk exchangeBind(String destination, String source, String routingKey) throws IOException
      Specified by:
      exchangeBind in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeBind

      public com.rabbitmq.client.AMQP.Exchange.BindOk exchangeBind(String destination, String source, String routingKey, Map<String,Object> arguments) throws IOException
      Specified by:
      exchangeBind in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeUnbind

      public com.rabbitmq.client.AMQP.Exchange.UnbindOk exchangeUnbind(String destination, String source, String routingKey) throws IOException
      Specified by:
      exchangeUnbind in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeUnbind

      public com.rabbitmq.client.AMQP.Exchange.UnbindOk exchangeUnbind(String destination, String source, String routingKey, Map<String,Object> arguments) throws IOException
      Specified by:
      exchangeUnbind in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • queueDeclare

      public com.rabbitmq.client.AMQP.Queue.DeclareOk queueDeclare() throws IOException
      Specified by:
      queueDeclare in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • queueDeclare

      public com.rabbitmq.client.AMQP.Queue.DeclareOk queueDeclare(String queue, boolean durable, boolean exclusive, boolean autoDelete, Map<String,Object> arguments) throws IOException
      Specified by:
      queueDeclare in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • queueDeclarePassive

      public com.rabbitmq.client.AMQP.Queue.DeclareOk queueDeclarePassive(String queue) throws IOException
      Specified by:
      queueDeclarePassive in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • queueDelete

      public com.rabbitmq.client.AMQP.Queue.DeleteOk queueDelete(String queue) throws IOException
      Specified by:
      queueDelete in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • queueDelete

      public com.rabbitmq.client.AMQP.Queue.DeleteOk queueDelete(String queue, boolean ifUnused, boolean ifEmpty) throws IOException
      Specified by:
      queueDelete in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • queueBind

      public com.rabbitmq.client.AMQP.Queue.BindOk queueBind(String queue, String exchange, String routingKey) throws IOException
      Specified by:
      queueBind in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • queueBind

      public com.rabbitmq.client.AMQP.Queue.BindOk queueBind(String queue, String exchange, String routingKey, Map<String,Object> arguments) throws IOException
      Specified by:
      queueBind in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • queueUnbind

      public com.rabbitmq.client.AMQP.Queue.UnbindOk queueUnbind(String queue, String exchange, String routingKey) throws IOException
      Specified by:
      queueUnbind in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • queueUnbind

      public com.rabbitmq.client.AMQP.Queue.UnbindOk queueUnbind(String queue, String exchange, String routingKey, Map<String,Object> arguments) throws IOException
      Specified by:
      queueUnbind in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • queuePurge

      public com.rabbitmq.client.AMQP.Queue.PurgeOk queuePurge(String queue) throws IOException
      Specified by:
      queuePurge in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • basicGet

      public com.rabbitmq.client.GetResponse basicGet(String queue, boolean autoAck) throws IOException
      Specified by:
      basicGet in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • basicAck

      public void basicAck(long deliveryTag, boolean multiple) throws IOException
      Specified by:
      basicAck in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • basicNack

      public void basicNack(long deliveryTag, boolean multiple, boolean requeue) throws IOException
      Specified by:
      basicNack in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • basicReject

      public void basicReject(long deliveryTag, boolean requeue) throws IOException
      Specified by:
      basicReject in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • basicConsume

      public String basicConsume(String queue, com.rabbitmq.client.Consumer callback) throws IOException
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • basicConsume

      public String basicConsume(String queue, com.rabbitmq.client.DeliverCallback deliverCallback, com.rabbitmq.client.CancelCallback cancelCallback) throws IOException
      Added to the 5.0.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • basicConsume

      public String basicConsume(String queue, com.rabbitmq.client.DeliverCallback deliverCallback, com.rabbitmq.client.ConsumerShutdownSignalCallback shutdownSignalCallback) throws IOException
      Added to the 5.0.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • basicConsume

      public String basicConsume(String queue, com.rabbitmq.client.DeliverCallback deliverCallback, com.rabbitmq.client.CancelCallback cancelCallback, com.rabbitmq.client.ConsumerShutdownSignalCallback shutdownSignalCallback) throws IOException
      Added to the 5.0.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, com.rabbitmq.client.Consumer callback) throws IOException
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, com.rabbitmq.client.DeliverCallback deliverCallback, com.rabbitmq.client.CancelCallback cancelCallback) throws IOException
      Added to the 5.0.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, com.rabbitmq.client.DeliverCallback deliverCallback, com.rabbitmq.client.ConsumerShutdownSignalCallback shutdownSignalCallback) throws IOException
      Added to the 5.0.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, com.rabbitmq.client.DeliverCallback deliverCallback, com.rabbitmq.client.CancelCallback cancelCallback, com.rabbitmq.client.ConsumerShutdownSignalCallback shutdownSignalCallback) throws IOException
      Added to the 5.0.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, String consumerTag, com.rabbitmq.client.Consumer callback) throws IOException
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, String consumerTag, com.rabbitmq.client.DeliverCallback deliverCallback, com.rabbitmq.client.CancelCallback cancelCallback) throws IOException
      Added to the 5.0.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, String consumerTag, com.rabbitmq.client.DeliverCallback deliverCallback, com.rabbitmq.client.ConsumerShutdownSignalCallback shutdownSignalCallback) throws IOException
      Added to the 5.0.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, String consumerTag, com.rabbitmq.client.DeliverCallback deliverCallback, com.rabbitmq.client.CancelCallback cancelCallback, com.rabbitmq.client.ConsumerShutdownSignalCallback shutdownSignalCallback) throws IOException
      Added to the 5.0.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, Map<String,Object> arguments, com.rabbitmq.client.Consumer callback) throws IOException
      Added to the 3.3.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      1.3.3
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, Map<String,Object> arguments, com.rabbitmq.client.DeliverCallback deliverCallback, com.rabbitmq.client.CancelCallback cancelCallback) throws IOException
      Added to the 5.0.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, Map<String,Object> arguments, com.rabbitmq.client.DeliverCallback deliverCallback, com.rabbitmq.client.ConsumerShutdownSignalCallback shutdownSignalCallback) throws IOException
      Added to the 5.0.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, Map<String,Object> arguments, com.rabbitmq.client.DeliverCallback deliverCallback, com.rabbitmq.client.CancelCallback cancelCallback, com.rabbitmq.client.ConsumerShutdownSignalCallback shutdownSignalCallback) throws IOException
      Added to the 5.0.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, String consumerTag, boolean noLocal, boolean exclusive, Map<String,Object> arguments, com.rabbitmq.client.Consumer callback) throws IOException
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, String consumerTag, boolean noLocal, boolean exclusive, Map<String,Object> arguments, com.rabbitmq.client.DeliverCallback deliverCallback, com.rabbitmq.client.CancelCallback cancelCallback) throws IOException
      Added to the 5.0.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, String consumerTag, boolean noLocal, boolean exclusive, Map<String,Object> arguments, com.rabbitmq.client.DeliverCallback deliverCallback, com.rabbitmq.client.ConsumerShutdownSignalCallback shutdownSignalCallback) throws IOException
      Added to the 5.0.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • basicConsume

      public String basicConsume(String queue, boolean autoAck, String consumerTag, boolean noLocal, boolean exclusive, Map<String,Object> arguments, com.rabbitmq.client.DeliverCallback deliverCallback, com.rabbitmq.client.CancelCallback cancelCallback, com.rabbitmq.client.ConsumerShutdownSignalCallback shutdownSignalCallback) throws IOException
      Added to the 5.0.x client.
      Specified by:
      basicConsume in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • basicCancel

      public void basicCancel(String consumerTag) throws IOException
      Specified by:
      basicCancel in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • basicRecover

      public com.rabbitmq.client.AMQP.Basic.RecoverOk basicRecover() throws IOException
      Specified by:
      basicRecover in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • basicRecover

      public com.rabbitmq.client.AMQP.Basic.RecoverOk basicRecover(boolean requeue) throws IOException
      Specified by:
      basicRecover in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • txSelect

      public com.rabbitmq.client.AMQP.Tx.SelectOk txSelect() throws IOException
      Specified by:
      txSelect in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • txCommit

      public com.rabbitmq.client.AMQP.Tx.CommitOk txCommit() throws IOException
      Specified by:
      txCommit in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • txRollback

      public com.rabbitmq.client.AMQP.Tx.RollbackOk txRollback() throws IOException
      Specified by:
      txRollback in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • confirmSelect

      public com.rabbitmq.client.AMQP.Confirm.SelectOk confirmSelect() throws IOException
      Specified by:
      confirmSelect in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • getNextPublishSeqNo

      public long getNextPublishSeqNo()
      Specified by:
      getNextPublishSeqNo in interface com.rabbitmq.client.Channel
    • waitForConfirms

      public boolean waitForConfirms() throws InterruptedException
      Specified by:
      waitForConfirms in interface com.rabbitmq.client.Channel
      Throws:
      InterruptedException
    • waitForConfirms

      public boolean waitForConfirms(long timeout) throws InterruptedException, TimeoutException
      Specified by:
      waitForConfirms in interface com.rabbitmq.client.Channel
      Throws:
      InterruptedException
      TimeoutException
    • waitForConfirmsOrDie

      public void waitForConfirmsOrDie() throws IOException, InterruptedException
      Specified by:
      waitForConfirmsOrDie in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      InterruptedException
    • waitForConfirmsOrDie

      public void waitForConfirmsOrDie(long timeout) throws IOException, InterruptedException, TimeoutException
      Specified by:
      waitForConfirmsOrDie in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      InterruptedException
      TimeoutException
    • asyncRpc

      public void asyncRpc(com.rabbitmq.client.Method method) throws IOException
      Specified by:
      asyncRpc in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • rpc

      public com.rabbitmq.client.Command rpc(com.rabbitmq.client.Method method) throws IOException
      Specified by:
      rpc in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • addConfirmListener

      public void addConfirmListener(com.rabbitmq.client.ConfirmListener listener)
      Specified by:
      addConfirmListener in interface com.rabbitmq.client.Channel
    • addConfirmListener

      public com.rabbitmq.client.ConfirmListener addConfirmListener(com.rabbitmq.client.ConfirmCallback ackCallback, com.rabbitmq.client.ConfirmCallback nackCallback)
      Specified by:
      addConfirmListener in interface com.rabbitmq.client.Channel
    • removeConfirmListener

      public boolean removeConfirmListener(com.rabbitmq.client.ConfirmListener listener)
      Specified by:
      removeConfirmListener in interface com.rabbitmq.client.Channel
    • clearConfirmListeners

      public void clearConfirmListeners()
      Specified by:
      clearConfirmListeners in interface com.rabbitmq.client.Channel
    • addReturnListener

      public void addReturnListener(com.rabbitmq.client.ReturnListener listener)
      Specified by:
      addReturnListener in interface com.rabbitmq.client.Channel
    • addReturnListener

      public com.rabbitmq.client.ReturnListener addReturnListener(com.rabbitmq.client.ReturnCallback returnCallback)
      Added to the 5.0.x client.
      Specified by:
      addReturnListener in interface com.rabbitmq.client.Channel
      Since:
      2.0
    • removeReturnListener

      public boolean removeReturnListener(com.rabbitmq.client.ReturnListener listener)
      Specified by:
      removeReturnListener in interface com.rabbitmq.client.Channel
    • clearReturnListeners

      public void clearReturnListeners()
      Specified by:
      clearReturnListeners in interface com.rabbitmq.client.Channel
    • exchangeBindNoWait

      public void exchangeBindNoWait(String destination, String source, String routingKey, Map<String,Object> arguments) throws IOException
      Specified by:
      exchangeBindNoWait in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeDeclareNoWait

      public void exchangeDeclareNoWait(String exchange, String type, boolean durable, boolean autoDelete, boolean internal, Map<String,Object> arguments) throws IOException
      Specified by:
      exchangeDeclareNoWait in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeDeclareNoWait

      public void exchangeDeclareNoWait(String exchange, com.rabbitmq.client.BuiltinExchangeType type, boolean durable, boolean autoDelete, boolean internal, Map<String,Object> arguments) throws IOException
      Specified by:
      exchangeDeclareNoWait in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeDeleteNoWait

      public void exchangeDeleteNoWait(String exchange, boolean ifUnused) throws IOException
      Specified by:
      exchangeDeleteNoWait in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • exchangeUnbindNoWait

      public void exchangeUnbindNoWait(String destination, String source, String routingKey, Map<String,Object> arguments) throws IOException
      Specified by:
      exchangeUnbindNoWait in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • queueBindNoWait

      public void queueBindNoWait(String queue, String exchange, String routingKey, Map<String,Object> arguments) throws IOException
      Specified by:
      queueBindNoWait in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • queueDeclareNoWait

      public void queueDeclareNoWait(String queue, boolean durable, boolean exclusive, boolean autoDelete, Map<String,Object> arguments) throws IOException
      Specified by:
      queueDeclareNoWait in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • queueDeleteNoWait

      public void queueDeleteNoWait(String queue, boolean ifUnused, boolean ifEmpty) throws IOException
      Specified by:
      queueDeleteNoWait in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • consumerCount

      public long consumerCount(String queue) throws IOException
      Specified by:
      consumerCount in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • asyncCompletableRpc

      public CompletableFuture<com.rabbitmq.client.Command> asyncCompletableRpc(com.rabbitmq.client.Method method) throws IOException
      Added to the 5.0.x client.
      Specified by:
      asyncCompletableRpc in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      Since:
      2.0
    • messageCount

      public long messageCount(String queue) throws IOException
      Specified by:
      messageCount in interface com.rabbitmq.client.Channel
      Throws:
      IOException
    • getDelegate

      public com.rabbitmq.client.Channel getDelegate()
      Description copied from interface: PublisherCallbackChannel
      Use this to invoke methods on the underlying rabbit client Channel that are not supported by this implementation.
      Specified by:
      getDelegate in interface PublisherCallbackChannel
      Returns:
      The underlying rabbit client Channel.
    • close

      public void close() throws IOException, TimeoutException
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface com.rabbitmq.client.Channel
      Throws:
      IOException
      TimeoutException
    • getPendingConfirmsCount

      public int getPendingConfirmsCount(PublisherCallbackChannel.Listener listener)
      Description copied from interface: PublisherCallbackChannel
      Get the PendingConfirms count.
      Specified by:
      getPendingConfirmsCount in interface PublisherCallbackChannel
      Parameters:
      listener - the listener.
      Returns:
      Count of the pending confirms.
    • getPendingConfirmsCount

      public int getPendingConfirmsCount()
      Description copied from interface: PublisherCallbackChannel
      Get the total pending confirms count.
      Specified by:
      getPendingConfirmsCount in interface PublisherCallbackChannel
      Returns:
      the count.
    • addListener

      public void addListener(PublisherCallbackChannel.Listener listener)
      Add the listener and return the internal map of pending confirmations for that listener.
      Specified by:
      addListener in interface PublisherCallbackChannel
      Parameters:
      listener - the listener.
    • expire

      public Collection<PendingConfirm> expire(PublisherCallbackChannel.Listener listener, long cutoffTime)
      Description copied from interface: PublisherCallbackChannel
      Expire (remove) any PendingConfirms created before cutoffTime for the supplied listener and return them to the caller.
      Specified by:
      expire in interface PublisherCallbackChannel
      Parameters:
      listener - the listener.
      cutoffTime - the time before which expired messages were created.
      Returns:
      the list of expired confirms.
    • handleAck

      public void handleAck(long seq, boolean multiple)
      Specified by:
      handleAck in interface com.rabbitmq.client.ConfirmListener
    • handleNack

      public void handleNack(long seq, boolean multiple)
      Specified by:
      handleNack in interface com.rabbitmq.client.ConfirmListener
    • addPendingConfirm

      public void addPendingConfirm(PublisherCallbackChannel.Listener listener, long seq, PendingConfirm pendingConfirm)
      Description copied from interface: PublisherCallbackChannel
      Adds a pending confirmation to this channel's map.
      Specified by:
      addPendingConfirm in interface PublisherCallbackChannel
      Parameters:
      listener - The listener.
      seq - The key to the map.
      pendingConfirm - The PendingConfirm object.
    • handle

      public void handle(com.rabbitmq.client.Return returned)
      Specified by:
      handle in interface com.rabbitmq.client.ReturnCallback
    • shutdownCompleted

      public void shutdownCompleted(com.rabbitmq.client.ShutdownSignalException cause)
      Specified by:
      shutdownCompleted in interface com.rabbitmq.client.ShutdownListener
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • factory

      public static PublisherCallbackChannelFactory factory()