1ef36ef67e009449300b0150c60c9f637e205d79eWink Saville/*
2ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * Copyright (c) 2013 The Android Open Source Project
3ef36ef67e009449300b0150c60c9f637e205d79eWink Saville *
4ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * Licensed under the Apache License, Version 2.0 (the "License");
5ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * you may not use this file except in compliance with the License.
6ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * You may obtain a copy of the License at
7ef36ef67e009449300b0150c60c9f637e205d79eWink Saville *
8ef36ef67e009449300b0150c60c9f637e205d79eWink Saville *      http://www.apache.org/licenses/LICENSE-2.0
9ef36ef67e009449300b0150c60c9f637e205d79eWink Saville *
10ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * Unless required by applicable law or agreed to in writing, software
11ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * distributed under the License is distributed on an "AS IS" BASIS,
12ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * See the License for the specific language governing permissions and
14ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * limitations under the License.
15ef36ef67e009449300b0150c60c9f637e205d79eWink Saville */
16ef36ef67e009449300b0150c60c9f637e205d79eWink Saville
17ef36ef67e009449300b0150c60c9f637e205d79eWink Savillepackage com.android.ims;
18ef36ef67e009449300b0150c60c9f637e205d79eWink Saville
19ef36ef67e009449300b0150c60c9f637e205d79eWink Saville/**
20ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * This class defines a general IMS-related exception.
21ef36ef67e009449300b0150c60c9f637e205d79eWink Saville *
22ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * @hide
23ef36ef67e009449300b0150c60c9f637e205d79eWink Saville */
24ef36ef67e009449300b0150c60c9f637e205d79eWink Savillepublic class ImsException extends Exception {
25ef36ef67e009449300b0150c60c9f637e205d79eWink Saville
26ef36ef67e009449300b0150c60c9f637e205d79eWink Saville    /**
27ef36ef67e009449300b0150c60c9f637e205d79eWink Saville     * Refer to CODE_LOCAL_* in {@link ImsReasonInfo}
28ef36ef67e009449300b0150c60c9f637e205d79eWink Saville     */
29ef36ef67e009449300b0150c60c9f637e205d79eWink Saville    private int mCode;
30ef36ef67e009449300b0150c60c9f637e205d79eWink Saville
31ef36ef67e009449300b0150c60c9f637e205d79eWink Saville    public ImsException() {
32ef36ef67e009449300b0150c60c9f637e205d79eWink Saville    }
33ef36ef67e009449300b0150c60c9f637e205d79eWink Saville
34ef36ef67e009449300b0150c60c9f637e205d79eWink Saville    public ImsException(String message, int code) {
355b4aa98b59f51ce8eea2c4e39a2bd1c188ac3e26Etan Cohen        super(message + ", code = " + code);
36ef36ef67e009449300b0150c60c9f637e205d79eWink Saville        mCode = code;
37ef36ef67e009449300b0150c60c9f637e205d79eWink Saville    }
38ef36ef67e009449300b0150c60c9f637e205d79eWink Saville
39ef36ef67e009449300b0150c60c9f637e205d79eWink Saville    public ImsException(String message, Throwable cause, int code) {
40ef36ef67e009449300b0150c60c9f637e205d79eWink Saville        super(message, cause);
41ef36ef67e009449300b0150c60c9f637e205d79eWink Saville        mCode = code;
42ef36ef67e009449300b0150c60c9f637e205d79eWink Saville    }
43ef36ef67e009449300b0150c60c9f637e205d79eWink Saville
44ef36ef67e009449300b0150c60c9f637e205d79eWink Saville    /**
45ef36ef67e009449300b0150c60c9f637e205d79eWink Saville     * Gets the detailed exception code when ImsException is throwed
46ef36ef67e009449300b0150c60c9f637e205d79eWink Saville     *
47ef36ef67e009449300b0150c60c9f637e205d79eWink Saville     * @return the exception code in {@link ImsReasonInfo}
48ef36ef67e009449300b0150c60c9f637e205d79eWink Saville     */
49ef36ef67e009449300b0150c60c9f637e205d79eWink Saville    public int getCode() {
50ef36ef67e009449300b0150c60c9f637e205d79eWink Saville        return mCode;
51ef36ef67e009449300b0150c60c9f637e205d79eWink Saville    }
52ef36ef67e009449300b0150c60c9f637e205d79eWink Saville}
53