Make use of multicast delegates in XMPPRoster.

This commit is contained in:
Jonathan Schleifer 2012-01-30 18:45:43 +01:00
parent cb43292ca0
commit d1dc839333
6 changed files with 41 additions and 42 deletions

View file

@ -28,6 +28,7 @@
@class XMPPRosterItem;
@class XMPPIQ;
@class XMPPRoster;
@class XMPPMulticastDelegate;
@protocol XMPPRosterDelegate
#ifndef XMPP_ROSTER_M
@ -49,21 +50,17 @@
{
XMPPConnection *connection;
OFMutableDictionary *rosterItems;
id <XMPPRosterDelegate, OFObject> delegate;
XMPPMulticastDelegate *delegates;
}
#ifdef OF_HAVE_PROPERTIES
@property (assign) id <XMPPRosterDelegate> delegate;
#endif
- initWithConnection: (XMPPConnection*)conn;
- (OFDictionary*)rosterItems;
- (void)requestRoster;
- (void)addRosterItem: (XMPPRosterItem*)rosterItem;
- (void)updateRosterItem: (XMPPRosterItem*)rosterItem;
- (void)deleteRosterItem: (XMPPRosterItem*)rosterItem;
- (void)setDelegate: (id <XMPPRosterDelegate>)delegate;
- (id <XMPPRosterDelegate>)delegate;
- (void)addDelegate: (id <XMPPRosterDelegate>)delegate;
- (void)removeDelegate: (id <XMPPRosterDelegate>)delegate;
- (void)XMPP_addRosterItem: (XMPPRosterItem*)rosterItem;
- (void)XMPP_updateRosterItem: (XMPPRosterItem*)rosterItem;
- (void)XMPP_deleteRosterItem: (XMPPRosterItem*)rosterItem;