AnsweredAssumed Answered

Smack 4.1.0 RosterEntry setName(..) doesn't change the name

Question asked by Matt Ko on Apr 28, 2015
Latest reply on Apr 30, 2015 by Matt Ko

I'm not sure if there is already a definitive patch for this, but this question for 3.2.1 already addressed my issue:

Issue reporting, concerning #SMACK-312  and RosterEntry.setName

 

Looking at the latest code, it seems kind of obvious that RosterEntry.setName(..) can't work right:

It's adding the instance of the entry as a roster item to the packet first :

packet.addRosterItem(toRosterItem(this));


Then, after sending the packet and receiving the result, the name of the instance is changed:

// We have received a result response to the IQ set, the name was successfully changed

this.name = name;

 

So the packet that's being sent out to the server doesn't contain the updated name, but only the old name.

 

The question referenced above already provides a patch to fix this issue and from what I saw in jira, this patch should have been applied at some point.

But I guess it wasn't applied to master in the end.

 

Is there any workaround for changing the name of a roster entry at the moment ?

 

I'd love to provide/apply this patch by the way, but according to Guidelines for Smack Developers and Contributors · igniterealtime/Smack Wiki · GitHub it seems like it'll take a bit for me to get used to everything since I'm very new to Smack.

 

Thank you for your guidance

Outcomes