/** * Remove user or group name from a group {@link XWikiDocument}. * * @param groupDocument the {@link XWikiDocument} containing group object. * @param memberWiki the name of the wiki of the member. * @param memberSpace the name of the space of the member. * @param memberName the name of the member. * @param context the XWiki context. * @return true if at least one member has been removed from the list. */ private boolean removeUserOrGroupFromGroup(XWikiDocument groupDocument, String memberWiki, String memberSpace, String memberName, XWikiContext context) { boolean needUpdate = false; Vector<BaseObject> groupVector = groupDocument.getObjects(CLASS_XWIKIGROUPS); if (groupVector != null) { for (BaseObject bobj : groupVector) { if (bobj != null) { String member = bobj.getStringValue(FIELD_XWIKIGROUPS_MEMBER); if (isMemberEquals(member, memberWiki, memberSpace, memberName, context)) { needUpdate = groupDocument.removeXObject(bobj); } } } } return needUpdate; }