Sha256: 586d6744997f4db49a2aad9124083468cefc99314811ffe39444e28c07593746

Contents?: true

Size: 566 Bytes

Versions: 2

Compression:

Stored size: 566 Bytes

Contents

module Netzke
  module Plugins
    extend ActiveSupport::Concern

    included do
      # Returns registered plugins
      class_attribute :registered_plugins
      self.registered_plugins = []
    end

    module ClassMethods
      # Defines a plugin
      def plugin(name, config = {}, &block)
        component(name, config, &block)
        register_plugin(name)
      end

      # Register a plugin
      def register_plugin(name)
        self.registered_plugins |= [name]
      end

    end

    def plugins
      self.class.registered_plugins
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
netzke-core-0.7.7 lib/netzke/plugins.rb
netzke-core-0.7.6 lib/netzke/plugins.rb