@registry = BotRegistryAccessor.new(@bot, self.class.to_s.gsub(/^.*::/, ""))
end
+ def flush_registry
+ @registry.flush
+ end
+
def map(*args)
@handler.map(*args)
# register this map
debug "loading plugin #{tmpfilename}"
plugin_module.module_eval(plugin_string)
processed << file
- rescue TimeoutError, StandardError, NameError, LoadError, SyntaxError => err
+ rescue Exception => err
+ # rescue TimeoutError, StandardError, NameError, LoadError, SyntaxError => err
puts "warning: plugin #{tmpfilename} load failed: " + err
puts err.backtrace.join("\n")
end
# call the save method for each active plugin
def save
+ delegate 'flush_registry'
delegate 'save'
end
if(@@plugins.has_key?(key))
begin
return @@plugins[key].help(key, params)
- rescue TimeoutError, StandardError, NameError, SyntaxError => err
+ rescue Exception => err
+ #rescue TimeoutError, StandardError, NameError, SyntaxError => err
puts "plugin #{@@plugins[key].name} help() failed: " + err
puts err.backtrace.join("\n")
end
if(p.respond_to? method)
begin
p.send method, *args
- rescue TimeoutError, StandardError, NameError, SyntaxError => err
+ rescue Exception => err
+ #rescue TimeoutError, StandardError, NameError, SyntaxError => err
puts "plugin #{p.name} #{method}() failed: " + err
puts err.backtrace.join("\n")
end
@@bot.auth.allow?(m.plugin, m.source, m.replyto))
begin
@@plugins[m.plugin].privmsg(m)
- rescue TimeoutError, StandardError, NameError, SyntaxError => err
+ rescue Exception => err
+ #rescue TimeoutError, StandardError, NameError, SyntaxError => err
puts "plugin #{@@plugins[m.plugin].name} privmsg() failed: " + err
puts err.backtrace.join("\n")
end