Author: rfm
Date: Mon Feb 2 11:38:44 2015
New Revision: 38320
URL: http://svn.gna.org/viewcvs/gnustep?rev=38320&view=rev
Log:
add some debug
Modified:
libs/ec/trunk/EcAlarmDestination.h
libs/ec/trunk/EcAlarmDestination.m
Modified: libs/ec/trunk/EcAlarmDestination.h
URL:
http://svn.gna.org/viewcvs/gnustep/libs/ec/trunk/EcAlarmDestination.h?rev=38320&r1=38319&r2=38320&view=diff
==============================================================================
--- libs/ec/trunk/EcAlarmDestination.h (original)
+++ libs/ec/trunk/EcAlarmDestination.h Mon Feb 2 11:38:44 2015
@@ -97,6 +97,7 @@
NSString *_name;
id<EcAlarmDestination> _destination;
NSArray *_backups;
+ BOOL _debug;
}
/** Passes an alarm to the destination by adding it to a queue of alarm
@@ -172,6 +173,12 @@
*/
- (BOOL) setCoalesce: (BOOL)coalesce;
+/** Sets debug on/off. When debugging is on, we generate logs of
+ * forwarding to the destination and of coalescing of alams.<br />
+ * Returns the previous value of the setting.
+ */
+- (BOOL) setDebug: (BOOL)debug;
+
/** Sets the destination to which alarms should be forwarded.<br />
* If nil this turns off forwarding until it is re-set to a non-nil
* destination.<br />
Modified: libs/ec/trunk/EcAlarmDestination.m
URL:
http://svn.gna.org/viewcvs/gnustep/libs/ec/trunk/EcAlarmDestination.m?rev=38320&r1=38319&r2=38320&view=diff
==============================================================================
--- libs/ec/trunk/EcAlarmDestination.m (original)
+++ libs/ec/trunk/EcAlarmDestination.m Mon Feb 2 11:38:44 2015
@@ -84,19 +84,34 @@
[_alarmQueue addObject: event];
if (NSNotFound != index)
{
- event = [_alarmQueue objectAtIndex: index];
- if ([event perceivedSeverity] == EcAlarmSeverityCleared)
+ EcAlarm *old = [_alarmQueue objectAtIndex: index];
+
+ if ([old perceivedSeverity] == EcAlarmSeverityCleared)
{
+ if (YES == _debug)
+ {
+ NSLog(@"Coalesce %@ by removing %@", event, old);
+ }
[_alarmQueue removeObjectAtIndex: index];
}
}
}
else
{
- [event retain];
- [_alarmQueue removeObject: event];
+ NSUInteger index;
+
+ index = [_alarmQueue indexOfObject: event];
[_alarmQueue addObject: event];
- [event release];
+ if (NSNotFound != index)
+ {
+ EcAlarm *old = [_alarmQueue objectAtIndex: index];
+
+ if (YES == _debug)
+ {
+ NSLog(@"Coalesce %@ by removing %@", event, old);
+ }
+ [_alarmQueue removeObjectAtIndex: index];
+ }
}
[_alarmLock unlock];
}
@@ -206,8 +221,17 @@
}
else
{
- [_alarmQueue removeObject: event];
- [_alarmQueue addObject: event];
+ NSUInteger index = [_alarmQueue indexOfObject: event];
+
+ [_alarmQueue addObject: event];
+ if (NSNotFound != index)
+ {
+ if (YES == _debug)
+ {
+ NSLog(@"Coalesce %@", event);
+ }
+ [_alarmQueue removeObjectAtIndex: index];
+ }
}
[_alarmLock unlock];
}
@@ -288,6 +312,17 @@
[_alarmLock lock];
old = (NO == _coalesceOff) ? YES : NO;
_coalesceOff = (NO == coalesce) ? YES : NO;
+ [_alarmLock unlock];
+ return old;
+}
+
+- (BOOL) setDebug: (BOOL)debug
+{
+ BOOL old;
+
+ [_alarmLock lock];
+ old = _debug;
+ _debug = (YES == debug) ? YES : NO;
[_alarmLock unlock];
return old;
}
@@ -372,8 +407,17 @@
}
else
{
- [_alarmQueue removeObject: event];
- [_alarmQueue addObject: event];
+ NSUInteger index = [_alarmQueue indexOfObject: event];
+
+ [_alarmQueue addObject: event];
+ if (NSNotFound != index)
+ {
+ if (YES == _debug)
+ {
+ NSLog(@"Coalesce %@", event);
+ }
+ [_alarmQueue removeObjectAtIndex: index];
+ }
}
[_alarmLock unlock];
}
@@ -664,6 +708,10 @@
}
NS_DURING
[[self _connect] alarm: event];
+ if (YES == _debug)
+ {
+ NSLog(@"%@ %@", NSStringFromSelector(_cmd), event);
+ }
NS_DURING
[[self backups] makeObjectsPerformSelector: @selector(alarm:)
withObject: event];
@@ -688,6 +736,10 @@
}
NS_DURING
[[self _connect] domanage: managedObject];
+ if (YES == _debug)
+ {
+ NSLog(@"%@ %@", NSStringFromSelector(_cmd), managedObject);
+ }
NS_DURING
[[self backups] makeObjectsPerformSelector: @selector(domanage:)
withObject: managedObject];
@@ -712,6 +764,10 @@
}
NS_DURING
[[self _connect] unmanage: managedObject];
+ if (YES == _debug)
+ {
+ NSLog(@"%@ %@", NSStringFromSelector(_cmd), managedObject);
+ }
NS_DURING
[[self backups] makeObjectsPerformSelector: @selector(unmanage:)
withObject: managedObject];
_______________________________________________
Gnustep-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/gnustep-cvs