KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > codehaus > aspectwerkz > exception > DefinitionException


1 /**************************************************************************************
2  * Copyright (c) Jonas BonŽr, Alexandre Vasseur. All rights reserved. *
3  * http://aspectwerkz.codehaus.org *
4  * ---------------------------------------------------------------------------------- *
5  * The software in this package is published under the terms of the LGPL license *
6  * a copy of which has been included with this distribution in the license.txt file. *
7  **************************************************************************************/

8 package org.codehaus.aspectwerkz.exception;
9
10 import java.io.PrintStream JavaDoc;
11 import java.io.PrintWriter JavaDoc;
12
13 /**
14  * Thrown when error in definition.
15  *
16  * @author <a HREF="mailto:jboner@codehaus.org">Jonas BonŽr </a>
17  * @author <a HREF="mailto:vmassol@apache.org">Vincent Massol </a>
18  */

19 public class DefinitionException extends RuntimeException JavaDoc {
20     /**
21      * Original exception which caused this exception.
22      */

23     private Throwable JavaDoc originalException;
24
25     /**
26      * Sets the message for the exception.
27      *
28      * @param message the message
29      */

30     public DefinitionException(final String JavaDoc message) {
31         super(message);
32     }
33
34     /**
35      * Sets the message for the exception and the original exception being wrapped.
36      *
37      * @param message the detail of the error message
38      * @param throwable the original exception
39      */

40     public DefinitionException(String JavaDoc message, Throwable JavaDoc throwable) {
41         super(message);
42         this.originalException = throwable;
43     }
44
45     /**
46      * Print the full stack trace, including the original exception.
47      */

48     public void printStackTrace() {
49         printStackTrace(System.err);
50     }
51
52     /**
53      * Print the full stack trace, including the original exception.
54      *
55      * @param ps the byte stream in which to print the stack trace
56      */

57     public void printStackTrace(PrintStream JavaDoc ps) {
58         super.printStackTrace(ps);
59         if (this.originalException != null) {
60             this.originalException.printStackTrace(ps);
61         }
62     }
63
64     /**
65      * Print the full stack trace, including the original exception.
66      *
67      * @param pw the character stream in which to print the stack trace
68      */

69     public void printStackTrace(PrintWriter JavaDoc pw) {
70         super.printStackTrace(pw);
71         if (this.originalException != null) {
72             this.originalException.printStackTrace(pw);
73         }
74     }
75 }
Popular Tags