KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > sslexplorer > policyframework > itemactions > EditResourceAction


1 /*
2  * SSL-Explorer
3  *
4  * Copyright (C) 2003-2006 3SP LTD. All Rights Reserved
5  *
6  * This program is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU General Public License
8  * as published by the Free Software Foundation; either version 2 of
9  * the License, or (at your option) any later version.
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public
16  * License along with this program; if not, write to the Free Software
17  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18  */

19             
20 package com.sslexplorer.policyframework.itemactions;
21
22 import com.sslexplorer.policyframework.NoPermissionException;
23 import com.sslexplorer.policyframework.Permission;
24 import com.sslexplorer.policyframework.PolicyConstants;
25 import com.sslexplorer.policyframework.ResourceItem;
26 import com.sslexplorer.policyframework.ResourceUtil;
27 import com.sslexplorer.table.AvailableTableItemAction;
28
29 /**
30  * Class which provides the functionality for editing a resource.
31  * @author James D Robinson <a HREF="mailto:james@3sp.com">&lt;james@3sp.com&gt;</a>
32  */

33 public class EditResourceAction extends AbstractPathAction {
34     /**
35      */

36     public static final String JavaDoc TABLE_ITEM_ACTION_ID = "edit";
37
38     /**
39      * Constructor
40      * @param navigationContext
41      * @param messageResourcesKey
42      */

43     public EditResourceAction(int navigationContext, String JavaDoc messageResourcesKey) {
44         this(navigationContext, messageResourcesKey, "{2}.do?actionTarget=edit&selectedResource={0}");
45     }
46
47     /**
48      * @param navigationContext
49      * @param messageResourcesKey
50      * @param requiredPath
51      */

52     public EditResourceAction(int navigationContext, String JavaDoc messageResourcesKey, String JavaDoc requiredPath) {
53         super(TABLE_ITEM_ACTION_ID, messageResourcesKey, 100, true, navigationContext, requiredPath);
54     }
55
56     /*
57      * (non-Javadoc)
58      * @see com.sslexplorer.table.TableItemAction#isEnabled(com.sslexplorer.table.AvailableTableItemAction)
59      */

60     public boolean isEnabled(AvailableTableItemAction availableItem) {
61         try {
62             ResourceItem item = (ResourceItem) availableItem.getRowItem();
63             Permission[] permissions = new Permission[] { PolicyConstants.PERM_CREATE_EDIT_AND_ASSIGN, PolicyConstants.PERM_EDIT_AND_ASSIGN, PolicyConstants.PERM_ASSIGN };
64             ResourceUtil.checkResourceManagementRights(item.getResource(), availableItem.getSessionInfo(), permissions);
65             return true;
66         } catch (NoPermissionException e) {
67             return false;
68         }
69     }
70 }
Popular Tags