/** * * Copyright (c) 2006-2017, Speedment, Inc. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); You may not * use this file except in compliance with the License. You may obtain a copy of * the License at: * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package com.speedment.runtime.core.exception; /** * {@code SpeedmentException} is the superclass of those exceptions that can be * thrown during the normal operation of the Speedment framework. Exceptions of * this type are sometimes used to wrap checked exception. * <p> * {@code SpeedmentException} and its subclasses are <em>unchecked * exceptions</em>. Unchecked exceptions do <em>not</em> need to be declared in * a method or constructor's {@code throws} clause if they can be thrown by the * execution of the method or constructor and propagate outside the method or * constructor boundary. * * @author Per Minborg * @since 2.0.0 */ public final class SpeedmentException extends RuntimeException { static final long serialVersionUID = -623523923713561356L; /** * Constructs a new {@code SpeedmentException} with {@code null} as its * detail message. The cause is not initialized, and may subsequently be * initialized by a call to {@link #initCause}. */ public SpeedmentException() { super(); } /** * Constructs a new {@code SpeedmentException} with the specified detail * message. The cause is not initialized, and may subsequently be * initialized by a call to {@link #initCause}. * * @param message the detail message. The detail message is saved for later * retrieval by the {@link #getMessage()} method. */ public SpeedmentException(String message) { super(message); } /** * Constructs a new {@code SpeedmentException} with the specified detail * message and cause. * <p> * Note that the detail message associated with {@code cause} is <i>not</i> * automatically incorporated in this exception's detail message. * * @param message the detail message (which is saved for later retrieval by * the {@link #getMessage()} method). * @param cause the cause (which is saved for later retrieval by the * {@link #getCause()} method). (A <tt>null</tt> value is permitted, and * indicates that the cause is nonexistent or unknown.) */ public SpeedmentException(String message, Throwable cause) { super(message, cause); } /** * Constructs a new {@code SpeedmentException} with the specified cause and * a detail message of <tt>(cause==null ? null : cause.toString())</tt> * (which typically contains the class and detail message of * <tt>cause</tt>). This constructor is useful for exceptions that are * little more than wrappers for other throwables (for example, {@link * java.security.PrivilegedActionException}). * * @param cause the cause (which is saved for later retrieval by the * {@link #getCause()} method). (A <tt>null</tt> value is permitted, and * indicates that the cause is nonexistent or unknown.) */ public SpeedmentException(Throwable cause) { super(cause); } /** * Constructs a new exception with the specified detail message, cause, * suppression enabled or disabled, and writable stack trace enabled or * disabled. * * @param message the detail message. * @param cause the cause. (A {@code null} value is permitted, and indicates * that the cause is nonexistent or unknown.) * @param enableSuppression whether or not suppression is enabled or * disabled * @param writableStackTrace whether or not the stack trace should be * writable */ protected SpeedmentException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) { super(message, cause, enableSuppression, writableStackTrace); } }