module Elastic::Core::Middleware

Public Instance Methods

middleware_for(_target) click to toggle source
# File lib/elastic/core/middleware.rb, line 13
def middleware_for(_target)
  # TODO: improve matching logic
  middleware = middlewares.reverse_each.find { |m| m.accepts?(_target) }
  middleware = DefaultMiddleware if middleware.nil?
  middleware
end
register(_middleware_class) click to toggle source
# File lib/elastic/core/middleware.rb, line 5
def register(_middleware_class)
  middlewares << _middleware_class
end
wrap(_target) click to toggle source
# File lib/elastic/core/middleware.rb, line 9
def wrap(_target)
  middleware_for(_target).new _target
end

Private Instance Methods

middlewares() click to toggle source
# File lib/elastic/core/middleware.rb, line 22
def middlewares
  @middlewares ||= []
end