Module: StorageRoom::Plugins

Includes:
ActiveSupport::DescendantsTracker
Included in:
Resource
Defined in:
lib/storage_room/plugins.rb

Instance Method Summary collapse

Instance Method Details

#included(base = nil, &block) ⇒ Object



17
18
19
20
# File 'lib/storage_room/plugins.rb', line 17

def included(base = nil, &block)
  direct_descendants << base if base
  super
end

#plugin(mod) ⇒ Object



11
12
13
14
15
# File 'lib/storage_room/plugins.rb', line 11

def plugin(mod)
  include mod
  direct_descendants.each {|model| model.send(:include, mod) }
  plugins << mod
end

#pluginsObject



7
8
9
# File 'lib/storage_room/plugins.rb', line 7

def plugins
  @plugins ||= []
end