001/* 002 * Licensed to the Apache Software Foundation (ASF) under one or more 003 * contributor license agreements. See the NOTICE file distributed with 004 * this work for additional information regarding copyright ownership. 005 * The ASF licenses this file to You under the Apache License, Version 2.0 006 * (the "License"); you may not use this file except in compliance with 007 * the License. You may obtain a copy of the License at 008 * 009 * https://www.apache.org/licenses/LICENSE-2.0 010 * 011 * Unless required by applicable law or agreed to in writing, software 012 * distributed under the License is distributed on an "AS IS" BASIS, 013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 014 * See the License for the specific language governing permissions and 015 * limitations under the License. 016 */ 017 018package org.apache.commons.configuration2.ex; 019 020/** 021 * Thrown when a property is incompatible with the type requested. 022 * 023 * @since 1.0 024 */ 025public class ConversionException extends ConfigurationRuntimeException { 026 027 /** 028 * The serial version UID. 029 */ 030 private static final long serialVersionUID = -5167943099293540392L; 031 032 /** 033 * Constructs a new {@code ConversionException} without specified detail message. 034 */ 035 public ConversionException() { 036 } 037 038 /** 039 * Constructs a new {@code ConversionException} with specified detail message. 040 * 041 * @param message the error message 042 */ 043 public ConversionException(final String message) { 044 super(message); 045 } 046 047 /** 048 * Constructs a new {@code ConversionException} with specified detail message. 049 * 050 * @param format the error message for for {@link String#format(String, Object...)}. 051 * @param params the error parameters for for {@link String#format(String, Object...)}. 052 * @since 2.14.0 053 */ 054 public ConversionException(final String format, final Object... params) { 055 super(String.format(format, params)); 056 } 057 058 /** 059 * Constructs a new {@code ConversionException} with specified detail message and nested {@code Throwable}. 060 * 061 * @param message the error message 062 * @param cause the exception or error that caused this exception to be thrown 063 */ 064 public ConversionException(final String message, final Throwable cause) { 065 super(message, cause); 066 } 067 068 /** 069 * Constructs a new {@code ConversionException} with specified nested {@code Throwable}. 070 * 071 * @param cause the exception or error that caused this exception to be thrown 072 */ 073 public ConversionException(final Throwable cause) { 074 super(cause); 075 } 076 077 /** 078 * Constructs a new {@code ConversionException} with specified detail message. 079 * 080 * @param format the error message for for {@link String#format(String, Object...)}. 081 * @param params the error parameters for for {@link String#format(String, Object...)}. 082 * @param cause the cause (which is saved for later retrieval by the {@link #getCause()} method). (A {@code null} value is permitted, and indicates that 083 * the cause is nonexistent or unknown.) 084 * @since 2.14.0 085 */ 086 public ConversionException(final Throwable cause, final String format, final Object... params) { 087 super(cause, format, params); 088 } 089}