1 package net.sumaris.core.exception;
2
3 /*-
4 * #%L
5 * Sumaris3 Core :: Sumaris3 Core Shared
6 * $Id:$
7 * $HeadURL:$
8 * %%
9 * Copyright (C) 2018 SUMARiS Consortium
10 * %%
11 * This program is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as
13 * published by the Free Software Foundation, either version 3 of the
14 * License, or (at your option) any later version.
15 *
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
20 *
21 * You should have received a copy of the GNU General Public
22 * License along with this program. If not, see
23 * <http://www.gnu.org/licenses/gpl-3.0.html>.
24 * #L%
25 */
26
27
28 /**
29 * <p>SumarisBusinessException class.</p>
30 */
31 public abstract class SumarisBusinessException extends RuntimeException {
32
33 private static final long serialVersionUID = 1L;
34
35 protected int code;
36
37 /**
38 * <p>Constructor for SumarisBusinessException.</p>
39 *
40 * @param message a {@link String} object.
41 */
42 public SumarisBusinessException(int code, String message) {
43 super(message);
44 this.code = code;
45 }
46
47 /**
48 * <p>Constructor for SumarisBusinessException.</p>
49 *
50 * @param message a {@link String} object.
51 * @param cause a {@link Throwable} object.
52 */
53 public SumarisBusinessException(int code, String message, Throwable cause) {
54 super(message, cause);
55 this.code = code;
56 }
57
58 /**
59 * <p>Constructor for SumarisBusinessException.</p>
60 *
61 * @param cause a {@link Throwable} object.
62 */
63 public SumarisBusinessException(int code, Throwable cause) {
64 super(cause);
65 this.code = code;
66 }
67
68 public int getCode() {
69 return this.code;
70 }
71 }