diff options
author | gtm.daemon <gtm.daemon@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3> | 2011-08-12 00:30:28 +0000 |
---|---|---|
committer | gtm.daemon <gtm.daemon@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3> | 2011-08-12 00:30:28 +0000 |
commit | 8dc3f2a50d2a07fb21efeaf17669c9aafe0c25fe (patch) | |
tree | bb808cd7f8b488b7595bc6e7535df76336eebee5 /Foundation/GTMLogger.m | |
parent | 24b6e2d377ad55e269297977ade4bfd98df7fc5a (diff) |
[Author: aharper]
Add a log filter that filters by simple level comparisons.
R=dmaclach,thomasvl
APPROVED=dmaclach
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 |