View Javadoc

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.commons.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: 424107 $ $Date: 2006-07-21 01:15:42 +0200 (fr, 21 jul 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  
38          super();
39  
40      }
41  
42  
43      /**
44       * Construct a new exception with the specified detail message.
45       *
46       * @param message The detail message
47       */
48      public LogConfigurationException(String message) {
49  
50          super(message);
51  
52      }
53  
54  
55      /**
56       * Construct a new exception with the specified cause and a derived
57       * detail message.
58       *
59       * @param cause The underlying cause
60       */
61      public LogConfigurationException(Throwable cause) {
62  
63          this((cause == null) ? null : cause.toString(), cause);
64  
65      }
66  
67  
68      /**
69       * Construct a new exception with the specified detail message and cause.
70       *
71       * @param message The detail message
72       * @param cause The underlying cause
73       */
74      public LogConfigurationException(String message, Throwable cause) {
75  
76          super(message + " (Caused by " + cause + ")");
77          this.cause = cause; // Two-argument version requires JDK 1.4 or later
78  
79      }
80  
81  
82      /**
83       * The underlying cause of this exception.
84       */
85      protected Throwable cause = null;
86  
87  
88      /**
89       * Return the underlying cause of this exception (if any).
90       */
91      public Throwable getCause() {
92  
93          return (this.cause);
94  
95      }
96  
97  
98  }