ObjXMPP  Check-in [b649d4350d]

Overview
Comment:XMPPContactManager: Remove contact from store after broadcasting the selector
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: b649d4350d648e9c45d9237cddf24e6f22ec6c5d929cb8e478b719860ed872fc
User & Date: florob@babelmonkeys.de on 2013-06-09 18:21:20
Other Links: manifest | tags
Context
2013-06-09
18:26
XMPPContactManager: Support for handling subscription requests check-in: 9d9f036640 user: florob@babelmonkeys.de tags: trunk
18:21
XMPPContactManager: Remove contact from store after broadcasting the selector check-in: b649d4350d user: florob@babelmonkeys.de tags: trunk
10:54
XMPPContactManager: Indentation fixes check-in: 46102a816a user: florob@babelmonkeys.de tags: trunk
Changes

Modified src/XMPPContactManager.m from [77eaa185c9] to [bc5cb3a56e].

111
112
113
114
115
116
117
118
119
120
121
122
123

124
125
126
127
128
129
130
{
	XMPPContact *contact;
	OFString *bareJID = [[rosterItem JID] bareJID];

	contact = [_contacts objectForKey: bareJID];

	if ([[rosterItem subscription] isEqual: @"remove"]) {
		[_contacts removeObjectForKey: bareJID];
		if (contact != nil)
			[_delegates broadcastSelector: @selector(contactManager:
							   didRemoveContact:)
					   withObject: self
					   withObject: contact];

		return;
	}

	if (contact == nil) {
		contact = [[XMPPContact new] autorelease];
		[contact XMPP_setRosterItem: rosterItem];
		[_contacts setObject: contact







<





>







111
112
113
114
115
116
117

118
119
120
121
122
123
124
125
126
127
128
129
130
{
	XMPPContact *contact;
	OFString *bareJID = [[rosterItem JID] bareJID];

	contact = [_contacts objectForKey: bareJID];

	if ([[rosterItem subscription] isEqual: @"remove"]) {

		if (contact != nil)
			[_delegates broadcastSelector: @selector(contactManager:
							   didRemoveContact:)
					   withObject: self
					   withObject: contact];
		[_contacts removeObjectForKey: bareJID];
		return;
	}

	if (contact == nil) {
		contact = [[XMPPContact new] autorelease];
		[contact XMPP_setRosterItem: rosterItem];
		[_contacts setObject: contact