lib/marvin/settings.rb in jeffrafter-marvin-0.1.20081115 vs lib/marvin/settings.rb in jeffrafter-marvin-0.1.20081120
- old
+ new
@@ -1,16 +1,21 @@
require 'yaml'
+require 'eventmachine'
module Marvin
class Settings
- cattr_accessor :environment, :configuration, :is_setup, :default_client, :handler_folder, :default_parser
+ cattr_accessor :environment, :configuration, :is_setup, :default_client,
+ :handler_folder, :default_parser, :log_level, :verbose
+
+ self.verbose = false
+ self.log_level = :info
class << self
def root
- defined?(MARVIN_ROOT) ? MARVIN_ROOT : File.dirname(__FILE__) / "../.."
+ File.expand_path(defined?(MARVIN_ROOT) ? MARVIN_ROOT : File.dirname(__FILE__) / "../..")
end
def setup(options = {})
return if self.is_setup
self.setup!(options)
@@ -21,16 +26,11 @@
end
def setup!(options = {})
self.environment ||= "development"
self.configuration = {}
- self.default_client ||= begin
- require 'eventmachine'
- Marvin::IRC::Client
- rescue LoadError
- Marvin::IRC::SocketClient
- end
- self.default_parser ||= Marvin::Parsers::RegexpParser
+ self.default_client ||= Marvin::IRC::Client
+ self.default_parser ||= Marvin::Parsers::SimpleParser
loaded_yaml = YAML.load_file(root / "config/settings.yml")
loaded_options = loaded_yaml["default"].
merge(loaded_yaml[self.environment]).
merge(options)
self.configuration.merge!(loaded_options)
\ No newline at end of file