1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.apache.commons.jxpath;
17
18 /***
19 * Thrown when a problem with configuration with the JXPathContextFactories
20 * exists. This error will typically be thrown when the class of a
21 * factory specified in the system properties cannot be found
22 * or instantiated.
23 *
24 * @author Dmitri Plotnikov
25 * @version $Revision: 1.5 $ $Date: 2004/02/29 14:17:42 $
26 */
27
28 public class JXPathContextFactoryConfigurationError extends Error {
29
30 /*** @serial */
31 private Exception exception;
32
33 /***
34 * Create a new <code>JXPathContextFactoryConfigurationError</code> with no
35 * detail mesage.
36 */
37
38 public JXPathContextFactoryConfigurationError() {
39 super();
40 this.exception = null;
41 }
42
43 /***
44 * Create a new <code>JXPathContextFactoryConfigurationError</code> with
45 * the <code>String </code> specified as an error message.
46 *
47 * @param msg The error message for the exception.
48 */
49
50 public JXPathContextFactoryConfigurationError(String msg) {
51 super(msg);
52 this.exception = null;
53 }
54
55
56 /***
57 * Create a new <code>JXPathContextFactoryConfigurationError</code> with a
58 * given <code>Exception</code> base cause of the error.
59 *
60 * @param e The exception to be encapsulated in a
61 * JXPathContextFactoryConfigurationError.
62 */
63
64 public JXPathContextFactoryConfigurationError(Exception e) {
65 super(e.toString());
66 this.exception = e;
67 }
68
69 /***
70 * Create a new <code>JXPathContextFactoryConfigurationError</code> with the
71 * given <code>Exception</code> base cause and detail message.
72 *
73 * @param e The exception to be encapsulated in a
74 * JXPathContextFactoryConfigurationError
75 * @param msg The detail message.
76 */
77
78 public JXPathContextFactoryConfigurationError(Exception e, String msg) {
79 super(msg);
80 this.exception = e;
81 }
82
83
84 /***
85 * Return the message (if any) for this error . If there is no
86 * message for the exception and there is an encapsulated
87 * exception then the message of that exception will be returned.
88 *
89 * @return The error message.
90 */
91
92 public String getMessage () {
93 String message = super.getMessage ();
94
95 if (message == null && exception != null) {
96 return exception.getMessage();
97 }
98
99 return message;
100 }
101
102 /***
103 * Return the actual exception (if any) that caused this exception to
104 * be raised.
105 *
106 * @return The encapsulated exception, or null if there is none.
107 */
108
109 public Exception getException () {
110 return exception;
111 }
112 }