summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
f090d55)
*/
package org.argeo.security.ui.admin.editors;
*/
package org.argeo.security.ui.admin.editors;
+import java.util.ArrayList;
+import java.util.List;
+
import org.argeo.ArgeoException;
import org.argeo.security.ui.admin.SecurityAdminImages;
import org.argeo.security.ui.admin.SecurityAdminPlugin;
import org.argeo.ArgeoException;
import org.argeo.security.ui.admin.SecurityAdminImages;
import org.argeo.security.ui.admin.SecurityAdminPlugin;
import org.eclipse.ui.IEditorSite;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.forms.editor.FormEditor;
import org.eclipse.ui.IEditorSite;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.forms.editor.FormEditor;
+import org.osgi.service.useradmin.Authorization;
import org.osgi.service.useradmin.Role;
import org.osgi.service.useradmin.User;
import org.osgi.service.useradmin.UserAdmin;
import org.osgi.service.useradmin.Role;
import org.osgi.service.useradmin.User;
import org.osgi.service.useradmin.UserAdmin;
: SecurityAdminImages.ICON_USER);
}
: SecurityAdminImages.ICON_USER);
}
+ protected List<User> getFlatGroups() {
+ Authorization currAuth = userAdmin.getAuthorization(user);
+ String[] roles = currAuth.getRoles();
+
+ List<User> groups = new ArrayList<User>();
+ for (String roleStr : roles) {
+ User currRole = (User) userAdmin.getRole(roleStr);
+ if (!groups.contains(currRole))
+ groups.add(currRole);
+ }
+ return groups;
+ }
+
/** Exposes the user (or group) that is displayed by the current editor */
protected User getDisplayedUser() {
return user;
/** Exposes the user (or group) that is displayed by the current editor */
protected User getDisplayedUser() {
return user;
public void appendMemberOfPart(Composite parent) {
FormToolkit tk = getManagedForm().getToolkit();
public void appendMemberOfPart(Composite parent) {
FormToolkit tk = getManagedForm().getToolkit();
- Composite body = addSection(tk, parent, "Groups");
+ Composite body = addSection(tk, parent, "Roles");
body.setLayout(EclipseUiUtils.noSpaceGridLayout());
// Define the displayed columns
List<ColumnDefinition> columnDefs = new ArrayList<ColumnDefinition>();
columnDefs.add(new ColumnDefinition(new RoleIconLP(), "", 0, 24));
columnDefs.add(new ColumnDefinition(new UserNameLP(),
body.setLayout(EclipseUiUtils.noSpaceGridLayout());
// Define the displayed columns
List<ColumnDefinition> columnDefs = new ArrayList<ColumnDefinition>();
columnDefs.add(new ColumnDefinition(new RoleIconLP(), "", 0, 24));
columnDefs.add(new ColumnDefinition(new UserNameLP(),
- "Distinguished Name", 240));
+ "Distinguished Name", 300));
columnDefs.add(new ColumnDefinition(new CommonNameLP(), "Common Name",
150));
columnDefs.add(new ColumnDefinition(new CommonNameLP(), "Common Name",
150));
@Override
protected List<User> listFilteredElements(String filter) {
@Override
protected List<User> listFilteredElements(String filter) {
- List<User> users = new ArrayList<User>();
-
- // "member of" method?
- // Group group = (Group) editor.getDisplayedUser();
- // Role[] roles = group.getMembers();
- // List<User> users = new ArrayList<User>();
- // for (Role role : roles)
- // // if (role.getType() == Role.GROUP)
- // users.add((User) role);
- // return users;
- return users;
+ return (List<User>) editor.getFlatGroups();
text.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
return text;
}
text.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
return text;
}
private class FormPartML implements ModifyListener {
private static final long serialVersionUID = 6299808129505381333L;
private AbstractFormPart formPart;
private class FormPartML implements ModifyListener {
private static final long serialVersionUID = 6299808129505381333L;
private AbstractFormPart formPart;