RosterGroup modifications should depend on roster push


As described in RFC3921 and more detailed in RFC3921bis updating a roster item should work in the same procedure like adding a roster item. This means it should depend on the roster push from the server to ensure a synchronized roster. But the RosterGroup#addEntry and RosterGroup#removeEntry adding/removing the item after the successful result of the request IQ. Also the Roster#RosterPacketListener which handles the roster pushes have to add or remove the roster entry from the groups. This can lead to an incorrect state.




Guenther Niess
February 16, 2010, 3:11 PM

Committed a patch to revision 11634.

Guenther Niess
February 16, 2010, 3:07 PM

I've committed a unit test which tests the RFC roster examples. The testUpdateRosterItem test results with duplicated roster entries for romeo which is a result of this bug.

Your pinned fields
Click on the next to a field label to start pinning.


Guenther Niess


Guenther Niess