Module: Lapine::Consumer::Middleware

Includes:
Middlewear
Defined in:
lib/lapine/consumer/middleware.rb,
lib/lapine/consumer/middleware/json_decoder.rb,
lib/lapine/consumer/middleware/error_handler.rb,
lib/lapine/consumer/middleware/message_ack_handler.rb

Overview

Consumer middleware can be registered as follows:

Lapine::Consumer::Middleware.add MyClass
Lapine::Consumer::Middleware.add MyClass, argument
Lapine::Consumer::Middleware.add_before MyClass, MyOtherClass, argument
Lapine::Consumer::Middleware.add_after MyClass, MyOtherClass, argument

Middleware should follow the pattern:

class MyMiddleware
  attr_reader :app

  def initialize(app, *arguments)
    @app = app
  end

  def call(message)
    # do stuff
    app.call(message)
  end
end

Defined Under Namespace

Classes: ErrorHandler, JsonDecoder, MessageAckHandler

Constant Summary collapse

DEFAULT_MIDDLEWARE =
[
  MessageAckHandler,
  ErrorHandler,
  JsonDecoder
].freeze