001// SPDX-License-Identifier: GPL-3.0-or-later
002
003package es.uvigo.esei.sing.textproc.step;
004
005/**
006 * Represents a unrecoverable exception which occurs while executing a
007 * processing operation.
008 *
009 * @author Alejandro González García
010 */
011public final class ProcessingException extends Exception {
012        private static final long serialVersionUID = 1L;
013
014        /**
015         * Constructs a new processing exception with {@code null} as its detail
016         * message. The cause is not initialized.
017         */
018        public ProcessingException() {
019                super();
020        }
021
022        /**
023         * Constructs a new exception with the specified detail message. The cause is
024         * not initialized.
025         *
026         * @param message The detail message.
027         */
028        public ProcessingException(final String message) {
029                super(message);
030        }
031
032        /**
033         * Constructs a new exception with the specified detail message and cause.
034         *
035         * @param message The detail message.
036         * @param cause   The cause. A {@code null} value is permitted, and indicates
037         *                that the cause is nonexistent or unknown.
038         */
039        public ProcessingException(final String message, final Throwable cause) {
040                super(message, cause);
041        }
042
043        /**
044         * Constructs a new exception with the specified cause and a detail message of
045         * {@code (cause==null ? null : cause.toString())} (which typically contains the
046         * class and detail message of {@code cause}).
047         *
048         * @param cause The cause. A {@code null} value is permitted, and indicates that
049         *              the cause is nonexistent or unknown.
050         */
051        public ProcessingException(final Throwable cause) {
052                super(cause);
053        }
054}