summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--telephony/java/android/telephony/ims/ImsRcsManager.java6
-rw-r--r--telephony/java/android/telephony/ims/RcsUceAdapter.java9
2 files changed, 13 insertions, 2 deletions
diff --git a/telephony/java/android/telephony/ims/ImsRcsManager.java b/telephony/java/android/telephony/ims/ImsRcsManager.java
index 074aefe2e800..885ff9be550c 100644
--- a/telephony/java/android/telephony/ims/ImsRcsManager.java
+++ b/telephony/java/android/telephony/ims/ImsRcsManager.java
@@ -26,6 +26,7 @@ import android.content.Intent;
import android.os.Binder;
import android.os.IBinder;
import android.os.RemoteException;
+import android.os.ServiceSpecificException;
import android.provider.Settings;
import android.telephony.AccessNetworkConstants;
import android.telephony.BinderCacheManager;
@@ -198,6 +199,8 @@ public class ImsRcsManager {
c.setExecutor(executor);
try {
imsRcsController.registerImsRegistrationCallback(mSubId, c.getBinder());
+ } catch (ServiceSpecificException e) {
+ throw new ImsException(e.toString(), e.errorCode);
} catch (RemoteException | IllegalStateException e) {
throw new ImsException(e.getMessage(), ImsException.CODE_ERROR_SERVICE_UNAVAILABLE);
}
@@ -333,6 +336,9 @@ public class ImsRcsManager {
c.setExecutor(executor);
try {
imsRcsController.registerRcsAvailabilityCallback(mSubId, c.getBinder());
+
+ } catch (ServiceSpecificException e) {
+ throw new ImsException(e.toString(), e.errorCode);
} catch (RemoteException e) {
Log.e(TAG, "Error calling IImsRcsController#registerRcsAvailabilityCallback", e);
throw new ImsException("Remote IMS Service is not available",
diff --git a/telephony/java/android/telephony/ims/RcsUceAdapter.java b/telephony/java/android/telephony/ims/RcsUceAdapter.java
index 0aeaecc2af5e..ada069666547 100644
--- a/telephony/java/android/telephony/ims/RcsUceAdapter.java
+++ b/telephony/java/android/telephony/ims/RcsUceAdapter.java
@@ -27,6 +27,7 @@ import android.net.Uri;
import android.os.Binder;
import android.os.IBinder;
import android.os.RemoteException;
+import android.os.ServiceSpecificException;
import android.telephony.TelephonyFrameworkInitializer;
import android.telephony.ims.aidl.IImsRcsController;
import android.telephony.ims.aidl.IRcsUceControllerCallback;
@@ -463,6 +464,8 @@ public class RcsUceAdapter {
try {
imsRcsController.requestCapabilities(mSubId, mContext.getOpPackageName(),
mContext.getAttributionTag(), contactNumbers, internalCallback);
+ } catch (ServiceSpecificException e) {
+ throw new ImsException(e.toString(), e.errorCode);
} catch (RemoteException e) {
Log.e(TAG, "Error calling IImsRcsController#requestCapabilities", e);
throw new ImsException("Remote IMS Service is not available",
@@ -545,6 +548,8 @@ public class RcsUceAdapter {
try {
imsRcsController.requestNetworkAvailability(mSubId, mContext.getOpPackageName(),
mContext.getAttributionTag(), contactNumber, internalCallback);
+ } catch (ServiceSpecificException e) {
+ throw new ImsException(e.toString(), e.errorCode);
} catch (RemoteException e) {
Log.e(TAG, "Error calling IImsRcsController#requestNetworkAvailability", e);
throw new ImsException("Remote IMS Service is not available",
@@ -574,7 +579,7 @@ public class RcsUceAdapter {
try {
return imsRcsController.getUcePublishState(mSubId);
- } catch (android.os.ServiceSpecificException e) {
+ } catch (ServiceSpecificException e) {
throw new ImsException(e.getMessage(), e.errorCode);
} catch (RemoteException e) {
Log.e(TAG, "Error calling IImsRcsController#getUcePublishState", e);
@@ -621,7 +626,7 @@ public class RcsUceAdapter {
c.setExecutor(executor);
try {
imsRcsController.registerUcePublishStateCallback(mSubId, c.getBinder());
- } catch (android.os.ServiceSpecificException e) {
+ } catch (ServiceSpecificException e) {
throw new ImsException(e.getMessage(), e.errorCode);
} catch (RemoteException e) {
Log.e(TAG, "Error calling IImsRcsController#registerUcePublishStateCallback", e);