Sha256: 9e2d4a67e83b10d4ba49ef52207f567ea20e094b7cc889c1f6f8459cd1d09b64
Contents?: true
Size: 774 Bytes
Versions: 18
Compression:
Stored size: 774 Bytes
Contents
require 'routemaster/dirty/filter' module Routemaster module Middleware # Filters event payloads passed in the environment (in # `env['routemaster.payload']`), is any. # # Will use `Routemaster::Dirty::Filter` by default. class Filter # @param filter [Routemaster::Dirty::Filter] an event filter (optional; # will be created using the `redis` and `expiry` options if not provided) def initialize(app, filter:nil, **_) @app = app @filter = filter || Routemaster::Dirty::Filter.new end def call(env) payload = env['routemaster.payload'] if payload && payload.any? env['routemaster.payload'] = @filter.run(payload) end @app.call(env) end end end end
Version data entries
18 entries across 18 versions & 1 rubygems