diff options
Diffstat (limited to 'Foundation/GTMLogger.m')
-rw-r--r-- | Foundation/GTMLogger.m | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/Foundation/GTMLogger.m b/Foundation/GTMLogger.m index 3f91bba..a673d23 100644 --- a/Foundation/GTMLogger.m +++ b/Foundation/GTMLogger.m @@ -507,3 +507,30 @@ static BOOL IsVerboseLoggingEnabled(void) { } @end // GTMLogNoFilter + + +@implementation GTMLogCustomLevelFilter + +- (id)init { + // Use error level for default init. + return [self initWithFilterLevel:kGTMLoggerLevelError]; +} + +- (id)initWithFilterLevel:(GTMLoggerLevel)level { + self = [super init]; + if (self != nil) { + filterLevel_ = level; + // Cap max level + if (filterLevel_ > kGTMLoggerLevelAssert) { + [self release]; + return nil; + } + } + return self; +} + +- (BOOL)filterAllowsMessage:(NSString *)msg level:(GTMLoggerLevel)level { + return (level >= filterLevel_) ? YES : NO; +} + +@end |