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