1 /*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18 package org.apache.juli.logging;
19
20
21 /**
22 * <p>An exception that is thrown only if a suitable <code>LogFactory</code>
23 * or <code>Log</code> instance cannot be created by the corresponding
24 * factory methods.</p>
25 *
26 * @author Craig R. McClanahan
27 * @version $Revision: 467222 $ $Date: 2006-10-24 05:17:11 +0200 (Tue, 24 Oct 2006) $
28 */
29
30 public class LogConfigurationException extends RuntimeException {
31
32
33 /**
34 * Construct a new exception with <code>null</code> as its detail message.
35 */
36 public LogConfigurationException() {
37 super();
38 }
39
40
41 /**
42 * Construct a new exception with the specified detail message.
43 *
44 * @param message The detail message
45 */
46 public LogConfigurationException(String message) {
47 super(message);
48 }
49
50
51 /**
52 * Construct a new exception with the specified cause and a derived
53 * detail message.
54 *
55 * @param cause The underlying cause
56 */
57 public LogConfigurationException(Throwable cause) {
58 this( ((cause == null) ? null : cause.toString()), cause);
59 }
60
61
62 /**
63 * Construct a new exception with the specified detail message and cause.
64 *
65 * @param message The detail message
66 * @param cause The underlying cause
67 */
68 public LogConfigurationException(String message, Throwable cause) {
69
70 super(message);
71 this.cause = cause; // Two-argument version requires JDK 1.4 or later
72
73 }
74
75
76 /**
77 * The underlying cause of this exception.
78 */
79 protected Throwable cause = null;
80
81
82 /**
83 * Return the underlying cause of this exception (if any).
84 */
85 public Throwable getCause() {
86
87 return (this.cause);
88
89 }
90
91
92 }