001 /* $Id: DigesterLoadingException.java 729094 2008-12-23 20:30:47Z rahul $ 002 * 003 * Licensed to the Apache Software Foundation (ASF) under one or more 004 * contributor license agreements. See the NOTICE file distributed with 005 * this work for additional information regarding copyright ownership. 006 * The ASF licenses this file to You under the Apache License, Version 2.0 007 * (the "License"); you may not use this file except in compliance with 008 * the License. You may obtain a copy of the License at 009 * 010 * http://www.apache.org/licenses/LICENSE-2.0 011 * 012 * Unless required by applicable law or agreed to in writing, software 013 * distributed under the License is distributed on an "AS IS" BASIS, 014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 015 * See the License for the specific language governing permissions and 016 * limitations under the License. 017 */ 018 019 020 package org.apache.commons.digester.xmlrules; 021 022 023 /** 024 * Thrown when an error occurs while parsing XML into Digester rules. 025 * 026 * @since 1.2 027 */ 028 029 public class DigesterLoadingException extends Exception { 030 031 private static final long serialVersionUID = 1L; 032 private Throwable cause = null; 033 034 /** 035 * @param msg a String detailing the reason for the exception 036 */ 037 public DigesterLoadingException(String msg) { 038 super(msg); 039 } 040 041 /** 042 * @param cause underlying exception that caused this to be thrown 043 */ 044 public DigesterLoadingException(Throwable cause) { 045 this(cause.getMessage()); 046 this.cause = cause; 047 } 048 049 /** 050 * @param msg a String detailing the reason for the exception 051 * @param cause underlying exception that caused this to be thrown 052 */ 053 public DigesterLoadingException(String msg, Throwable cause) { 054 this(msg); 055 this.cause = cause; 056 } 057 058 /** 059 * Return the cause of this exception (if any) as specified in the 060 * exception constructor. 061 * 062 * @since 1.8 063 */ 064 public Throwable getCause() { 065 return cause; 066 } 067 }