summaryrefslogtreecommitdiffstats
path: root/telephony
diff options
context:
space:
mode:
authorUma Maheswari Ramalingam <umam@codeaurora.org>2014-07-31 15:54:52 -0700
committerEtan Cohen <etancohen@google.com>2014-08-03 02:05:14 +0000
commit1c18285c36a0cf202dcf737c96766638e1e56c5d (patch)
tree8695abccb539035c9d8e5a640c8fbc0917d81d57 /telephony
parentd5fee89ce8c47214b5eeb7ccd7af8e82d764ebbc (diff)
downloadframeworks_base-1c18285c36a0cf202dcf737c96766638e1e56c5d.zip
frameworks_base-1c18285c36a0cf202dcf737c96766638e1e56c5d.tar.gz
frameworks_base-1c18285c36a0cf202dcf737c96766638e1e56c5d.tar.bz2
Add ECBM functionality for IMS
Code for adding ECBM functionality for IMS. Change-Id: I2833c81baf0a55a18ac6433c47fd76bad7cf0ec9
Diffstat (limited to 'telephony')
-rw-r--r--telephony/java/com/android/ims/ImsReasonInfo.java5
-rw-r--r--telephony/java/com/android/ims/internal/IImsEcbm.aidl49
-rw-r--r--telephony/java/com/android/ims/internal/IImsEcbmListener.aidl48
-rw-r--r--telephony/java/com/android/ims/internal/IImsService.aidl8
4 files changed, 109 insertions, 1 deletions
diff --git a/telephony/java/com/android/ims/ImsReasonInfo.java b/telephony/java/com/android/ims/ImsReasonInfo.java
index 99faba6..d2b6725 100644
--- a/telephony/java/com/android/ims/ImsReasonInfo.java
+++ b/telephony/java/com/android/ims/ImsReasonInfo.java
@@ -218,7 +218,10 @@ public class ImsReasonInfo implements Parcelable {
public static final int CODE_UT_OPERATION_NOT_ALLOWED = 803;
public static final int CODE_UT_CB_PASSWORD_MISMATCH = 821;
-
+ /**
+ * ECBM
+ */
+ public static final int CODE_ECBM_NOT_SUPPORTED = 901;
// For reason type
public int mReasonType;
diff --git a/telephony/java/com/android/ims/internal/IImsEcbm.aidl b/telephony/java/com/android/ims/internal/IImsEcbm.aidl
new file mode 100644
index 0000000..f890bc2
--- /dev/null
+++ b/telephony/java/com/android/ims/internal/IImsEcbm.aidl
@@ -0,0 +1,49 @@
+/*
+ * Copyright (c) 2014, The Linux Foundation. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ * * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following
+ * disclaimer in the documentation and/or other materials provided
+ * with the distribution.
+ * * Neither the name of The Linux Foundation nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+ * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+package com.android.ims.internal;
+
+import com.android.ims.internal.IImsEcbmListener;
+
+/**
+ * Provides the ECBM interface
+ *
+ * {@hide}
+ */
+interface IImsEcbm {
+ /**
+ * Sets the listener.
+ */
+ void setListener(in IImsEcbmListener listener);
+
+ /**
+ * Requests Modem to come out of ECBM mode
+ */
+ void exitEmergencyCallbackMode();
+}
diff --git a/telephony/java/com/android/ims/internal/IImsEcbmListener.aidl b/telephony/java/com/android/ims/internal/IImsEcbmListener.aidl
new file mode 100644
index 0000000..d866ecb
--- /dev/null
+++ b/telephony/java/com/android/ims/internal/IImsEcbmListener.aidl
@@ -0,0 +1,48 @@
+/*
+ * Copyright (c) 2014, The Linux Foundation. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ * * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following
+ * disclaimer in the documentation and/or other materials provided
+ * with the distribution.
+ * * Neither the name of The Linux Foundation nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+ * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+package com.android.ims.internal;
+
+/**
+ * A listener type for receiving notifications about the changes to
+ * Emergency Callback Mode through IMS.
+ *
+ * {@hide}
+ */
+interface IImsEcbmListener {
+ /**
+ * Notifies the application when the device enters Emergency Callback Mode.
+ */
+ void enteredECBM();
+
+ /**
+ * Notifies the application when the device exits Emergency Callback Mode.
+ */
+ void exitedECBM();
+}
diff --git a/telephony/java/com/android/ims/internal/IImsService.aidl b/telephony/java/com/android/ims/internal/IImsService.aidl
index 869cd9f..5138305 100644
--- a/telephony/java/com/android/ims/internal/IImsService.aidl
+++ b/telephony/java/com/android/ims/internal/IImsService.aidl
@@ -22,6 +22,7 @@ import com.android.ims.ImsCallProfile;
import com.android.ims.internal.IImsRegistrationListener;
import com.android.ims.internal.IImsCallSession;
import com.android.ims.internal.IImsCallSessionListener;
+import com.android.ims.internal.IImsEcbm;
import com.android.ims.internal.IImsUt;
import com.android.ims.internal.IImsConfig;
@@ -62,4 +63,11 @@ interface IImsService {
* When IMS is OFF, device will behave as CSFB'ed.
*/
void turnOffIms();
+
+
+ /**
+ * ECBM interface for Emergency Callback mode mechanism.
+ */
+ IImsEcbm getEcbmInterface(int serviceId);
+
}