Class: Ghaki::App::Plugin

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/ghaki/app/plugin.rb

Overview

Singleton application plugin.

Examples

require 'ghaki/app/plugin'

class Widget
  attr_accessor :size
  def initialize opts={}
    @size = opts[:size]
  end
end

class WidgetApp < Ghaki::App::Plugin
  app_plugin_make Widget, :widget
end

# Default plugin constructor options.
WidgetApp.instance.widget_defs = {
  :size => 20,
}

# Actual plugin constructor options.
WidgetApp.instance.widget_opts = {
  :size => 10,
}

# Generated plugin has set value.
WidgetApp.instance.widget.size #=> 10