1 package dev.sympho.modular_commands.api.exception; 2 3 import org.checkerframework.checker.nullness.qual.Nullable; 4 5 /** 6 * Base type for exceptions related to the command system. 7 * 8 * @version 1.0 9 * @since 1.0 10 */ 11 public class CommandException extends RuntimeException { 12 13 /** Serial UID. */ 14 private static final long serialVersionUID = 4017640033490631277L; 15 16 /** 17 * Constructs a new exception. 18 * 19 * @see RuntimeException#RuntimeException() 20 */ 21 public CommandException() {} 22 23 /** 24 * Constructs a new exception. 25 * 26 * @param message The detail message. 27 * @see RuntimeException#RuntimeException(String) 28 */ 29 public CommandException( final String message ) { 30 super( message ); 31 } 32 33 /** 34 * Constructs a new exception. 35 * 36 * @param message The detail message. 37 * @param cause The cause. 38 * @see RuntimeException#RuntimeException(String, Throwable) 39 */ 40 public CommandException( final String message, final Throwable cause ) { 41 super( message, cause ); 42 } 43 44 /** 45 * Constructs a new exception. 46 * 47 * @param cause The cause. 48 * @see RuntimeException#RuntimeException(Throwable) 49 */ 50 public CommandException( final Throwable cause ) { 51 super( cause ); 52 } 53 54 /** 55 * Constructs a new exception. 56 * 57 * @param message The detail message. 58 * @param cause The cause. May be {@code null}. 59 * @param enableSuppression Whether or not suppression is enabled or disabled. 60 * @param writableStackTrace Whether or not the stack trace should be writable 61 * @see RuntimeException#RuntimeException(String, Throwable, boolean, boolean) 62 */ 63 protected CommandException( final String message, final @Nullable Throwable cause, 64 final boolean enableSuppression, final boolean writableStackTrace ) { 65 super( message, cause, enableSuppression, writableStackTrace ); 66 } 67 68 }