Module: Merb::Plugins

Defined in:
lib/merb-core/plugins.rb

Class Method Summary collapse

Class Method Details

.add_generators(*generators) ⇒ Object

Parameters

*generators

Generator paths to add to the list of plugin generators.

Notes

This is the recommended way to register your plugin’s generators in Merb.



55
56
57
# File 'lib/merb-core/plugins.rb', line 55

def self.add_generators(*generators)
  Merb.add_generators *generators
end

.add_rakefiles(*rakefiles) ⇒ Object

Parameters

*rakefiles

Rakefiles to add to the list of plugin Rakefiles.

Notes

This is a recommended way to register your plugin’s Raketasks in Merb.

Examples

From merb_sequel plugin:

if defined(Merb::Plugins)

Merb::Plugins.add_rakefiles "merb_sequel" / "merbtasks"

end



44
45
46
# File 'lib/merb-core/plugins.rb', line 44

def self.add_rakefiles(*rakefiles)
  Merb.add_rakefiles *rakefiles
end

.configObject

Returns

Hash

The configuration loaded from Merb.root / “config/plugins.yml” or, if the load fails, an empty hash whose default value is another Hash.



9
10
11
12
13
14
15
16
# File 'lib/merb-core/plugins.rb', line 9

def self.config
  @config ||= begin
    # this is so you can do Merb.plugins.config[:helpers][:awesome] = "bar"
    config_hash = Hash.new {|h,k| h[k] = {}}
    file = Merb.root / "config" / "plugins.yml"
    config_hash.merge((File.exists?(file) && YAML.load_file(file)) || {})
  end
end

.generatorsObject

Returns

Array(String)

All Generator load paths Merb uses for plugins.



26
27
28
# File 'lib/merb-core/plugins.rb', line 26

def self.generators
  Merb.generators
end

.rakefilesObject

Returns

Array(String)

All Rakefile load paths Merb uses for plugins.



20
21
22
# File 'lib/merb-core/plugins.rb', line 20

def self.rakefiles
  Merb.rakefiles
end