class Routemaster::Drain::CacheBusting

Rack application which authenticates, parses, filters duplicates in this request and invalidates the cache for all updated or new items.

See the various corresponding middleware for details on operation: {Middleware::RootPostOnly}, {Middleware::Authenticate}, {Middleware::Parse}, {Middleware::ExpireCache} and {Terminator}.

Public Class Methods

new(options = {}) click to toggle source
# File lib/routemaster/drain/cache_busting.rb, line 23
def initialize(options = {})
  @terminator = terminator = Terminator.new
  @app = ::Rack::Builder.new do
    use Middleware::RootPostOnly
    use Middleware::Authenticate, options
    use Middleware::Parse
    use Middleware::Siphon,       options
    use Middleware::Filter, { filter: Routemaster::Middleware::PayloadFilter.new }.merge(options)
    use Middleware::ExpireCache
    run terminator
  end
end