class FFWD::Plugin::Loaded

Attributes

description[R]
name[R]
options[R]
source[R]

Public Class Methods

new(source, name, config) click to toggle source
# File lib/ffwd/plugin.rb, line 23
def initialize source, name, config
  @source = source
  @name = name
  @mod = config[:mod]
  @description = config[:description]
  @options = config[:options]
  @setup_input_method = load_method @mod, config[:setup_input_method_name]
  @setup_output_method = load_method @mod, config[:setup_output_method_name]
end

Public Instance Methods

can?(kind) click to toggle source
# File lib/ffwd/plugin.rb, line 47
def can?(kind)
  not get(kind).nil?
end
capabilities() click to toggle source
# File lib/ffwd/plugin.rb, line 33
def capabilities
  capabilities = []

  if not @setup_input_method.nil?
    capabilities << "input"
  end

  if not @setup_output_method.nil?
    capabilities << "output"
  end

  return capabilities
end
get(kind) click to toggle source
# File lib/ffwd/plugin.rb, line 51
def get(kind)
  return @setup_input_method if kind == :input
  return @setup_output_method if kind == :output
  return nil
end

Private Instance Methods

load_method(mod, method_name) click to toggle source
# File lib/ffwd/plugin.rb, line 59
def load_method mod, method_name
  return nil unless mod.respond_to? method_name
  return mod.method method_name
end