diff --git a/activesupport/CHANGELOG b/activesupport/CHANGELOG index 13bff745245368449de8ac43b2d550bcd9c6d776..e9e3895a69d9b6d82d84343e14ee6927e0d5c9fd 100644 --- a/activesupport/CHANGELOG +++ b/activesupport/CHANGELOG @@ -1,3 +1,8 @@ +*SVN* + +* Added silencing to the default Logger class + + *1.0.4* (19th April, 2005) * Fixed that in some circumstances controllers outside of modules may have hidden ones inside modules. For example, admin/content might have been hidden by /content. #1075 [Nicholas Seckar] diff --git a/activesupport/lib/active_support/clean_logger.rb b/activesupport/lib/active_support/clean_logger.rb index 1a36562892aaa912e8f6bae5f0f851cf16e0eb15..df9a6867eca6cf6497c99490e0f71e53aa5ea7a2 100644 --- a/activesupport/lib/active_support/clean_logger.rb +++ b/activesupport/lib/active_support/clean_logger.rb @@ -1,6 +1,16 @@ require 'logger' class Logger #:nodoc: + # Silences the logger for the duration of the block. + def silence + result = nil + old_logger_level = level + self.level = Logger::ERROR + result = yield + self.level = old_logger_level + return result + end + private remove_const "Format" Format = "%s\n"