01: /**********************************************************************************
02: * $URL:https://source.sakaiproject.org/svn/osp/trunk/common/api/src/java/org/theospi/portfolio/security/AuthorizationFacade.java $
03: * $Id:AuthorizationFacade.java 9134 2006-05-08 20:28:42Z chmaurer@iupui.edu $
04: ***********************************************************************************
05: *
06: * Copyright (c) 2005, 2006 The Sakai Foundation.
07: *
08: * Licensed under the Educational Community License, Version 1.0 (the "License");
09: * you may not use this file except in compliance with the License.
10: * You may obtain a copy of the License at
11: *
12: * http://www.opensource.org/licenses/ecl1.php
13: *
14: * Unless required by applicable law or agreed to in writing, software
15: * distributed under the License is distributed on an "AS IS" BASIS,
16: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17: * See the License for the specific language governing permissions and
18: * limitations under the License.
19: *
20: **********************************************************************************/package org.theospi.portfolio.security;
21:
22: import java.util.Collection;
23: import java.util.List;
24:
25: import org.sakaiproject.metaobj.shared.model.Agent;
26: import org.sakaiproject.metaobj.shared.model.Id;
27:
28: /**
29: * Created by IntelliJ IDEA.
30: * User: jbush
31: * Date: Apr 29, 2004
32: * Time: 11:28:09 AM
33: * To change this template use File | Settings | File Templates.
34: */
35: public interface AuthorizationFacade {
36:
37: public void checkPermission(String function, Id id)
38: throws AuthorizationFailedException;
39:
40: public void checkPermission(Agent agent, String function, Id id)
41: throws AuthorizationFailedException;
42:
43: /**
44: * Checks if the current user is authorized to do the function with the given id.
45: * @param function
46: * @param id
47: * @return boolean if the user is authorized
48: */
49: public boolean isAuthorized(String function, Id id);
50:
51: /**
52: * Checks if the agent is authorized to do the function with the given id
53: * @param agent
54: * @param function
55: * @param id
56: * @return
57: */
58: public boolean isAuthorized(Agent agent, String function, Id id);
59:
60: /**
61: * at least one param must be non-null
62: *
63: * @param agent
64: * @param function
65: * @param id
66: * @return
67: */
68: public List getAuthorizations(Agent agent, String function, Id id);
69:
70: /**
71: * @param agent
72: * @param function
73: * @param id
74: */
75: public void createAuthorization(Agent agent, String function, Id id);
76:
77: public void deleteAuthorization(Agent agent, String function, Id id);
78:
79: public void deleteAuthorizations(Id qualifier);
80:
81: public void pushAuthzGroups(Collection authzGroups);
82:
83: void pushAuthzGroups(String siteId);
84: }
|