lib/xmpp4r/debuglog.rb in xmpp4r-0.4 vs lib/xmpp4r/debuglog.rb in xmpp4r-0.5
- old
+ new
@@ -6,28 +6,42 @@
module Jabber
def Jabber::logger
@@logger ||= Logger.new($stderr)
end
-
+
+ # Set the logger to use for debug and warn (if enabled)
def Jabber::logger=(logger)
@@logger = logger
end
# Is debugging mode enabled ?
@@debug = false
+ # Is warnings mode enabled ?
+ @@warnings = false
+
# Enable/disable debugging mode. When debug mode is enabled, information
# can be logged using Jabber::debuglog. When debug mode is disabled, calls
# to Jabber::debuglog are just ignored.
def Jabber::debug=(debug)
@@debug = debug
if @@debug
debuglog('Debugging mode enabled.')
+ #if debug is enabled, we should automatically enable warnings too
+ Jabber::warnings = true
end
end
+ # Enable/disable warnings mode.
+ def Jabber::warnings=(warnings)
+ @@warnings = warnings
+ if @@warnings
+ warnlog('Warnings mode enabled.')
+ end
+ end
+
# returns true if debugging mode is enabled. If you just want to log
# something if debugging is enabled, use Jabber::debuglog instead.
def Jabber::debug
@@debug
end
@@ -37,6 +51,13 @@
# first one. Time is prepended to the string.
def Jabber::debuglog(string)
return if not @@debug
logger.debug string.chomp.gsub("\n", "\n ")
end
+
+ # Outputs a string only if warnings mode is enabled.
+ def Jabber::warnlog(string)
+ return if not @@warnings
+ logger.warn string.chomp.gsub("\n", "\n ")
+ end
+
end