summaryrefslogtreecommitdiff
path: root/telecomm/java/android/telecom/RemoteConnectionService.java
diff options
context:
space:
mode:
authorBrad Ebinger <breadley@google.com>2016-10-28 12:29:55 -0700
committerBrad Ebinger <breadley@google.com>2016-11-02 09:20:22 -0700
commit4d75bee99b259503d376a7c1604f426001bba75c (patch)
tree6ac758436842ddd8bf9135d520253ee675dc8ebd /telecomm/java/android/telecom/RemoteConnectionService.java
parentfdfc79a8788aefe7a26d54a85c14398602811165 (diff)
Modify ConnectionServiceAdapter to include Session
Modifies the ConnectionServiceAdapter to include Session Information in the AIDL interface so that external Sessions can be started in Telecom from Telephony. Test: Manual testing and Unit Tests pass Bug: 26571395 Change-Id: I31bbfe433dd062a50bd05083e1a639dd4cd03403
Diffstat (limited to 'telecomm/java/android/telecom/RemoteConnectionService.java')
-rw-r--r--telecomm/java/android/telecom/RemoteConnectionService.java71
1 files changed, 41 insertions, 30 deletions
diff --git a/telecomm/java/android/telecom/RemoteConnectionService.java b/telecomm/java/android/telecom/RemoteConnectionService.java
index 26c2e22a2073..7321a274021c 100644
--- a/telecomm/java/android/telecom/RemoteConnectionService.java
+++ b/telecomm/java/android/telecom/RemoteConnectionService.java
@@ -21,6 +21,7 @@ import android.os.Bundle;
import android.os.IBinder;
import android.os.IBinder.DeathRecipient;
import android.os.RemoteException;
+import android.telecom.Logging.Session;
import com.android.internal.telecom.IConnectionService;
import com.android.internal.telecom.IConnectionServiceAdapter;
@@ -54,7 +55,8 @@ final class RemoteConnectionService {
public void handleCreateConnectionComplete(
String id,
ConnectionRequest request,
- ParcelableConnection parcel) {
+ ParcelableConnection parcel,
+ Session.Info info) {
RemoteConnection connection =
findConnectionForAction(id, "handleCreateConnectionSuccessful");
if (connection != NULL_CONNECTION && mPendingConnections.contains(connection)) {
@@ -95,7 +97,7 @@ final class RemoteConnectionService {
}
@Override
- public void setActive(String callId) {
+ public void setActive(String callId, Session.Info sessionInfo) {
if (mConnectionById.containsKey(callId)) {
findConnectionForAction(callId, "setActive")
.setState(Connection.STATE_ACTIVE);
@@ -106,25 +108,26 @@ final class RemoteConnectionService {
}
@Override
- public void setRinging(String callId) {
+ public void setRinging(String callId, Session.Info sessionInfo) {
findConnectionForAction(callId, "setRinging")
.setState(Connection.STATE_RINGING);
}
@Override
- public void setDialing(String callId) {
+ public void setDialing(String callId, Session.Info sessionInfo) {
findConnectionForAction(callId, "setDialing")
.setState(Connection.STATE_DIALING);
}
@Override
- public void setPulling(String callId) {
+ public void setPulling(String callId, Session.Info sessionInfo) {
findConnectionForAction(callId, "setPulling")
.setState(Connection.STATE_PULLING_CALL);
}
@Override
- public void setDisconnected(String callId, DisconnectCause disconnectCause) {
+ public void setDisconnected(String callId, DisconnectCause disconnectCause,
+ Session.Info sessionInfo) {
if (mConnectionById.containsKey(callId)) {
findConnectionForAction(callId, "setDisconnected")
.setDisconnected(disconnectCause);
@@ -135,7 +138,7 @@ final class RemoteConnectionService {
}
@Override
- public void setOnHold(String callId) {
+ public void setOnHold(String callId, Session.Info sessionInfo) {
if (mConnectionById.containsKey(callId)) {
findConnectionForAction(callId, "setOnHold")
.setState(Connection.STATE_HOLDING);
@@ -146,13 +149,14 @@ final class RemoteConnectionService {
}
@Override
- public void setRingbackRequested(String callId, boolean ringing) {
+ public void setRingbackRequested(String callId, boolean ringing, Session.Info sessionInfo) {
findConnectionForAction(callId, "setRingbackRequested")
.setRingbackRequested(ringing);
}
@Override
- public void setConnectionCapabilities(String callId, int connectionCapabilities) {
+ public void setConnectionCapabilities(String callId, int connectionCapabilities,
+ Session.Info sessionInfo) {
if (mConnectionById.containsKey(callId)) {
findConnectionForAction(callId, "setConnectionCapabilities")
.setConnectionCapabilities(connectionCapabilities);
@@ -163,7 +167,8 @@ final class RemoteConnectionService {
}
@Override
- public void setConnectionProperties(String callId, int connectionProperties) {
+ public void setConnectionProperties(String callId, int connectionProperties,
+ Session.Info sessionInfo) {
if (mConnectionById.containsKey(callId)) {
findConnectionForAction(callId, "setConnectionProperties")
.setConnectionProperties(connectionProperties);
@@ -174,7 +179,8 @@ final class RemoteConnectionService {
}
@Override
- public void setIsConferenced(String callId, String conferenceCallId) {
+ public void setIsConferenced(String callId, String conferenceCallId,
+ Session.Info sessionInfo) {
// Note: callId should not be null; conferenceCallId may be null
RemoteConnection connection =
findConnectionForAction(callId, "setIsConferenced");
@@ -195,7 +201,7 @@ final class RemoteConnectionService {
}
@Override
- public void setConferenceMergeFailed(String callId) {
+ public void setConferenceMergeFailed(String callId, Session.Info sessionInfo) {
// Nothing to do here.
// The event has already been handled and there is no state to update
// in the underlying connection or conference objects
@@ -203,8 +209,7 @@ final class RemoteConnectionService {
@Override
public void addConferenceCall(
- final String callId,
- ParcelableConference parcel) {
+ final String callId, ParcelableConference parcel, Session.Info sessionInfo) {
RemoteConference conference = new RemoteConference(callId,
mOutgoingConnectionServiceRpc);
@@ -238,7 +243,7 @@ final class RemoteConnectionService {
}
@Override
- public void removeCall(String callId) {
+ public void removeCall(String callId, Session.Info sessionInfo) {
if (mConnectionById.containsKey(callId)) {
findConnectionForAction(callId, "removeCall")
.setDestroyed();
@@ -249,24 +254,26 @@ final class RemoteConnectionService {
}
@Override
- public void onPostDialWait(String callId, String remaining) {
+ public void onPostDialWait(String callId, String remaining, Session.Info sessionInfo) {
findConnectionForAction(callId, "onPostDialWait")
.setPostDialWait(remaining);
}
@Override
- public void onPostDialChar(String callId, char nextChar) {
+ public void onPostDialChar(String callId, char nextChar, Session.Info sessionInfo) {
findConnectionForAction(callId, "onPostDialChar")
.onPostDialChar(nextChar);
}
@Override
- public void queryRemoteConnectionServices(RemoteServiceCallback callback) {
+ public void queryRemoteConnectionServices(RemoteServiceCallback callback,
+ Session.Info sessionInfo) {
// Not supported from remote connection service.
}
@Override
- public void setVideoProvider(String callId, IVideoProvider videoProvider) {
+ public void setVideoProvider(String callId, IVideoProvider videoProvider,
+ Session.Info sessionInfo) {
RemoteConnection.VideoProvider remoteVideoProvider = null;
if (videoProvider != null) {
remoteVideoProvider = new RemoteConnection.VideoProvider(videoProvider);
@@ -276,32 +283,34 @@ final class RemoteConnectionService {
}
@Override
- public void setVideoState(String callId, int videoState) {
+ public void setVideoState(String callId, int videoState, Session.Info sessionInfo) {
findConnectionForAction(callId, "setVideoState")
.setVideoState(videoState);
}
@Override
- public void setIsVoipAudioMode(String callId, boolean isVoip) {
+ public void setIsVoipAudioMode(String callId, boolean isVoip, Session.Info sessionInfo) {
findConnectionForAction(callId, "setIsVoipAudioMode")
.setIsVoipAudioMode(isVoip);
}
@Override
- public void setStatusHints(String callId, StatusHints statusHints) {
+ public void setStatusHints(String callId, StatusHints statusHints,
+ Session.Info sessionInfo) {
findConnectionForAction(callId, "setStatusHints")
.setStatusHints(statusHints);
}
@Override
- public void setAddress(String callId, Uri address, int presentation) {
+ public void setAddress(String callId, Uri address, int presentation,
+ Session.Info sessionInfo) {
findConnectionForAction(callId, "setAddress")
.setAddress(address, presentation);
}
@Override
public void setCallerDisplayName(String callId, String callerDisplayName,
- int presentation) {
+ int presentation, Session.Info sessionInfo) {
findConnectionForAction(callId, "setCallerDisplayName")
.setCallerDisplayName(callerDisplayName, presentation);
}
@@ -312,8 +321,8 @@ final class RemoteConnectionService {
}
@Override
- public final void setConferenceableConnections(
- String callId, List<String> conferenceableConnectionIds) {
+ public final void setConferenceableConnections(String callId,
+ List<String> conferenceableConnectionIds, Session.Info sessionInfo) {
List<RemoteConnection> conferenceable = new ArrayList<>();
for (String id : conferenceableConnectionIds) {
if (mConnectionById.containsKey(id)) {
@@ -331,7 +340,8 @@ final class RemoteConnectionService {
}
@Override
- public void addExistingConnection(String callId, ParcelableConnection connection) {
+ public void addExistingConnection(String callId, ParcelableConnection connection,
+ Session.Info sessionInfo) {
// TODO: add contents of this method
RemoteConnection remoteConnction = new RemoteConnection(callId,
mOutgoingConnectionServiceRpc, connection);
@@ -340,7 +350,7 @@ final class RemoteConnectionService {
}
@Override
- public void putExtras(String callId, Bundle extras) {
+ public void putExtras(String callId, Bundle extras, Session.Info sessionInfo) {
if (hasConnection(callId)) {
findConnectionForAction(callId, "putExtras").putExtras(extras);
} else {
@@ -349,7 +359,7 @@ final class RemoteConnectionService {
}
@Override
- public void removeExtras(String callId, List<String> keys) {
+ public void removeExtras(String callId, List<String> keys, Session.Info sessionInfo) {
if (hasConnection(callId)) {
findConnectionForAction(callId, "removeExtra").removeExtras(keys);
} else {
@@ -358,7 +368,8 @@ final class RemoteConnectionService {
}
@Override
- public void onConnectionEvent(String callId, String event, Bundle extras) {
+ public void onConnectionEvent(String callId, String event, Bundle extras,
+ Session.Info sessionInfo) {
if (mConnectionById.containsKey(callId)) {
findConnectionForAction(callId, "onConnectionEvent").onConnectionEvent(event,
extras);