Class: Puma::PluginLoader

Inherits:
Object
  • Object
show all
Defined in:
lib/puma/plugin.rb

Instance Method Summary collapse

Constructor Details

#initializePluginLoader

Returns a new instance of PluginLoader.



5
6
7
# File 'lib/puma/plugin.rb', line 5

def initialize
  @instances = []
end

Instance Method Details

#create(name) ⇒ Object

Raises:



9
10
11
12
13
14
15
16
17
# File 'lib/puma/plugin.rb', line 9

def create(name)
  if cls = Plugins.find(name)
    plugin = cls.new(Plugin)
    @instances << plugin
    return plugin
  end

  raise UnknownPlugin, "File failed to register properly named plugin"
end

#fire_starts(launcher) ⇒ Object



19
20
21
22
23
24
25
# File 'lib/puma/plugin.rb', line 19

def fire_starts(launcher)
  @instances.each do |i|
    if i.respond_to? :start
      i.start(launcher)
    end
  end
end