Sha256: 4ee8fd579f5e12bd1b4d3fb2c9e9ead720d2e601ea06e506c45ea74252631ef1

Contents?: true

Size: 1.44 KB

Versions: 1

Compression:

Stored size: 1.44 KB

Contents

$LOAD_PATH.unshift(File.dirname(__FILE__))
require 'rubygems'
require 'perennial'

module Marvin
  include Perennial
  
  VERSION = [0, 8, 1, 0]
  
  # Client
  autoload :TestClient,       'marvin/test_client'
  # Console of DOOM.
  autoload :Console,          'marvin/console'
  # Distributed
  autoload :Distributed,      'marvin/distributed'
  # Handler
  autoload :Base,             'marvin/base'
  autoload :CommandHandler,   'marvin/command_handler'
  autoload :LoggingHandler,   'marvin/logging_handler'
  autoload :CoreCommands,     'marvin/core_commands'
  autoload :MiddleMan,        'marvin/middle_man'
  # These should be namespaced under IRC
  autoload :Parsers,          'marvin/parsers'
  
  
  manifest do |m, l|
    Settings.root = File.dirname(File.dirname(__FILE__))
    l.register_controller :client,             'Marvin::Settings.client'
    l.register_controller :console,            'Marvin::Console'
    l.register_controller :distributed_client, 'Marvin::Distributed::Client'
    # Core Commands handily makes available a set
    # of information about what is running etc.
    
    l.before_run do
      if l.distributed_client?
        Marvin::Settings.client = Marvin::Distributed::Client 
      end
    end
    
  end
  
  def self.version(include_minor = false)
    VERSION[0, (include_minor ? 4 : 3)].join(".")
  end
  
  has_library :util, :abstract_client, :abstract_parser, :irc, :exception_tracker
  
  extends_library :settings
  
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
marvin-0.8.1 lib/marvin.rb