existingItem.setGroups(setRosterItem.getGroups());
logger.debug(user.getBareJID() + " roster: roster item groups set to " + setRosterItem.getGroups());
try {
// update contact persistently
rosterManager.addContact(user.getBareJID(), existingItem);
} catch (RosterException e) {
return ServerErrorResponses.getInstance().getStanzaError(StanzaErrorCondition.BAD_REQUEST, stanza, StanzaErrorType.CANCEL, "roster item contact not (yet) in roster: " + contactJid, null, null);
}
pushRosterItemToInterestedResources(sessionContext, user, existingItem);