0767bf217708cd6f3e0ba4c2cb4f462b4b8ef0c1
[IRC.git] / Robust / src / Tests / ssJava / mp3decoder / JavaLayerException.java
1 /*\r
2  * 11/19/04             1.0 moved to LGPL.\r
3  * 12/12/99             Initial version.        mdm@techie.com\r
4  *-----------------------------------------------------------------------\r
5  *   This program is free software; you can redistribute it and/or modify\r
6  *   it under the terms of the GNU Library General Public License as published\r
7  *   by the Free Software Foundation; either version 2 of the License, or\r
8  *   (at your option) any later version.\r
9  *\r
10  *   This program is distributed in the hope that it will be useful,\r
11  *   but WITHOUT ANY WARRANTY; without even the implied warranty of\r
12  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
13  *   GNU Library General Public License for more details.\r
14  *\r
15  *   You should have received a copy of the GNU Library General Public\r
16  *   License along with this program; if not, write to the Free Software\r
17  *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.\r
18  *----------------------------------------------------------------------\r
19  */\r
20 \r
21 package javazoom.jl.decoder;\r
22 \r
23 import java.io.PrintStream;\r
24 \r
25 \r
26 /**\r
27  * The JavaLayerException is the base class for all API-level\r
28  * exceptions thrown by JavaLayer. To facilitate conversion and \r
29  * common handling of exceptions from other domains, the class \r
30  * can delegate some functionality to a contained Throwable instance. \r
31  * <p> \r
32  * \r
33  * @author MDM\r
34  */\r
35 public class JavaLayerException extends Exception\r
36 {\r
37         \r
38         private Throwable               exception;\r
39         \r
40         \r
41         public JavaLayerException()\r
42         {\r
43         }\r
44         \r
45         public JavaLayerException(String msg)\r
46         {\r
47                 super(msg);\r
48         }\r
49         \r
50         public JavaLayerException(String msg, Throwable t)\r
51         {\r
52                 super(msg);\r
53                 exception = t;\r
54         }\r
55         \r
56         public Throwable getException()\r
57         {\r
58                 return exception;       \r
59         }\r
60         \r
61         \r
62         public void printStackTrace()\r
63         {\r
64                 printStackTrace(System.err);    \r
65         }\r
66         \r
67         public void printStackTrace(PrintStream ps)\r
68         {\r
69                 if (this.exception==null)\r
70                 {\r
71                         super.printStackTrace(ps);      \r
72                 }\r
73                 else\r
74                 {\r
75                         exception.printStackTrace();\r
76                 }\r
77         }\r
78         \r
79         \r
80 }\r