package com.srbenoit.filter;

/**
 * An exception thrown by filters if they cannot complete.
 */
public class FilterException extends Exception {

    /** version number for serialization */
    private static final long serialVersionUID = -7198057168424376761L;

    /**
     * Constructs a new <code>FilterException</code> with <code>null</code> as its detail message.
     */
    public FilterException() {

        super();
    }

    /**
     * Constructs a new <code>FilterException</code> 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
     */
    public FilterException(final String message) {

        super(message);
    }

    /**
     * Constructs a new <code>FilterException</code> with the specified detail message and cause.
     * the detail message
     *
     * @param  message  the detail message
     * @param  cause    the cause
     */
    public FilterException(final String message, final Throwable cause) {

        super(message, cause);
    }

    /**
     * Constructs a new <code>FilterException</code> with the specified cause and a detail message
     * of <code>(cause==null ? null : cause.toString())</code> (which typically contains the class
     * and detail message of <code>cause</code> ).
     *
     * @param  cause  the cause
     */
    public FilterException(final Throwable cause) {

        super(cause);
    }
}
