Imported Upstream version 1.1.0
[platform/upstream/iotivity.git] / service / simulator / java / sdk / src / org / oic / simulator / SimulatorException.java
1 /*
2  * Copyright 2015 Samsung Electronics All Rights Reserved.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 package org.oic.simulator;
18
19 /**
20  * Base class for simulator exceptions that will be thrown to indicate general
21  * exceptions.
22  */
23 @SuppressWarnings("serial")
24 public class SimulatorException extends Exception {
25
26     private SimulatorResult code;
27     private String          message;
28
29     /**
30      * Constructs {@link SimulatorException} with the given ordinal representing
31      * the error code and description.
32      *
33      * @param code
34      *            Ordinal of an error code.
35      * @param message
36      *            Error description.
37      */
38     public SimulatorException(int code, String message) {
39         this.code = SimulatorResult.get(code);
40         this.message = message;
41     }
42
43     /**
44      * Constructs {@link SimulatorException} with the given error code and
45      * description.
46      *
47      * @param code
48      *            {@link SimulatorResult} enum constant representing the error
49      *            code.
50      * @param message
51      *            Error description.
52      */
53     public SimulatorException(SimulatorResult code, String message) {
54         this.code = code;
55         this.message = message;
56     }
57
58     /**
59      * API to get the error code.
60      *
61      * @return {@link SimulatorResult} enum constant representing the error
62      *         code.
63      */
64     public SimulatorResult code() {
65         return code;
66     }
67
68     /**
69      * API to get the error description.
70      *
71      * @return Error description.
72      */
73     public String message() {
74         return message;
75     }
76 }