1   /*
2    *  AccessController.java
3    *
4    *  Copyright (c) 1998-2001, The University of Sheffield.
5    *
6    *  This file is part of GATE (see http://gate.ac.uk/), and is free
7    *  software, licenced under the GNU Library General Public License,
8    *  Version 2, June 1991 (in the distribution as file licence.html,
9    *  and also available at http://gate.ac.uk/gate/licence.html).
10   *
11   *  Marin Dimitrov, 19/Sep/2001
12   *
13   *  $Id: AccessController.java,v 1.13 2001/11/12 21:36:03 marin Exp $
14   */
15  
16  package gate.security;
17  
18  import java.net.*;
19  import java.util.*;
20  
21  import gate.persist.PersistenceException;
22  
23  
24  public interface AccessController {
25  
26    /** --- */
27    public Group findGroup(String name)
28      throws PersistenceException, SecurityException;
29  
30    /** --- */
31    public Group findGroup(Long id)
32      throws PersistenceException, SecurityException;
33  
34    /** --- */
35    public User findUser(String name)
36      throws PersistenceException, SecurityException;
37  
38    /** --- */
39    public User findUser(Long id)
40      throws PersistenceException, SecurityException;
41  
42    /** --- */
43    public Session findSession(Long id)
44      throws SecurityException;
45  
46    /** --- */
47    public Group createGroup(String name,Session s)
48      throws PersistenceException, SecurityException;
49  
50    /** --- */
51    public void deleteGroup(Long id, Session s)
52      throws PersistenceException, SecurityException;
53  
54    /** --- */
55    public void deleteGroup(Group grp, Session s)
56      throws PersistenceException, SecurityException;
57  
58    /** --- */
59    public User createUser(String name, String passwd,Session s)
60      throws PersistenceException, SecurityException;
61  
62    /** --- */
63    public void deleteUser(User usr, Session s)
64      throws PersistenceException, SecurityException;
65  
66    /** --- */
67    public void deleteUser(Long id, Session s)
68      throws PersistenceException, SecurityException;
69  
70    /** --- */
71    public Session login(String usr_name, String passwd, Long prefGroupID)
72      throws PersistenceException, SecurityException;
73  
74    /** --- */
75    public void logout(Session s)
76      throws SecurityException;
77  
78    /** --- */
79    public void setSessionTimeout(Session s, int timeoutMins)
80      throws SecurityException;
81  
82    /** --- */
83    public boolean isValidSession(Session s)
84      throws SecurityException;
85  
86  
87    /** --- */
88    public void open()
89      throws PersistenceException;
90  
91    /** --- */
92    public void close()
93      throws PersistenceException;
94  
95  
96    /** -- */
97    public List listUsers()
98      throws PersistenceException;
99  
100   /** -- */
101   public List listGroups()
102     throws PersistenceException;
103 
104   /** -- */
105   public boolean isValidSecurityInfo(SecurityInfo si);
106 
107 }
108