18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package java.security;
27
28
29 /**
30 * A computation to be performed with privileges enabled, that throws one or
31 * more checked exceptions. The computation is performed by invoking
32 * {@code AccessController.doPrivileged} on the
33 * {@code PrivilegedExceptionAction} object. This interface is
34 * used only for computations that throw checked exceptions;
35 * computations that do not throw
36 * checked exceptions should use {@code PrivilegedAction} instead.
37 *
38 * @see AccessController
39 * @see AccessController#doPrivileged(PrivilegedExceptionAction)
40 * @see AccessController#doPrivileged(PrivilegedExceptionAction,
41 * AccessControlContext)
42 * @see PrivilegedAction
43 */
44
45 public interface PrivilegedExceptionAction<T> {
46 /**
47 * Performs the computation. This method will be called by
48 * {@code AccessController.doPrivileged} after enabling privileges.
49 *
50 * @return a class-dependent value that may represent the results of the
51 * computation. Each class that implements
52 * {@code PrivilegedExceptionAction} should document what
53 * (if anything) this value represents.
54 * @throws Exception an exceptional condition has occurred. Each class
55 * that implements {@code PrivilegedExceptionAction} should
56 * document the exceptions that its run method can throw.
57 * @see AccessController#doPrivileged(PrivilegedExceptionAction)
|
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package java.security;
27
28
29 /**
30 * A computation to be performed with privileges enabled, that throws one or
31 * more checked exceptions. The computation is performed by invoking
32 * {@code AccessController.doPrivileged} on the
33 * {@code PrivilegedExceptionAction} object. This interface is
34 * used only for computations that throw checked exceptions;
35 * computations that do not throw
36 * checked exceptions should use {@code PrivilegedAction} instead.
37 *
38 * @since 1.2
39 * @see AccessController
40 * @see AccessController#doPrivileged(PrivilegedExceptionAction)
41 * @see AccessController#doPrivileged(PrivilegedExceptionAction,
42 * AccessControlContext)
43 * @see PrivilegedAction
44 */
45
46 public interface PrivilegedExceptionAction<T> {
47 /**
48 * Performs the computation. This method will be called by
49 * {@code AccessController.doPrivileged} after enabling privileges.
50 *
51 * @return a class-dependent value that may represent the results of the
52 * computation. Each class that implements
53 * {@code PrivilegedExceptionAction} should document what
54 * (if anything) this value represents.
55 * @throws Exception an exceptional condition has occurred. Each class
56 * that implements {@code PrivilegedExceptionAction} should
57 * document the exceptions that its run method can throw.
58 * @see AccessController#doPrivileged(PrivilegedExceptionAction)
|