KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > sslexplorer > policyframework > forms > AccessRightsForm


1 package com.sslexplorer.policyframework.forms;
2
3 import java.util.ArrayList JavaDoc;
4 import java.util.Iterator JavaDoc;
5 import java.util.List JavaDoc;
6
7 import javax.servlet.http.HttpServletRequest JavaDoc;
8
9 import org.apache.commons.logging.Log;
10 import org.apache.commons.logging.LogFactory;
11 import org.apache.struts.action.ActionMapping;
12
13 import com.sslexplorer.boot.PropertyList;
14 import com.sslexplorer.input.MultiSelectSelectionModel;
15 import com.sslexplorer.policyframework.AccessRight;
16 import com.sslexplorer.policyframework.AccessRights;
17 import com.sslexplorer.policyframework.Permission;
18 import com.sslexplorer.policyframework.PolicyDatabaseFactory;
19 import com.sslexplorer.policyframework.Resource;
20 import com.sslexplorer.policyframework.ResourceType;
21 import com.sslexplorer.security.SessionInfo;
22 import com.sslexplorer.security.User;
23 import com.sslexplorer.tabs.TabModel;
24
25 public class AccessRightsForm extends AbstractResourceForm implements TabModel {
26     
27     final static Log log = LogFactory.getLog(PoliciesForm.class);
28
29     private int selectedResourceTypeId;
30     private List JavaDoc resourceTypes;
31     private ResourceType resourceType;
32     private String JavaDoc[] selectedAvailablePermissions;
33     private List JavaDoc resourceTypePermissions;
34     private String JavaDoc[] selectedResourceTypePermissions;
35     private List JavaDoc availablePermissions;
36     private String JavaDoc selectedTab = "details";
37
38     public AccessRightsForm() {
39         super();
40     }
41
42     public int getSelectedResourceType() {
43         return selectedResourceTypeId;
44     }
45
46     public void setSelectedResourceType(int resourceType) {
47         this.selectedResourceTypeId = resourceType;
48     }
49
50     public int getTabCount() {
51         return 3;
52     }
53
54     public String JavaDoc getTabName(int idx) {
55         switch(idx) {
56             case 0:
57                 return "details";
58             case 1:
59                 return "permissions";
60             default:
61                 return "policies";
62         }
63     }
64
65     public String JavaDoc getTabTitle(int idx) {
66         return null;
67     }
68
69     public void initialise(User user, Resource resource, boolean editing, MultiSelectSelectionModel policyModel, PropertyList selectedPolicies, User owner, boolean assignOnly) throws Exception JavaDoc {
70         super.initialise(user, resource, editing, policyModel, selectedPolicies, owner, assignOnly);
71         rebuild();
72     }
73     
74     public void rebuild() throws Exception JavaDoc {
75         selectedAvailablePermissions = new String JavaDoc[0];
76         AccessRights dr = (AccessRights)resource;
77         List JavaDoc r = PolicyDatabaseFactory.getInstance().getResourceTypes(dr.getAccessRightsClass());
78         resourceTypes = new ArrayList JavaDoc();
79         for(Iterator JavaDoc i = r.iterator(); i.hasNext(); ) {
80             ResourceType rt = (ResourceType)i.next();
81             if(rt.getPermissions().size() > 0 ) {
82                 resourceTypes.add(rt);
83             }
84         }
85         resourceTypePermissions = dr.getAccessRights();
86         resourceTypes = new ArrayList JavaDoc();
87         availablePermissions = new ArrayList JavaDoc();
88         resourceTypes = PolicyDatabaseFactory.getInstance().getResourceTypes(dr.getAccessRightsClass());
89         if(resourceType == null) {
90             resourceType = (ResourceType)resourceTypes.get(0);
91             selectedResourceTypeId = resourceType.getResourceTypeId();
92         }
93         availablePermissions = new ArrayList JavaDoc();
94         for(Iterator JavaDoc i = resourceType.getPermissions().iterator(); i.hasNext(); ) {
95             Permission perm = (Permission)i.next();
96             AccessRight rt = new AccessRight(resourceType, perm);
97             if(!resourceTypePermissions.contains(rt)) {
98                 availablePermissions.add(perm);
99             }
100         }
101     }
102
103     public List JavaDoc getAvailablePermissions() {
104         return availablePermissions;
105     }
106
107     public void setAvailablePermissions(List JavaDoc availablePermissions) {
108         this.availablePermissions = availablePermissions;
109     }
110
111     public ResourceType getResourceType() {
112         return resourceType;
113     }
114
115     public void setResourceType(ResourceType resourceType) {
116         this.resourceType = resourceType;
117     }
118
119     public List JavaDoc getResourceTypePermissions() {
120         return resourceTypePermissions;
121     }
122
123     public void setResourceTypePermissions(List JavaDoc resourceTypePermissions) {
124         this.resourceTypePermissions = resourceTypePermissions;
125     }
126
127     public List JavaDoc getResourceTypes() {
128         return resourceTypes;
129     }
130
131     public void setResourceTypes(List JavaDoc resourceTypes) {
132         this.resourceTypes = resourceTypes;
133     }
134
135     public String JavaDoc[] getSelectedAvailablePermissions() {
136         return selectedAvailablePermissions;
137     }
138
139     public void setSelectedAvailablePermissions(String JavaDoc[] selectedAvailablePermissions) {
140         this.selectedAvailablePermissions = selectedAvailablePermissions;
141     }
142
143     public int getSelectedResourceTypeId() {
144         return selectedResourceTypeId;
145     }
146
147     public void setSelectedResourceTypeId(int selectedResourceTypeId) {
148         this.selectedResourceTypeId = selectedResourceTypeId;
149     }
150
151     public String JavaDoc[] getSelectedResourceTypePermissions() {
152         return selectedResourceTypePermissions;
153     }
154
155     public void setSelectedResourceTypePermissions(String JavaDoc[] selectedResourceTypePermissions) {
156         this.selectedResourceTypePermissions = selectedResourceTypePermissions;
157     }
158     
159     public Resource getResourceByName(String JavaDoc name, SessionInfo session) throws Exception JavaDoc {
160         return PolicyDatabaseFactory.getInstance().getAccessRightsByName(name, session.getUser().getRealm().getRealmID());
161     }
162     
163     public String JavaDoc getSelectedTab() {
164         return selectedTab;
165     }
166     
167     public void setSelectedTab(String JavaDoc selectedTab) {
168         this.selectedTab = selectedTab;
169     }
170     
171     public void applyToResource() {
172     }
173
174
175     public void reset(ActionMapping mapping, HttpServletRequest JavaDoc request) {
176         super.reset(mapping, request);
177     }
178     
179     /* (non-Javadoc)
180      * @see com.sslexplorer.tabs.TabModel#getTabBundle(int)
181      */

182     public String JavaDoc getTabBundle(int idx) {
183         return null;
184     }
185 }
186
Popular Tags