class DrunkMonkey::Base
Constants
- DEFAULT_OPTIONS
Attributes
base[RW]
Public Class Methods
middleware()
click to toggle source
# File lib/drunkmonkey.rb, line 65 def self.middleware Class.new do class << self attr_accessor :base end def initialize app = nil, options = {}, &block if self.class.base self.class.base.remap app else self.class.base = Base.new(app,options,&block) end end def call env self.class.base.call env end end end
new(app = nil, options = {})
click to toggle source
# File lib/drunkmonkey.rb, line 40 def initialize app = nil, options = {}, &block options = DEFAULT_OPTIONS.merge(options) @controller = Celluloid::Actor[options[:controller_name]] || Controller.new(options[:controller_name]) instance_eval(&block) if block mapping = Hash.new mapping[options[:path]] = -> env do Transport.call env, options end @base_mapping = mapping.dup mapping["/"] = app if app @map = Rack::URLMap.new mapping end
Public Instance Methods
call(env)
click to toggle source
# File lib/drunkmonkey.rb, line 79 def call env self.class.base.call env end
remap(app = nil)
click to toggle source
# File lib/drunkmonkey.rb, line 59 def remap app = nil mapping = @base_mapping.dup mapping["/"] = app if app @map = Rack::URLMap.new mapping end