Loading src/com/android/server/telecom/Call.java +4 −0 Original line number Diff line number Diff line Loading @@ -1407,6 +1407,10 @@ public class Call implements CreateConnectionResponse, EventManager.Loggable, return mConnectTimeMillis; } public void setConnectTimeMillis(long connectTimeMillis) { mConnectTimeMillis = connectTimeMillis; } int getConnectionCapabilities() { return mConnectionCapabilities; } Loading src/com/android/server/telecom/CallsManager.java +10 −0 Original line number Diff line number Diff line Loading @@ -130,6 +130,7 @@ public class CallsManager extends Call.ListenerBase void onHoldToneRequested(Call call); void onExternalCallChanged(Call call, boolean isExternalCall); void onDisconnectedTonePlaying(boolean isTonePlaying); void onConnectionTimeChanged(Call call); } /** Interface used to define the action which is executed delay under some condition. */ Loading Loading @@ -3954,4 +3955,13 @@ public class CallsManager extends Call.ListenerBase } } } public void resetConnectionTime(Call call) { call.setConnectTimeMillis(System.currentTimeMillis()); if (mCalls.contains(call)) { for (CallsManagerListener listener : mListeners) { listener.onConnectionTimeChanged(call); } } } } src/com/android/server/telecom/CallsManagerListenerBase.java +4 −0 Original line number Diff line number Diff line Loading @@ -92,4 +92,8 @@ public class CallsManagerListenerBase implements CallsManager.CallsManagerListen @Override public void onDisconnectedTonePlaying(boolean isTonePlaying) { } @Override public void onConnectionTimeChanged(Call call) { } } src/com/android/server/telecom/ConnectionServiceWrapper.java +20 −0 Original line number Diff line number Diff line Loading @@ -144,6 +144,26 @@ public class ConnectionServiceWrapper extends ServiceBinder implements } } @Override public void resetConnectionTime(String callId, Session.Info sessionInfo) { Log.startSession(sessionInfo, "CSW.rCCT"); long token = Binder.clearCallingIdentity(); try { synchronized (mLock) { logIncoming("resetConnectionTime %s", callId); Call call = mCallIdMapper.getCall(callId); if (call != null) { mCallsManager.resetConnectionTime(call); } else { // Log.w(this, "resetConnectionTime, unknown call id: %s", msg.obj); } } } finally { Binder.restoreCallingIdentity(token); Log.endSession(); } } @Override public void setVideoProvider(String callId, IVideoProvider videoProvider, Session.Info sessionInfo) { Loading src/com/android/server/telecom/InCallController.java +6 −0 Original line number Diff line number Diff line Loading @@ -960,6 +960,12 @@ public class InCallController extends CallsManagerListenerBase { updateCall(call); } @Override public void onConnectionTimeChanged(Call call) { Log.d(this, "onConnectionTimeChanged %s", call); updateCall(call); } void bringToForeground(boolean showDialpad) { if (!mInCallServices.isEmpty()) { for (IInCallService inCallService : mInCallServices.values()) { Loading Loading
src/com/android/server/telecom/Call.java +4 −0 Original line number Diff line number Diff line Loading @@ -1407,6 +1407,10 @@ public class Call implements CreateConnectionResponse, EventManager.Loggable, return mConnectTimeMillis; } public void setConnectTimeMillis(long connectTimeMillis) { mConnectTimeMillis = connectTimeMillis; } int getConnectionCapabilities() { return mConnectionCapabilities; } Loading
src/com/android/server/telecom/CallsManager.java +10 −0 Original line number Diff line number Diff line Loading @@ -130,6 +130,7 @@ public class CallsManager extends Call.ListenerBase void onHoldToneRequested(Call call); void onExternalCallChanged(Call call, boolean isExternalCall); void onDisconnectedTonePlaying(boolean isTonePlaying); void onConnectionTimeChanged(Call call); } /** Interface used to define the action which is executed delay under some condition. */ Loading Loading @@ -3954,4 +3955,13 @@ public class CallsManager extends Call.ListenerBase } } } public void resetConnectionTime(Call call) { call.setConnectTimeMillis(System.currentTimeMillis()); if (mCalls.contains(call)) { for (CallsManagerListener listener : mListeners) { listener.onConnectionTimeChanged(call); } } } }
src/com/android/server/telecom/CallsManagerListenerBase.java +4 −0 Original line number Diff line number Diff line Loading @@ -92,4 +92,8 @@ public class CallsManagerListenerBase implements CallsManager.CallsManagerListen @Override public void onDisconnectedTonePlaying(boolean isTonePlaying) { } @Override public void onConnectionTimeChanged(Call call) { } }
src/com/android/server/telecom/ConnectionServiceWrapper.java +20 −0 Original line number Diff line number Diff line Loading @@ -144,6 +144,26 @@ public class ConnectionServiceWrapper extends ServiceBinder implements } } @Override public void resetConnectionTime(String callId, Session.Info sessionInfo) { Log.startSession(sessionInfo, "CSW.rCCT"); long token = Binder.clearCallingIdentity(); try { synchronized (mLock) { logIncoming("resetConnectionTime %s", callId); Call call = mCallIdMapper.getCall(callId); if (call != null) { mCallsManager.resetConnectionTime(call); } else { // Log.w(this, "resetConnectionTime, unknown call id: %s", msg.obj); } } } finally { Binder.restoreCallingIdentity(token); Log.endSession(); } } @Override public void setVideoProvider(String callId, IVideoProvider videoProvider, Session.Info sessionInfo) { Loading
src/com/android/server/telecom/InCallController.java +6 −0 Original line number Diff line number Diff line Loading @@ -960,6 +960,12 @@ public class InCallController extends CallsManagerListenerBase { updateCall(call); } @Override public void onConnectionTimeChanged(Call call) { Log.d(this, "onConnectionTimeChanged %s", call); updateCall(call); } void bringToForeground(boolean showDialpad) { if (!mInCallServices.isEmpty()) { for (IInCallService inCallService : mInCallServices.values()) { Loading