KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > sellwin > domain > Login


1 package sellwin.domain;
2
3 import java.io.*;
4 import java.util.Date JavaDoc;
5 import java.util.ArrayList JavaDoc;
6
7 // SellWin http://sourceforge.net/projects/sellwincrm
8
//Contact support@open-app.com for commercial help with SellWin
9
//This software is provided "AS IS", without a warranty of any kind.
10

11
12 /**
13  * this class holds the security info that is passed
14  * back to a client upon a successful login.
15  *
16  * the login 'token' is a way for subsequent server
17  * calls to be secured. See the security docs for
18  * a complete description of the security model.
19  *
20  * the SalesPerson that is returned, holds all the
21  * roles and permissions for that user.
22  */

23 public class Login implements Serializable {
24     private long token;
25     private SalesPerson sp;
26
27     public Login() {
28         //use the timestamp as a unique security token
29
token = new java.util.Date JavaDoc().getTime();
30     }
31
32     public final long getToken() { return token; }
33     public final void setToken(long t) { token = t; }
34
35     public final SalesPerson getSalesPerson() { return sp; }
36     public final void setSalesPerson(SalesPerson r) {
37         sp = r;
38     }
39
40     /**
41      * @return true if the login has a sales rep role
42      */

43     final public boolean isSalesRep() {
44         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
45         UserRole role;
46         for (int i=0;i<roles.size();i++) {
47             role = (UserRole)roles.get(i);
48             if (role.isSalesRep())
49                 return true;
50         }
51         return false;
52     }
53
54     /**
55      * @return true if the login has a sales mgr role
56      */

57     final public boolean isSalesMgr() {
58         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
59         UserRole role;
60         for (int i=0;i<roles.size();i++) {
61             role = (UserRole)roles.get(i);
62             if (role.isSalesMgr())
63                 return true;
64         }
65         return false;
66     }
67     /**
68      * @return true if the login has a sales support role
69      */

70     final public boolean isSalesSupport() {
71         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
72         UserRole role;
73         for (int i=0;i<roles.size();i++) {
74             role = (UserRole)roles.get(i);
75             if (role.isSalesSupport())
76                 return true;
77         }
78         return false;
79     }
80     /**
81      * @return true if the login has a system admin role
82      */

83     final public boolean isSystemAdmin() {
84         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
85         UserRole role;
86         for (int i=0;i<roles.size();i++) {
87             role = (UserRole)roles.get(i);
88             if (role.isSystemAdmin())
89                 return true;
90         }
91         return false;
92     }
93     /**
94      * @return true if the login has a marketing rep role
95      */

96     final public boolean isMarketingRep() {
97         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
98         UserRole role;
99         for (int i=0;i<roles.size();i++) {
100             role = (UserRole)roles.get(i);
101             if (role.isMarketingRep())
102                 return true;
103         }
104         return false;
105     }
106
107     /**
108      * @return true if the forecast permission accepts 'reads'
109      */

110     final public boolean forecastReadable() {
111         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
112         UserRole role;
113         RolePermission perm;
114         ArrayList JavaDoc perms;
115         for (int i=0;i<roles.size();i++) {
116             role = (UserRole)roles.get(i);
117             perms = role.getPermissions();
118             for (int j=0;j<perms.size();j++) {
119                 perm = (RolePermission)perms.get(j);
120                 if (perm.getName().equals(RolePermission.PERM_FORECAST))
121                     if (perm.getRead())
122                         return true;
123             }
124         }
125         return false;
126     }
127
128     /**
129      * @return true if the forecast permission accepts 'writes'
130      */

131     final public boolean forecastWritable() {
132         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
133         UserRole role;
134         RolePermission perm;
135         ArrayList JavaDoc perms;
136         for (int i=0;i<roles.size();i++) {
137             role = (UserRole)roles.get(i);
138             perms = role.getPermissions();
139             for (int j=0;j<perms.size();j++) {
140                 perm = (RolePermission)perms.get(j);
141                 if (perm.getName().equals(RolePermission.PERM_FORECAST))
142                     if (perm.getWrite())
143                         return true;
144             }
145         }
146         return false;
147     }
148
149     /**
150      * @return true if the quote permission accepts 'reads'
151      */

152     final public boolean quoteReadable() {
153         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
154         UserRole role;
155         RolePermission perm;
156         ArrayList JavaDoc perms;
157         for (int i=0;i<roles.size();i++) {
158             role = (UserRole)roles.get(i);
159             perms = role.getPermissions();
160             for (int j=0;j<perms.size();j++) {
161                 perm = (RolePermission)perms.get(j);
162                 if (perm.getName().equals(RolePermission.PERM_QUOTE))
163                     if (perm.getRead())
164                         return true;
165             }
166         }
167         return false;
168     }
169
170     /**
171      * @return true if the quote permission accepts 'writes'
172      */

173     final public boolean quoteWritable() {
174         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
175         UserRole role;
176         RolePermission perm;
177         ArrayList JavaDoc perms;
178         for (int i=0;i<roles.size();i++) {
179             role = (UserRole)roles.get(i);
180             perms = role.getPermissions();
181             for (int j=0;j<perms.size();j++) {
182                 perm = (RolePermission)perms.get(j);
183                 if (perm.getName().equals(RolePermission.PERM_QUOTE))
184                     if (perm.getWrite())
185                         return true;
186             }
187         }
188         return false;
189     }
190
191     /**
192      * @return true if the activity permission accepts 'reads'
193      */

194     final public boolean activityReadable() {
195         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
196         UserRole role;
197         RolePermission perm;
198         ArrayList JavaDoc perms;
199         for (int i=0;i<roles.size();i++) {
200             role = (UserRole)roles.get(i);
201             perms = role.getPermissions();
202             for (int j=0;j<perms.size();j++) {
203                 perm = (RolePermission)perms.get(j);
204                 if (perm.getName().equals(RolePermission.PERM_ACTIVITY))
205                     if (perm.getRead())
206                         return true;
207             }
208         }
209         return false;
210     }
211     /**
212      * @return true if the activity permission accepts 'writes'
213      */

214     final public boolean activityWritable() {
215         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
216         UserRole role;
217         RolePermission perm;
218         ArrayList JavaDoc perms;
219         for (int i=0;i<roles.size();i++) {
220             role = (UserRole)roles.get(i);
221             perms = role.getPermissions();
222             for (int j=0;j<perms.size();j++) {
223                 perm = (RolePermission)perms.get(j);
224                 if (perm.getName().equals(RolePermission.PERM_ACTIVITY))
225                     if (perm.getWrite())
226                         return true;
227             }
228         }
229         return false;
230     }
231
232     /**
233      * @return true if the basic admin permission accepts 'reads'
234      */

235     final public boolean basicAdminReadable() {
236         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
237         UserRole role;
238         RolePermission perm;
239         ArrayList JavaDoc perms;
240         for (int i=0;i<roles.size();i++) {
241             role = (UserRole)roles.get(i);
242             perms = role.getPermissions();
243             for (int j=0;j<perms.size();j++) {
244                 perm = (RolePermission)perms.get(j);
245                 if (perm.getName().equals(RolePermission.PERM_BASIC_ADMIN))
246                     if (perm.getRead())
247                         return true;
248             }
249         }
250         return false;
251     }
252
253     /**
254      * @return true if the basic admin permission accepts 'writes'
255      */

256     final public boolean basicAdminWritable() {
257         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
258         UserRole role;
259         RolePermission perm;
260         ArrayList JavaDoc perms;
261         for (int i=0;i<roles.size();i++) {
262             role = (UserRole)roles.get(i);
263             perms = role.getPermissions();
264             for (int j=0;j<perms.size();j++) {
265                 perm = (RolePermission)perms.get(j);
266                 if (perm.getName().equals(RolePermission.PERM_BASIC_ADMIN))
267                     if (perm.getWrite())
268                         return true;
269             }
270         }
271         return false;
272     }
273
274     /**
275      * @return true if the user admin permission accepts 'reads'
276      */

277     final public boolean userAdminReadable() {
278         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
279         UserRole role;
280         RolePermission perm;
281         ArrayList JavaDoc perms;
282         for (int i=0;i<roles.size();i++) {
283             role = (UserRole)roles.get(i);
284             perms = role.getPermissions();
285             for (int j=0;j<perms.size();j++) {
286                 perm = (RolePermission)perms.get(j);
287                 if (perm.getName().equals(RolePermission.PERM_USER_ADMIN))
288                     if (perm.getRead())
289                         return true;
290             }
291         }
292         return false;
293     }
294     /**
295      * @return true if the user admin permission accepts 'writes'
296      */

297     final public boolean userAdminWritable() {
298         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
299         UserRole role;
300         RolePermission perm;
301         ArrayList JavaDoc perms;
302         for (int i=0;i<roles.size();i++) {
303             role = (UserRole)roles.get(i);
304             perms = role.getPermissions();
305             for (int j=0;j<perms.size();j++) {
306                 perm = (RolePermission)perms.get(j);
307                 if (perm.getName().equals(RolePermission.PERM_USER_ADMIN))
308                     if (perm.getWrite())
309                         return true;
310             }
311         }
312         return false;
313     }
314
315     /**
316      * @return true if the order permission accepts 'writes'
317      */

318     final public boolean orderWritable() {
319         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
320         UserRole role;
321         RolePermission perm;
322         ArrayList JavaDoc perms;
323         for (int i=0;i<roles.size();i++) {
324             role = (UserRole)roles.get(i);
325             perms = role.getPermissions();
326             for (int j=0;j<perms.size();j++) {
327                 perm = (RolePermission)perms.get(j);
328                 if (perm.getName().equals(RolePermission.PERM_ORDER))
329                     if (perm.getWrite())
330                         return true;
331             }
332         }
333         return false;
334     }
335
336     /**
337      * @return true if the order permission accepts 'reads'
338      */

339     final public boolean orderReadable() {
340         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
341         UserRole role;
342         RolePermission perm;
343         ArrayList JavaDoc perms;
344         for (int i=0;i<roles.size();i++) {
345             role = (UserRole)roles.get(i);
346             perms = role.getPermissions();
347             for (int j=0;j<perms.size();j++) {
348                 perm = (RolePermission)perms.get(j);
349                 if (perm.getName().equals(RolePermission.PERM_ORDER))
350                     if (perm.getRead())
351                         return true;
352             }
353         }
354         return false;
355     }
356
357     final public void print() {
358         System.out.println("<<<Login Object>>>");
359         System.out.println("token:"+token);
360
361         ArrayList JavaDoc roles = getSalesPerson().getUserRoles();
362         UserRole role;
363         for (int i=0;i<roles.size();i++) {
364             role = (UserRole)roles.get(i);
365             role.print();
366         }
367         System.out.println("<<<End Login Object>>>");
368     }
369
370
371 }
372
Popular Tags