adium 2094:cf0d5eb5ea7f: Protocol-ize another delegate. Sadly, t...
commits at adium.im
commits at adium.im
Tue May 5 08:45:58 UTC 2009
details: http://hg.adium.im/adium/rev/cf0d5eb5ea7f
revision: 2094:cf0d5eb5ea7f
author: David Smith <catfish.man at gmail.com>
date: Tue May 05 01:45:54 2009 -0700
Protocol-ize another delegate. Sadly, this results in a cast in the one place it's used, since it passes a Class as the delegate. Still safer for future users though
diffstat:
Plugins/Purple Service/AMPurpleJabberAdHocServer.h | 6 ++++--
Plugins/Purple Service/AMPurpleJabberAdHocServer.m | 2 +-
Plugins/Purple Service/ESPurpleJabberAccount.m | 2 +-
3 files changed, 6 insertions(+), 4 deletions(-)
diffs (51 lines):
diff -r d470a05e220b -r cf0d5eb5ea7f Plugins/Purple Service/AMPurpleJabberAdHocServer.h
--- a/Plugins/Purple Service/AMPurpleJabberAdHocServer.h Tue May 05 01:40:16 2009 -0700
+++ b/Plugins/Purple Service/AMPurpleJabberAdHocServer.h Tue May 05 01:45:54 2009 -0700
@@ -1,6 +1,7 @@
#import "ESPurpleJabberAccount.h"
@class AMPurpleJabberAdHocCommand;
+ at protocol AMPurpleJabberAdHocServerDelegate;
@interface AMPurpleJabberAdHocServer : NSObject {
ESPurpleJabberAccount *account;
@@ -8,12 +9,13 @@
}
- (id)initWithAccount:(ESPurpleJabberAccount *)_account;
-- (void)addCommand:(NSString *)node delegate:(id)delegate name:(NSString *)name;
+- (void)addCommand:(NSString *)node delegate:(id<AMPurpleJabberAdHocServerDelegate>)delegate name:(NSString *)name;
- (ESPurpleJabberAccount *)account;
@end
- at interface NSObject (AMPurpleJabberAdHocServerDelegate)
+ at protocol AMPurpleJabberAdHocServerDelegate <NSObject>
+ at optional
- (void)adHocServer:(AMPurpleJabberAdHocServer *)server executeCommand:(AMPurpleJabberAdHocCommand *)command;
@end
diff -r d470a05e220b -r cf0d5eb5ea7f Plugins/Purple Service/AMPurpleJabberAdHocServer.m
--- a/Plugins/Purple Service/AMPurpleJabberAdHocServer.m Tue May 05 01:40:16 2009 -0700
+++ b/Plugins/Purple Service/AMPurpleJabberAdHocServer.m Tue May 05 01:45:54 2009 -0700
@@ -95,7 +95,7 @@
[super dealloc];
}
-- (void)addCommand:(NSString*)node delegate:(id)delegate name:(NSString*)name {
+- (void)addCommand:(NSString*)node delegate:(id<AMPurpleJabberAdHocServerDelegate>)delegate name:(NSString*)name {
[commands setObject:[NSDictionary dictionaryWithObjectsAndKeys:
[NSValue valueWithNonretainedObject:delegate],@"delegate",
name, @"name",
diff -r d470a05e220b -r cf0d5eb5ea7f Plugins/Purple Service/ESPurpleJabberAccount.m
--- a/Plugins/Purple Service/ESPurpleJabberAccount.m Tue May 05 01:40:16 2009 -0700
+++ b/Plugins/Purple Service/ESPurpleJabberAccount.m Tue May 05 01:45:54 2009 -0700
@@ -744,7 +744,7 @@
[adhocServer release];
adhocServer = [[AMPurpleJabberAdHocServer alloc] initWithAccount:self];
- [adhocServer addCommand:@"ping" delegate:[AMPurpleJabberAdHocPing class] name:@"Ping"];
+ [adhocServer addCommand:@"ping" delegate:(id<AMPurpleJabberAdHocServerDelegate>)[AMPurpleJabberAdHocPing class] name:@"Ping"];
[super didConnect];
More information about the commits
mailing list