@Override public ManageGroupResult execute(ManageGroupCommand command) { ManageGroupResult result = new ManageGroupResult(command.getId()); ManageGroupAction action = command.getAction(); String targetGroupName = command.getGroupName(); if (ManageGroupAction.JOIN.equals(action)) { joinGroup(targetGroupName); } else if (ManageGroupAction.QUIT.equals(action)) { quitGroup(targetGroupName); if (groupManager.listLocalGroups().isEmpty()) { joinGroup(Configurations.DEFAULT_GROUP_NAME); } } else if (ManageGroupAction.PURGE.equals(action)) { purgeGroups(); joinGroup(Configurations.DEFAULT_GROUP_NAME); } else if (ManageGroupAction.SET.equals(action)) { Group localGroup = groupManager.listLocalGroups().iterator().next(); quitGroup(localGroup.getName()); joinGroup(targetGroupName); } addGroupListToResult(result); return result; }
@Override public ManageGroupResult execute(ManageGroupCommand command) { ManageGroupResult result = new ManageGroupResult(command.getId()); ManageGroupAction action = command.getAction(); String targetGroupName = command.getGroupName(); if (ManageGroupAction.JOIN.equals(action)) { joinGroup(targetGroupName); } else if (ManageGroupAction.QUIT.equals(action)) { quitGroup(targetGroupName); if (groupManager.listLocalGroups().isEmpty()) { joinGroup(Configurations.DEFAULT_GROUP_NAME); } } else if (ManageGroupAction.PURGE.equals(action)) { purgeGroups(); joinGroup(Configurations.DEFAULT_GROUP_NAME); } else if (ManageGroupAction.SET.equals(action)) { Group localGroup = groupManager.listLocalGroups().iterator().next(); quitGroup(localGroup.getName()); joinGroup(targetGroupName); } addGroupListToResult(result); return result; }