01: /**
02: * The XMOJO Project 5
03: * Copyright © 2003 XMOJO.org. All rights reserved.
04:
05: * NO WARRANTY
06:
07: * BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR
08: * THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
09: * OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
10: * PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
11: * OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
12: * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
13: * TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE
14: * LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
15: * REPAIR OR CORRECTION.
16:
17: * IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL
18: * ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE
19: * THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
20: * GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
21: * USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF
22: * DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
23: * PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE),
24: * EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
25: * SUCH DAMAGES.
26: **/package javax.management;
27:
28: /**
29: * This class represents "user defined" exceptions thrown by Mbean methods
30: * in the agent. It "wraps" the actual "user defined" exception thrown.
31: * This exception will be built by the MBeanServer when a call to an
32: * MBean method results in an unknown exception.
33: */
34: public class MBeanException extends JMException {
35: private Exception exp = null;
36:
37: /**
38: * Creates a MBeanException that wraps the actual java.lang.Exception.
39: */
40: public MBeanException(Exception e) {
41: super ();
42: exp = e;
43: }
44:
45: /**
46: * Creates a MBeanException that wraps the actual java.lang.Exception
47: * with a detail message.
48: */
49: public MBeanException(Exception e, String message) {
50: super (message);
51: exp = e;
52: }
53:
54: /**
55: * Returns the actual java.lang.Exception thrown
56: */
57: public java.lang.Exception getTargetException() {
58: return exp;
59: }
60:
61: /**
62: * Overrides the method
63: */
64: public void printStackTrace() {
65: super .printStackTrace();
66:
67: if (exp != null)
68: exp.printStackTrace();
69: }
70:
71: /**
72: * Overrides the method
73: */
74: public String toString() {
75: if (exp == null || exp.getMessage() == null)
76: return super .toString();
77:
78: return (super .toString() + "; nested exception is:");
79: }
80: }//End of class MBeanException
|