1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 package org.talika.tarsis.security;
24
25 import org.talika.tarsis.command.Command;
26 import org.talika.tarsis.service.AbstractService;
27
28 /**
29 * Base implementation of <code>Authorizator</code> interface.<br>
30 * <br>
31 * Authorizator plugs in system like a service by extending <code>AbstractService</code>.
32 *
33 * @author Jose M. Palomar
34 * @version $Revision: 124 $
35 */
36 public abstract class AuthorizatorService extends AbstractService implements Authorizator {
37
38
39
40
41
42
43 /**
44 * Creates a new <code>AuthorizatorService</code>.
45 */
46 public AuthorizatorService() {
47 }
48
49
50 /**
51 * Checks if <code>User</code> has authorizations to access <code>Command</code>.
52 * If not throws a <code>ForbiddenAccessException</code>.
53 *
54 * @param user User user to be checked.
55 * @param command Command command to be checked.
56 * @throws ForbiddenAccessException if <code>User</code> has not authorization.
57 * @see org.talika.tarsis.security.Authorizator#authorize(User, Command)
58 */
59 public abstract void authorize(User user, Command command)
60 throws ForbiddenAccessException;
61
62 /**
63 * Returns <code>true</code> if <code>Command</code> has access restrited.
64 *
65 * @param command Command command to be checked.
66 * @return boolean <code>true</code> if <code>Command</code> has access restrited.
67 * @see org.talika.tarsis.security.Authorizator#isRestricted(Command)
68 */
69 public abstract boolean isRestricted(Command command);
70
71 }