2 * Copyright (C) 2007-2012 Argeo GmbH
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
16 package org
.argeo
.security
.ui
.admin
.commands
;
18 import org
.argeo
.security
.UserAdminService
;
19 import org
.eclipse
.core
.commands
.AbstractHandler
;
20 import org
.eclipse
.core
.commands
.ExecutionEvent
;
21 import org
.eclipse
.core
.commands
.ExecutionException
;
23 /** Add a new role. */
24 public class AddRole
extends AbstractHandler
{
25 public final static String COMMAND_ID
= "org.argeo.security.ui.admin.addRole";
26 private UserAdminService userAdminService
;
27 private String rolePrefix
= "ROLE_";
29 public Object
execute(ExecutionEvent event
) throws ExecutionException
{
33 public void setUserAdminService(UserAdminService userAdminService
) {
34 this.userAdminService
= userAdminService
;
37 // JcrRolesView rolesView = (JcrRolesView) HandlerUtil
38 // .getActiveWorkbenchWindow(event).getActivePage()
39 // .findView(JcrRolesView.ID);
40 // String role = rolesView.getNewRole();
41 // if (role.trim().equals(""))
43 // if (role.equals(rolesView.getAddNewRoleText()))
45 // role = role.trim().toUpperCase();
46 // if (!role.startsWith(rolePrefix))
47 // role = rolePrefix + role;
48 // if (userAdminService.listEditableRoles().contains(role))
49 // throw new ArgeoException("Role " + role + " already exists");
50 // userAdminService.newRole(role);
51 // rolesView.refresh();
54 // IEditorReference[] refs = HandlerUtil.getActiveWorkbenchWindow(event)
56 // .findEditors(null, JcrArgeoUserEditor.ID, IWorkbenchPage.MATCH_ID);
57 // for (IEditorReference ref : refs) {
58 // JcrArgeoUserEditor userEditor = (JcrArgeoUserEditor) ref.getEditor(false);
59 // if (userEditor != null) {
60 // userEditor.refresh();
66 // public void setUserAdminService(UserAdminService userAdminService) {
67 // this.userAdminService = userAdminService;