01: /*
02: * Copyright 2006 Day Management AG, Switzerland. All rights reserved.
03: */
04: package javax.jcr.security;
05:
06: import javax.jcr.RepositoryException;
07:
08: /**
09: * An <code>AccessControlPolicy</code> is an object with a name and optional
10: * description, either of which can be presented to the user. Examples of
11: * possible <code>AccessControlPolicy</code> implementations include access
12: * control lists, role-responsibility assignments or records retention policies.
13: *
14: * @since JCR 2.0
15: */
16: public interface AccessControlPolicy {
17: /**
18: * Returns the name of the access control policy, which should be unique
19: * among the choices applicable to any particular node.
20: * It is presented to provide a easily identifiable choice for
21: * users choosing a policy to assign to a node.
22: *
23: * @return the name of the access control policy.
24: * @throws RepositoryException if an error occurs.
25: */
26: String getName() throws RepositoryException;
27:
28: /**
29: * Returns a human readable description of the access control policy which
30: * should be sufficient for allowing end users to chose between different
31: * policies to apply to a node.
32: *
33: * @return a human readable description of the access control policy.
34: * @throws RepositoryException if an error occurs.
35: */
36: String getDescription() throws RepositoryException;
37: }
|