public VerticalPanel buildUsersListPanel() { DockPanel headerDockPanel = new DockPanel(); headerDockPanel.add(deleteUserBtn, DockPanel.EAST); VerticalPanel spacer = new VerticalPanel(); spacer.setWidth("2"); // $NON-NLS-1$ headerDockPanel.add(spacer, DockPanel.EAST); headerDockPanel.add(addUserBtn, DockPanel.EAST); Label label = new Label("Users"); // $NON-NLS-1$ headerDockPanel.add(label, DockPanel.WEST); headerDockPanel.setCellWidth(label, "100%"); // $NON-NLS-1$ VerticalPanel userListPanel = new VerticalPanel(); userListPanel.add(headerDockPanel); userListPanel.add(usersList); userListPanel.add(new Label(Messages.getString("filter"))); // $NON-NLS-1$ userListPanel.add(filterTextBox); userListPanel.setCellHeight(usersList, "100%"); // $NON-NLS-1$ userListPanel.setCellWidth(usersList, "100%"); // $NON-NLS-1$ userListPanel.setHeight("100%"); // $NON-NLS-1$ userListPanel.setWidth("100%"); // $NON-NLS-1$ usersList.setHeight("100%"); // $NON-NLS-1$ usersList.setWidth("100%"); // $NON-NLS-1$ filterTextBox.setWidth("100%"); // $NON-NLS-1$ deleteUserBtn.setEnabled(false); filterTextBox.addKeyboardListener(this); usersList.addChangeListener(this); addUserBtn.addClickListener(this); deleteUserBtn.addClickListener(this); return userListPanel; }
public static void checkUsersList(UsersList usersList) { // Check optional fields if (usersList.getUsers() != null) { for (Reference user : usersList.getUsers()) { checkReferenceType(user); } } }
private void assignSelectedUsers() { AsyncCallback<Object> callback = new AsyncCallback<Object>() { public void onSuccess(Object result) { userAssignmentsModified = true; hide(); } public void onFailure(Throwable caught) { MessageDialogBox messageDialog = new MessageDialogBox( ExceptionParser.getErrorHeader(caught.getMessage()), ExceptionParser.getErrorMessage( caught.getMessage(), Messages.getString("errorAssigningSelectedUsers")), false, false, true); //$NON-NLS-1$ messageDialog.center(); } }; UserAndRoleMgmtService.instance() .setUsers( role, accumulatedUsersList.getObjects().toArray(new ProxyPentahoUser[0]), callback); }
private void userSelectionChanged() { List<ProxyPentahoUser> selectedUsers = usersList.getSelectedObjects(); if (selectedUsers.size() == 1) { userDetailsPanel.setUser(selectedUsers.get(0)); List<ProxyPentahoRole> roleList = Arrays.asList(UserAndRoleMgmtService.instance().getRoles(selectedUsers.get(0))); assignedRolesList.setObjects(roleList); } else { userDetailsPanel.setUser(null); List<ProxyPentahoRole> emptyRoleList = Collections.emptyList(); assignedRolesList.setObjects(emptyRoleList); } userDetailsPanel.setEnabled(selectedUsers.size() == 1); updateUserBtn.setEnabled(selectedUsers.size() == 1); if (selectedUsers.size() > 0) { deleteUserBtn.setEnabled(true); } else { deleteUserBtn.setEnabled(false); } if (selectedUsers.size() == 1) { addRoleAssignmentBtn.setEnabled(true); } else { addRoleAssignmentBtn.setEnabled(false); } userDetailsPanel.getUserNameTextBox().setEnabled(false); assignedRoleSelectionChanged(); }
private void unassignSelectedRoles() { List<ProxyPentahoUser> selectedUsers = usersList.getSelectedObjects(); if (selectedUsers.size() == 1) { ArrayList<ProxyPentahoRole> assignedRoles = new ArrayList<ProxyPentahoRole>(); assignedRoles.addAll( Arrays.asList(UserAndRoleMgmtService.instance().getRoles(selectedUsers.get(0)))); final List<ProxyPentahoRole> rolesToUnassign = assignedRolesList.getSelectedObjects(); assignedRoles.removeAll(rolesToUnassign); AsyncCallback<Object> callback = new AsyncCallback<Object>() { public void onSuccess(Object result) { assignedRolesList.removeObjects(rolesToUnassign); } public void onFailure(Throwable caught) { MessageDialogBox messageDialog = new MessageDialogBox( ExceptionParser.getErrorHeader(caught.getMessage()), ExceptionParser.getErrorMessage( caught.getMessage(), Messages.getString("errorUnassigningRoles")), false, false, true); //$NON-NLS-1$ messageDialog.center(); } }; UserAndRoleMgmtService.instance() .setRoles( selectedUsers.get(0), (ProxyPentahoRole[]) assignedRoles.toArray(new ProxyPentahoRole[0]), callback); } }
private void deleteSelectedUsers() { final List<ProxyPentahoUser> selectedUsers = usersList.getSelectedObjects(); if (selectedUsers.size() > 0) { AsyncCallback<Boolean> callback = new AsyncCallback<Boolean>() { public void onSuccess(Boolean result) { usersList.removeObjects(selectedUsers); userSelectionChanged(); } public void onFailure(Throwable caught) { MessageDialogBox messageDialog = new MessageDialogBox( ExceptionParser.getErrorHeader(caught.getMessage()), ExceptionParser.getErrorMessage( caught.getMessage(), Messages.getString("errorDeletingUsers")), false, false, true); //$NON-NLS-1$ messageDialog.center(); } }; UserAndRoleMgmtService.instance() .deleteUsers(selectedUsers.toArray(new ProxyPentahoUser[0]), callback); } }
public void setRole(ProxyPentahoRole role) { userAssignmentsModified = false; this.role = role; if (role != null) { ArrayList<ProxyPentahoUser> unassignedUsers = new ArrayList<ProxyPentahoUser>(); unassignedUsers.addAll(Arrays.asList(UserAndRoleMgmtService.instance().getUsers())); ArrayList<ProxyPentahoUser> assignedUsers = new ArrayList<ProxyPentahoUser>(); assignedUsers.addAll(Arrays.asList(UserAndRoleMgmtService.instance().getUsers(role))); unassignedUsers.removeAll(assignedUsers); availableUsersList.setObjects(unassignedUsers); accumulatedUsersList.setObjects(assignedUsers); } else { List<ProxyPentahoUser> emptyList = Collections.emptyList(); availableUsersList.setObjects(emptyList); accumulatedUsersList.setObjects(emptyList); } }
public void onClick(Widget sender) { if (sender == updateUserBtn) { updateUserDetails(sender); } else if (sender == deleteUserBtn) { if (usersList.getSelectedObjects().size() > 0) { confirmDeleteUsersDialog.center(); } } else if (sender == addUserBtn) { addNewUser(); } else if (sender == deleteRoleAssignmentBtn) { if (assignedRolesList.getSelectedObjects().size() > 0) { confirmRemoveRoleAssignmentDialog.center(); } } else if (sender == addRoleAssignmentBtn) { List<ProxyPentahoUser> selectedUsers = usersList.getSelectedObjects(); if (selectedUsers.size() == 1) { modifyRoleAssignments(selectedUsers.get(0)); } } }
public void onKeyUp(Widget sender, char keyCode, int modifiers) { if (filterTextBox == sender) { usersList.setFilter(new UserNameFilter(filterTextBox.getText())); userSelectionChanged(); } }
public void refresh() { List<ProxyPentahoUser> userList = Arrays.asList(UserAndRoleMgmtService.instance().getUsers()); usersList.setObjects(userList); userSelectionChanged(); }