1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.jetspeed.security;
18
19 import java.util.prefs.Preferences;
20
21 /***
22 * <p>
23 * This class allows to implement different types of groups/roles hierarchy.
24 * </p>
25 *
26 * @author <a href="mailto:Artem.Grinshtein@t-systems.com">Artem Grinshtein </a>
27 * @version $Id: HierarchyResolver.java 187640 2004-09-30 04:01:42Z dlestrat $
28 */
29 public interface HierarchyResolver
30 {
31
32 /***
33 * <p>
34 * Returns absolute path names of the hierarchy roles/groups.
35 * </p>
36 *
37 * @param prefs Preferences for the role/group
38 * @return Returns absolute path names of the dependcy roles/groups.
39 */
40 public String[] resolve(Preferences prefs);
41
42 /***
43 * <p>
44 * Returns the absolute path names of the children of the given hierarchy
45 * roles/groups node.
46 * </p>
47 *
48 * @param prefs Preferences for the role/group
49 * @return Returns absolute path names of the children roles/groups.
50 */
51 public String[] resolveChildren(Preferences prefs);
52
53 }