Save This Page
Home » openjdk-7 » java » security » [javadoc | source]
    1   /*
    2    * Copyright (c) 1998, 2004, Oracle and/or its affiliates. All rights reserved.
    3    * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    4    *
    5    * This code is free software; you can redistribute it and/or modify it
    6    * under the terms of the GNU General Public License version 2 only, as
    7    * published by the Free Software Foundation.  Oracle designates this
    8    * particular file as subject to the "Classpath" exception as provided
    9    * by Oracle in the LICENSE file that accompanied this code.
   10    *
   11    * This code is distributed in the hope that it will be useful, but WITHOUT
   12    * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   13    * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
   14    * version 2 for more details (a copy is included in the LICENSE file that
   15    * accompanied this code).
   16    *
   17    * You should have received a copy of the GNU General Public License version
   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</code> on the
   33    * <code>PrivilegedExceptionAction</code> 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</code> 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</code> 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</code> should document what
   53        *         (if anything) this value represents.
   54        * @throws Exception an exceptional condition has occurred.  Each class
   55        *         that implements <code>PrivilegedExceptionAction</code> should
   56        *         document the exceptions that its run method can throw.
   57        * @see AccessController#doPrivileged(PrivilegedExceptionAction)
   58        * @see AccessController#doPrivileged(PrivilegedExceptionAction,AccessControlContext)
   59        */
   60   
   61       T run() throws Exception;
   62   }

Save This Page
Home » openjdk-7 » java » security » [javadoc | source]