Module: SchemaMonkey::Stack

Defined in:
lib/schema_monkey/stack.rb

Defined Under Namespace

Modules: StackHolder

Class Method Summary collapse

Class Method Details

.insert(path, mod) ⇒ Object



5
6
7
8
9
10
11
12
# File 'lib/schema_monkey/stack.rb', line 5

def self.insert(path, mod)
  env = Module.const_lookup(mod, "Env") || Module.const_lookup(mod, "ENV")
  return unless env or Modware.is_middleware?(mod)
  stack_holder = env ? create(path, env) : get(path)
  stack_holder.stack.add(mod)
rescue MiddlewareError => err
  raise MiddlewareError, "#{mod}: #{err.message}"
end