hide();\r
}\r
\r
- private void doAddUser(final String userID) {\r
- group.addMember(userID);\r
+ private void doAddUserByName(final String userDisplayName) {\r
+ final String userID = app.getIDForUserDisplayName(userDisplayName);\r
+ group.addMemberID(userID);\r
String path = "?update=";\r
PostRequest updateGroup = new PostRequest(app.getApiPath(), app.getUserID(), path) {\r
\r
};\r
updateGroup.setHeader(Const.X_AUTH_TOKEN, app.getUserToken());\r
String groupMembers = "";\r
- for(String u : group.getMembers()) {\r
+ for(String u : group.getMemberIDs()) {\r
groupMembers += (URL.encodePathSegment(u) + ",");\r
}\r
updateGroup.setHeader(Const.X_ACCOUNT_GROUP_ + URL.encodePathSegment(group.getName()), groupMembers);\r
}\r
\r
if(app.hasIDForUserDisplayName(userDisplayName)) {\r
- final String userID = app.getIDForUserDisplayName(userDisplayName);\r
- doAddUser(userID);\r
+ doAddUserByName(userDisplayName);\r
}\r
else {\r
new UpdateUserCatalogs(app, null, Arrays.asList(userDisplayName)) {\r
@Override\r
public void onSuccess(UserCatalogs requestedUserCatalogs, UserCatalogs updatedUserCatalogs) {\r
- final String userID = app.getIDForUserDisplayName(userDisplayName);\r
- doAddUser(userID);\r
+ doAddUserByName(userDisplayName);\r
}\r
}.scheduleDeferred();\r
}\r
final List<Group> groups = account.getGroups();
for(Group group : groups) {
LOG("Group ", group);
- for(String member: group.getMembers()) {
+ for(String member: group.getMemberIDs()) {
LOG(" ", member);
memberIDs.add(member);
}
final Group group = app.getAccount().getGroup(groupName);
if (group == null)
return;
- group.removeMember(user.getUserID());
+ group.removeMemberID(user.getUserID());
String path = "?update=";
PostRequest updateGroup = new PostRequest(app.getApiPath(), app.getUserID(), path) {
};
updateGroup.setHeader("X-Auth-Token", app.getUserToken());
String groupMembers = "";
- if (!group.getMembers().isEmpty()) {
- for (String u : group.getMembers())
+ if (!group.getMemberIDs().isEmpty()) {
+ for (String u : group.getMemberIDs())
groupMembers += (URL.encodePathSegment(u) + ",");
}
else
Group g = new Group(groupName);
String[] members = h.getValue().split(",");
for (String s : members)
- g.addMember(URL.decodePathSegment(s).trim());
+ g.addMemberID(URL.decodePathSegment(s).trim());
groups.add(g);
}
else if (name.equals("X-Account-Container-Count")) {
import java.util.List;
public class Group {
- private String name;
+ private final String name;
- private List<String> members = new ArrayList<String>();
+ private final List<String> memberIDs = new ArrayList<String>();
- public Group(String _name) {
- name = _name;
+ public Group(String name) {
+ this.name = name;
}
- public List<String> getMembers() {
- return members;
+ public List<String> getMemberIDs() {
+ return memberIDs;
}
public String getName() {
return name;
}
- public void addMember(String user) {
- members.add(user);
+ public void addMemberID(String userID) {
+ memberIDs.add(userID);
}
- public void removeMember(String username) {
- members.remove(username);
+ public void removeMemberID(String userID) {
+ memberIDs.remove(userID);
}
@Override
public String toString() {
- return "Group(" + name + ", " + members.size() + " members)";
+ return "Group(" + name + ", " + memberIDs.size() + " members)";
}
}
private Cell<User> userCell = new AbstractCell<User>(ContextMenuEvent.getType().getName()) {
@Override
- public void render(Context context, User value, SafeHtmlBuilder sb) {
+ public void render(Context context, User user, SafeHtmlBuilder sb) {
String html = AbstractImagePrototype.create(GroupTreeView.images.user()).getHTML();
sb.appendHtmlConstant(html).appendHtmlConstant(" ");
- sb.append(Templates.INSTANCE.nameSpan(value.getUserID()));
+ final String userID = user.getUserID();
+ final String userDisplayName = app.getDisplayNameForUserID(userID);
+ sb.append(Templates.INSTANCE.nameSpan(userDisplayName));
}
@Override
}
final ListDataProvider<User> dataProvider = userDataProviderMap.get(g);
dataProvider.getList().clear();
- for (String u : g.getMembers())
- dataProvider.getList().add(new User(u, g.getName()));
+ for (String userID : g.getMemberIDs())
+ dataProvider.getList().add(new User(userID, g.getName()));
return new DefaultNodeInfo<User>(dataProvider, userCell, userSelectionModel, null);
}
return true;
}
else if (o instanceof Group)
- return ((Group) o).getMembers().isEmpty();
+ return ((Group) o).getMemberIDs().isEmpty();
return false;
}
}
final ListDataProvider<User> dataProvider = userDataProviderMap.get(group);
dataProvider.getList().clear();
- for (String u : group.getMembers())
+ for (String u : group.getMemberIDs())
dataProvider.getList().add(new User(u, group.getName()));
}
}