Interface Producer

All Superinterfaces:
AutoCloseable

public interface Producer extends AutoCloseable
API to send messages to a RabbitMQ Stream.

Instances are created and configured with a ProducerBuilder.

Implementations are expected to be thread-safe, RabbitMQ Streams' are.

See Also:
  • Method Details

    • messageBuilder

      MessageBuilder messageBuilder()
      Return a MessageBuilder to create a Message.

      A MessageBuilder instance is meant to create only Message instance.

      Returns:
      a single-usage MessageBuilder
      See Also:
    • getLastPublishingId

      long getLastPublishingId()
      Get the last publishing ID for a named producer.

      The value can be mapped to a business index to restart publishing where a previous incarnation of the producer left off.

      Returns:
      the last publishing ID for this named producer
    • send

      void send(Message message, ConfirmationHandler confirmationHandler)
      Publish a message.
      Parameters:
      message - the message
      confirmationHandler - the callback when the message is confirmed or failed
    • close

      void close()
      Close the producer.
      Specified by:
      close in interface AutoCloseable