module Zen::Service::Plugins::Plugin
Public Class Methods
extended(plugin)
click to toggle source
# File lib/zen/service/plugins/plugin.rb, line 6 def self.extended(plugin) name = plugin.name.sub(/^.*::/, "").gsub(/([a-z\d])([A-Z])/, '\1_\2').downcase.to_sym Service::Plugins.register(name, plugin) end
Public Instance Methods
config()
click to toggle source
# File lib/zen/service/plugins/plugin.rb, line 24 def config @config ||= {} end
default_options(options)
click to toggle source
# File lib/zen/service/plugins/plugin.rb, line 16 def default_options(options) config[:default_options] = options end
register_as(name)
click to toggle source
# File lib/zen/service/plugins/plugin.rb, line 12 def register_as(name) Service::Plugins.register(name, self) end
service_extension(extension)
click to toggle source
# File lib/zen/service/plugins/plugin.rb, line 20 def service_extension(extension) ::Zen::Service.send(:extend, extension) end