aboutsummaryrefslogtreecommitdiff
path: root/Foundation/GTMLogger.m
diff options
context:
space:
mode:
authorGravatar gtm.daemon <gtm.daemon@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3>2011-08-12 00:30:28 +0000
committerGravatar gtm.daemon <gtm.daemon@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3>2011-08-12 00:30:28 +0000
commit8dc3f2a50d2a07fb21efeaf17669c9aafe0c25fe (patch)
treebb808cd7f8b488b7595bc6e7535df76336eebee5 /Foundation/GTMLogger.m
parent24b6e2d377ad55e269297977ade4bfd98df7fc5a (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.m27
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