module Kiev::Shoryuken

Public Class Methods

enable(base = nil) click to toggle source
# File lib/kiev/shoryuken.rb, line 10
def enable(base = nil)
  base ||= ::Shoryuken
  base.configure_client do |config|
    enable_client_middleware(config)
  end
  base.configure_server do |config|
    enable_client_middleware(config)
    enable_server_middleware(config)
  end
end
enable_client_middleware(config) click to toggle source
# File lib/kiev/shoryuken.rb, line 33
def enable_client_middleware(config)
  config.client_middleware do |chain|
    chain.add(Middleware::MessageTracer)
  end
end
enable_server_middleware(config) click to toggle source
# File lib/kiev/shoryuken.rb, line 21
def enable_server_middleware(config)
  server_mw_enabled = false
  config.server_middleware do |chain|
    chain.add(Middleware::RequestStore)
    chain.add(Middleware::RequestId)
    chain.add(Middleware::StoreRequestDetails)
    chain.add(Middleware::RequestLogger)
    server_mw_enabled = true
  end
  server_mw_enabled # Shoryuken configuration may skip that block in non-worker setups
end
suffix_tree_path(config, tag) click to toggle source
# File lib/kiev/shoryuken.rb, line 39
def suffix_tree_path(config, tag)
  config.server_middleware do |chain|
    chain.insert_after(Middleware::RequestId, Middleware::TreePathSuffix, tag)
  end
end