< prev index next >

src/java.xml.crypto/share/classes/javax/xml/crypto/URIReferenceException.java

Print this page




  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  * $Id: URIReferenceException.java,v 1.4 2005/05/10 15:47:42 mullan Exp $
  27  */
  28 package javax.xml.crypto;
  29 
  30 import java.io.PrintStream;
  31 import java.io.PrintWriter;
  32 import javax.xml.crypto.dsig.keyinfo.RetrievalMethod;
  33 
  34 /**
  35  * Indicates an exceptional condition thrown while dereferencing a
  36  * {@link URIReference}.
  37  *
  38  * <p>A <code>URIReferenceException</code> can contain a cause: another
  39  * throwable that caused this <code>URIReferenceException</code> to get thrown.
  40  *
  41  * @author Sean Mullan
  42  * @author JSR 105 Expert Group
  43  * @since 1.6
  44  * @see URIDereferencer#dereference(URIReference, XMLCryptoContext)
  45  * @see RetrievalMethod#dereference(XMLCryptoContext)
  46  */
  47 public class URIReferenceException extends Exception {
  48 
  49     private static final long serialVersionUID = 7173469703932561419L;
  50 
  51     /**
  52      * The throwable that caused this exception to get thrown, or null if this
  53      * exception was not caused by another throwable or if the causative
  54      * throwable is unknown.
  55      *
  56      * @serial
  57      */
  58     private Throwable cause;
  59 
  60     private URIReference uriReference;
  61 
  62     /**
  63      * Constructs a new <code>URIReferenceException</code> with
  64      * <code>null</code> as its detail message.
  65      */
  66     public URIReferenceException() {
  67         super();
  68     }
  69 
  70     /**
  71      * Constructs a new <code>URIReferenceException</code> with the specified
  72      * detail message.
  73      *
  74      * @param message the detail message
  75      */
  76     public URIReferenceException(String message) {
  77         super(message);
  78     }
  79 
  80     /**
  81      * Constructs a new <code>URIReferenceException</code> with the
  82      * specified detail message and cause.
  83      * <p>Note that the detail message associated with
  84      * <code>cause</code> is <i>not</i> automatically incorporated in
  85      * this exception's detail message.
  86      *
  87      * @param message the detail message
  88      * @param cause the cause (A <tt>null</tt> value is permitted, and
  89      *        indicates that the cause is nonexistent or unknown.)
  90      */
  91     public URIReferenceException(String message, Throwable cause) {
  92         super(message);
  93         this.cause = cause;
  94     }
  95 
  96     /**
  97      * Constructs a new <code>URIReferenceException</code> with the
  98      * specified detail message, cause and <code>URIReference</code>.
  99      * <p>Note that the detail message associated with
 100      * <code>cause</code> is <i>not</i> automatically incorporated in
 101      * this exception's detail message.
 102      *
 103      * @param message the detail message
 104      * @param cause the cause (A <tt>null</tt> value is permitted, and
 105      *        indicates that the cause is nonexistent or unknown.)
 106      * @param uriReference the <code>URIReference</code> that was being
 107      *    dereferenced when the error was encountered
 108      * @throws NullPointerException if <code>uriReference</code> is
 109      *    <code>null</code>
 110      */
 111     public URIReferenceException(String message, Throwable cause,
 112         URIReference uriReference) {
 113         this(message, cause);
 114         if (uriReference == null) {
 115             throw new NullPointerException("uriReference cannot be null");
 116         }
 117         this.uriReference = uriReference;
 118     }
 119 
 120     /**
 121      * Constructs a new <code>URIReferenceException</code> with the specified
 122      * cause and a detail message of <code>(cause==null ? null :
 123      * cause.toString())</code> (which typically contains the class and detail
 124      * message of <code>cause</code>).
 125      *
 126      * @param cause the cause (A <tt>null</tt> value is permitted, and
 127      *        indicates that the cause is nonexistent or unknown.)
 128      */
 129     public URIReferenceException(Throwable cause) {
 130         super(cause==null ? null : cause.toString());
 131         this.cause = cause;
 132     }
 133 
 134     /**
 135      * Returns the <code>URIReference</code> that was being dereferenced
 136      * when the exception was thrown.
 137      *
 138      * @return the <code>URIReference</code> that was being dereferenced
 139      * when the exception was thrown, or <code>null</code> if not specified
 140      */
 141     public URIReference getURIReference() {
 142         return uriReference;
 143     }
 144 
 145     /**
 146      * Returns the cause of this <code>URIReferenceException</code> or
 147      * <code>null</code> if the cause is nonexistent or unknown.  (The
 148      * cause is the throwable that caused this
 149      * <code>URIReferenceException</code> to get thrown.)
 150      *
 151      * @return the cause of this <code>URIReferenceException</code> or
 152      *    <code>null</code> if the cause is nonexistent or unknown.
 153      */
 154     public Throwable getCause() {
 155         return cause;
 156     }
 157 
 158     /**
 159      * Prints this <code>URIReferenceException</code>, its backtrace and
 160      * the cause's backtrace to the standard error stream.
 161      */
 162     public void printStackTrace() {
 163         super.printStackTrace();
 164         //XXX print backtrace of cause
 165     }
 166 
 167     /**
 168      * Prints this <code>URIReferenceException</code>, its backtrace and
 169      * the cause's backtrace to the specified print stream.
 170      *
 171      * @param s <code>PrintStream</code> to use for output
 172      */
 173     public void printStackTrace(PrintStream s) {
 174         super.printStackTrace(s);
 175         //XXX print backtrace of cause
 176     }
 177 
 178     /**
 179      * Prints this <code>URIReferenceException</code>, its backtrace and
 180      * the cause's backtrace to the specified print writer.
 181      *
 182      * @param s <code>PrintWriter</code> to use for output
 183      */
 184     public void printStackTrace(PrintWriter s) {
 185         super.printStackTrace(s);
 186         //XXX print backtrace of cause
 187     }
 188 }


  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  * $Id: URIReferenceException.java,v 1.4 2005/05/10 15:47:42 mullan Exp $
  27  */
  28 package javax.xml.crypto;
  29 
  30 import java.io.PrintStream;
  31 import java.io.PrintWriter;
  32 import javax.xml.crypto.dsig.keyinfo.RetrievalMethod;
  33 
  34 /**
  35  * Indicates an exceptional condition thrown while dereferencing a
  36  * {@link URIReference}.
  37  *
  38  * <p>A {@code URIReferenceException} can contain a cause: another
  39  * throwable that caused this {@code URIReferenceException} to get thrown.
  40  *
  41  * @author Sean Mullan
  42  * @author JSR 105 Expert Group
  43  * @since 1.6
  44  * @see URIDereferencer#dereference(URIReference, XMLCryptoContext)
  45  * @see RetrievalMethod#dereference(XMLCryptoContext)
  46  */
  47 public class URIReferenceException extends Exception {
  48 
  49     private static final long serialVersionUID = 7173469703932561419L;
  50 
  51     /**
  52      * The throwable that caused this exception to get thrown, or null if this
  53      * exception was not caused by another throwable or if the causative
  54      * throwable is unknown.
  55      *
  56      * @serial
  57      */
  58     private Throwable cause;
  59 
  60     private URIReference uriReference;
  61 
  62     /**
  63      * Constructs a new {@code URIReferenceException} with
  64      * {@code null} as its detail message.
  65      */
  66     public URIReferenceException() {
  67         super();
  68     }
  69 
  70     /**
  71      * Constructs a new {@code URIReferenceException} with the specified
  72      * detail message.
  73      *
  74      * @param message the detail message
  75      */
  76     public URIReferenceException(String message) {
  77         super(message);
  78     }
  79 
  80     /**
  81      * Constructs a new {@code URIReferenceException} with the
  82      * specified detail message and cause.
  83      * <p>Note that the detail message associated with
  84      * {@code cause} is <i>not</i> automatically incorporated in
  85      * this exception's detail message.
  86      *
  87      * @param message the detail message
  88      * @param cause the cause (A {@code null} value is permitted, and
  89      *        indicates that the cause is nonexistent or unknown.)
  90      */
  91     public URIReferenceException(String message, Throwable cause) {
  92         super(message);
  93         this.cause = cause;
  94     }
  95 
  96     /**
  97      * Constructs a new {@code URIReferenceException} with the
  98      * specified detail message, cause and {@code URIReference}.
  99      * <p>Note that the detail message associated with
 100      * {@code cause} is <i>not</i> automatically incorporated in
 101      * this exception's detail message.
 102      *
 103      * @param message the detail message
 104      * @param cause the cause (A {@code null} value is permitted, and
 105      *        indicates that the cause is nonexistent or unknown.)
 106      * @param uriReference the {@code URIReference} that was being
 107      *    dereferenced when the error was encountered
 108      * @throws NullPointerException if {@code uriReference} is
 109      *    {@code null}
 110      */
 111     public URIReferenceException(String message, Throwable cause,
 112         URIReference uriReference) {
 113         this(message, cause);
 114         if (uriReference == null) {
 115             throw new NullPointerException("uriReference cannot be null");
 116         }
 117         this.uriReference = uriReference;
 118     }
 119 
 120     /**
 121      * Constructs a new {@code URIReferenceException} with the specified
 122      * cause and a detail message of {@code (cause==null ? null :
 123      * cause.toString())} (which typically contains the class and detail
 124      * message of {@code cause}).
 125      *
 126      * @param cause the cause (A {@code null} value is permitted, and
 127      *        indicates that the cause is nonexistent or unknown.)
 128      */
 129     public URIReferenceException(Throwable cause) {
 130         super(cause==null ? null : cause.toString());
 131         this.cause = cause;
 132     }
 133 
 134     /**
 135      * Returns the {@code URIReference} that was being dereferenced
 136      * when the exception was thrown.
 137      *
 138      * @return the {@code URIReference} that was being dereferenced
 139      * when the exception was thrown, or {@code null} if not specified
 140      */
 141     public URIReference getURIReference() {
 142         return uriReference;
 143     }
 144 
 145     /**
 146      * Returns the cause of this {@code URIReferenceException} or
 147      * {@code null} if the cause is nonexistent or unknown.  (The
 148      * cause is the throwable that caused this
 149      * {@code URIReferenceException} to get thrown.)
 150      *
 151      * @return the cause of this {@code URIReferenceException} or
 152      *    {@code null} if the cause is nonexistent or unknown.
 153      */
 154     public Throwable getCause() {
 155         return cause;
 156     }
 157 
 158     /**
 159      * Prints this {@code URIReferenceException}, its backtrace and
 160      * the cause's backtrace to the standard error stream.
 161      */
 162     public void printStackTrace() {
 163         super.printStackTrace();
 164         //XXX print backtrace of cause
 165     }
 166 
 167     /**
 168      * Prints this {@code URIReferenceException}, its backtrace and
 169      * the cause's backtrace to the specified print stream.
 170      *
 171      * @param s {@code PrintStream} to use for output
 172      */
 173     public void printStackTrace(PrintStream s) {
 174         super.printStackTrace(s);
 175         //XXX print backtrace of cause
 176     }
 177 
 178     /**
 179      * Prints this {@code URIReferenceException}, its backtrace and
 180      * the cause's backtrace to the specified print writer.
 181      *
 182      * @param s {@code PrintWriter} to use for output
 183      */
 184     public void printStackTrace(PrintWriter s) {
 185         super.printStackTrace(s);
 186         //XXX print backtrace of cause
 187     }
 188 }
< prev index next >