001/*
002 * SPDX-FileCopyrightText: none
003 * SPDX-License-Identifier: CC0-1.0
004 */
005
006package dev.metaschema.core.model;
007
008/**
009 * Indicates an error related to Metaschema processing.
010 */
011public class MetaschemaException
012    extends Exception {
013
014  /**
015   * The serial version UID.
016   */
017  private static final long serialVersionUID = 1L;
018
019  /**
020   * Create a new Metaschema exception with a provided message.
021   *
022   * @param message
023   *          text describing the cause of the exception
024   */
025  public MetaschemaException(String message) {
026    super(message);
027  }
028
029  /**
030   * Create a new Metaschema exception based on the provided cause.
031   *
032   * @param cause
033   *          the exception that caused this exception
034   */
035  public MetaschemaException(Throwable cause) {
036    super(cause);
037  }
038
039  /**
040   * Create a new Metaschema exception with a provided message based on the
041   * provided cause.
042   *
043   * @param message
044   *          text describing the cause of the exception
045   * @param cause
046   *          the exception that caused this exception
047   */
048  public MetaschemaException(String message, Throwable cause) {
049    super(message, cause);
050  }
051
052  /**
053   * Create a new Metaschema exception with a provided message based on the
054   * provided cause.
055   *
056   *
057   * @param message
058   *          text describing the cause of the exception
059   * @param cause
060   *          the exception that caused this exception
061   * @param enableSuppression
062   *          whether or not suppression is enabled or disabled
063   * @param writableStackTrace
064   *          whether or not the stack trace should be writable
065   */
066  public MetaschemaException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) {
067    super(message, cause, enableSuppression, writableStackTrace);
068  }
069
070}