KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > mchange > lang > PotentiallySecondaryError


1 /*
2  * Distributed as part of c3p0 v.0.9.1
3  *
4  * Copyright (C) 2005 Machinery For Change, Inc.
5  *
6  * Author: Steve Waldman <swaldman@mchange.com>
7  *
8  * This library is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU Lesser General Public License version 2.1, as
10  * published by the Free Software Foundation.
11  *
12  * This software is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public License
18  * along with this software; see the file LICENSE. If not, write to the
19  * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
20  * Boston, MA 02111-1307, USA.
21  */

22
23
24 package com.mchange.lang;
25
26 import java.io.*;
27
28 public class PotentiallySecondaryError extends Error JavaDoc implements PotentiallySecondary
29 {
30     final static String JavaDoc NESTED_MSG = ">>>>>>>>>> NESTED THROWABLE >>>>>>>>";
31
32     Throwable JavaDoc nested;
33
34     public PotentiallySecondaryError(String JavaDoc msg, Throwable JavaDoc t)
35     {
36     super(msg);
37     this.nested = t;
38     }
39
40     public PotentiallySecondaryError(Throwable JavaDoc t)
41     {this("", t);}
42
43     public PotentiallySecondaryError(String JavaDoc msg)
44     {this(msg, null);}
45
46     public PotentiallySecondaryError()
47     {this("", null);}
48
49     public Throwable JavaDoc getNestedThrowable()
50     {return nested;}
51
52     public void printStackTrace(PrintWriter pw)
53     {
54     super.printStackTrace(pw);
55     if (nested != null)
56         {
57         pw.println(NESTED_MSG);
58         nested.printStackTrace(pw);
59         }
60     }
61
62     public void printStackTrace(PrintStream ps)
63     {
64     super.printStackTrace(ps);
65     if (nested != null)
66         {
67         ps.println("NESTED_MSG");
68         nested.printStackTrace(ps);
69         }
70     }
71
72     public void printStackTrace()
73     {printStackTrace(System.err);}
74 }
75
Popular Tags