From 8c994e570817dfdfbc249b920bcf9eae5307330c Mon Sep 17 00:00:00 2001 From: Shriram Ganesh Date: Thu, 11 Dec 2014 17:53:38 -0800 Subject: [PATCH] Added support for mid-call enabled SRVCC conference call When TelephonyConnection is created for an unknown connection, the recalculation of conference participants have to be retriggered. This is because, unless that TelephonyConnection is added to ConnectionService, it cannot be added as part of a conference call in CallsManager. Change-Id: Ic9359104f02eddff655d84fd25f5c28c9158e5f4 --- .../java/android/telecom/ConnectionService.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/telecomm/java/android/telecom/ConnectionService.java b/telecomm/java/android/telecom/ConnectionService.java index 1e8ae8802d231..4262bbb7d7204 100644 --- a/telecomm/java/android/telecom/ConnectionService.java +++ b/telecomm/java/android/telecom/ConnectionService.java @@ -655,6 +655,9 @@ public abstract class ConnectionService extends Service { connection.getDisconnectCause(), createIdList(connection.getConferenceables()), connection.getExtras())); + if (isUnknown) { + triggerConferenceRecalculate(); + } } private void abort(String callId) { @@ -1013,6 +1016,16 @@ public abstract class ConnectionService extends Service { return null; } + /** + * Trigger recalculate functinality for conference calls. This is used when a Telephony + * Connection is part of a conference controller but is not yet added to Connection + * Service and hence cannot be added to the conference call. + * + * @hide + */ + public void triggerConferenceRecalculate() { + } + /** * Create a {@code Connection} given an outgoing request. This is used to initiate new * outgoing calls.