Class: Pokey::Hooks
- Inherits:
-
Object
- Object
- Pokey::Hooks
- Defined in:
- lib/pokey/hooks.rb
Constant Summary collapse
- @@hooks =
[]
Class Method Summary collapse
- .add(&block) ⇒ Object
- .add_from_class(klass) ⇒ Object
- .add_from_dir(directory) ⇒ Object
- .all ⇒ Object
- .clear! ⇒ Object
- .count ⇒ Object
Class Method Details
.add(&block) ⇒ Object
18 19 20 21 22 |
# File 'lib/pokey/hooks.rb', line 18 def self.add(&block) hook = Pokey::Hook.new block.call(hook) @@hooks << hook end |
.add_from_class(klass) ⇒ Object
24 25 26 27 |
# File 'lib/pokey/hooks.rb', line 24 def self.add_from_class(klass) return unless klass @@hooks << klass.new end |
.add_from_dir(directory) ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/pokey/hooks.rb', line 29 def self.add_from_dir(directory) directory += "/" if directory[-1] != "/" Dir.glob("#{directory}*.rb").map(&File.method(:realpath)).each do |file_path| require file_path base_name = File.basename(file_path, ".rb") klass = Helpers::Inflector.constantize(base_name.split('_').collect(&:capitalize).join) add_from_class(klass) end end |
.all ⇒ Object
10 11 12 |
# File 'lib/pokey/hooks.rb', line 10 def self.all @@hooks end |
.clear! ⇒ Object
6 7 8 |
# File 'lib/pokey/hooks.rb', line 6 def self.clear! @@hooks = [] end |
.count ⇒ Object
14 15 16 |
# File 'lib/pokey/hooks.rb', line 14 def self.count @@hooks.length end |