ObjXMPP  Diff

Differences From Artifact [59c5b114c5]:

To Artifact [24c872061c]:


103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118

	_contacts = [[OFMutableDictionary alloc] init];

	rosterItems = roster.rosterItems;
	for (OFString *bareJID in rosterItems) {
		XMPPContact *contact = [[[XMPPContact alloc] init] autorelease];
		contact.rosterItem = [rosterItems objectForKey: bareJID];
		[_contacts setObject: contact
			      forKey: bareJID];
		[_delegates broadcastSelector: @selector(contactManager:
						   didAddContact:)
				   withObject: self
				   withObject: contact];
	}
}








|
<







103
104
105
106
107
108
109
110

111
112
113
114
115
116
117

	_contacts = [[OFMutableDictionary alloc] init];

	rosterItems = roster.rosterItems;
	for (OFString *bareJID in rosterItems) {
		XMPPContact *contact = [[[XMPPContact alloc] init] autorelease];
		contact.rosterItem = [rosterItems objectForKey: bareJID];
		[_contacts setObject: contact forKey: bareJID];

		[_delegates broadcastSelector: @selector(contactManager:
						   didAddContact:)
				   withObject: self
				   withObject: contact];
	}
}

133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
		[_contacts removeObjectForKey: bareJID];
		return;
	}

	if (contact == nil) {
		contact = [[[XMPPContact alloc] init] autorelease];
		contact.rosterItem = rosterItem;
		[_contacts setObject: contact
			     forKey: bareJID];
		[_delegates broadcastSelector: @selector(contactManager:
						   didAddContact:)
				   withObject: self
				   withObject: contact];
	} else {
		[_delegates broadcastSelector: @selector(contact:
						   willUpdateWithRosterItem:)







|
<







132
133
134
135
136
137
138
139

140
141
142
143
144
145
146
		[_contacts removeObjectForKey: bareJID];
		return;
	}

	if (contact == nil) {
		contact = [[[XMPPContact alloc] init] autorelease];
		contact.rosterItem = rosterItem;
		[_contacts setObject: contact forKey: bareJID];

		[_delegates broadcastSelector: @selector(contactManager:
						   didAddContact:)
				   withObject: self
				   withObject: contact];
	} else {
		[_delegates broadcastSelector: @selector(contact:
						   willUpdateWithRosterItem:)
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185

	contact = [_contacts objectForKey: JID.bareJID];
	if (contact == nil)
		return;

	/* Available presence */
	if ([type isEqual: @"available"]) {
		[contact xmpp_setPresence: presence
				 resource: JID.resource];
		[_delegates broadcastSelector: @selector(contact:
						   didSendPresence:)
				   withObject: contact
				   withObject: presence];
		return;
	}








|
<







168
169
170
171
172
173
174
175

176
177
178
179
180
181
182

	contact = [_contacts objectForKey: JID.bareJID];
	if (contact == nil)
		return;

	/* Available presence */
	if ([type isEqual: @"available"]) {
		[contact xmpp_setPresence: presence resource: JID.resource];

		[_delegates broadcastSelector: @selector(contact:
						   didSendPresence:)
				   withObject: contact
				   withObject: presence];
		return;
	}