001/* 002 * PersistenceException.java July 2006 003 * 004 * Copyright (C) 2006, Niall Gallagher <niallg@users.sf.net> 005 * 006 * Licensed under the Apache License, Version 2.0 (the "License"); 007 * you may not use this file except in compliance with the License. 008 * 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 015 * implied. See the License for the specific language governing 016 * permissions and limitations under the License. 017 */ 018 019package org.simpleframework.xml.core; 020 021/** 022 * The <code>PersistenceException</code> is thrown when there is a 023 * persistance exception. This exception this will be thrown from the 024 * <code>Persister</code> should serialization or deserialization 025 * of an object fail. Error messages provided to this exception are 026 * formatted similar to the <code>PrintStream.printf</code> method. 027 * 028 * @author Niall Gallagher 029 */ 030public class PersistenceException extends Exception { 031 032 /** 033 * Constructor for the <code>PersistenceException</code> object. 034 * This constructor takes a format string an a variable number of 035 * object arguments, which can be inserted into the format string. 036 * 037 * @param text a format string used to present the error message 038 * @param list a list of arguments to insert into the string 039 */ 040 public PersistenceException(String text, Object... list) { 041 super(String.format(text, list)); 042 } 043 044 /** 045 * Constructor for the <code>PersistenceException</code> object. 046 * This constructor takes a format string an a variable number of 047 * object arguments, which can be inserted into the format string. 048 * 049 * @param cause the source exception this is used to represent 050 * @param text a format string used to present the error message 051 * @param list a list of arguments to insert into the string 052 */ 053 public PersistenceException(Throwable cause, String text, Object... list) { 054 super(String.format(text, list), cause); 055 } 056}