Introduce Session logging to CallAudioManager
Introduces session logging into Telecom's CallAudioManager and
incoming call entry points.
Change-Id: I7419fd5372a363ac21dbec8d4aeb29b05591300d
diff --git a/src/com/android/server/telecom/CallAudioManager.java b/src/com/android/server/telecom/CallAudioManager.java
index 32a5120..4fa08fa 100644
--- a/src/com/android/server/telecom/CallAudioManager.java
+++ b/src/com/android/server/telecom/CallAudioManager.java
@@ -25,6 +25,7 @@
import android.telecom.CallAudioState;
import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.os.SomeArgs;
import com.android.internal.util.IndentingPrintWriter;
import com.android.internal.util.Preconditions;
@@ -63,44 +64,56 @@
@Override
public void handleMessage(Message msg) {
- switch (msg.what) {
- case MSG_AUDIO_MANAGER_INITIALIZE: {
- mAudioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
- break;
+ SomeArgs args = (SomeArgs) msg.obj;
+ int arg2 = 0;
+ try {
+ if (args != null) {
+ Session subsession = (Session) args.arg1;
+ Log.continueSession(subsession, "CAM.hM_" + msg.what);
+ arg2 = (int) args.arg2;
}
- case MSG_AUDIO_MANAGER_ABANDON_AUDIO_FOCUS_FOR_CALL: {
- mAudioManager.abandonAudioFocusForCall();
- break;
- }
- case MSG_AUDIO_MANAGER_REQUEST_AUDIO_FOCUS_FOR_CALL: {
- int stream = msg.arg1;
- mAudioManager.requestAudioFocusForCall(
- stream,
- AudioManager.AUDIOFOCUS_GAIN_TRANSIENT);
- break;
- }
- case MSG_AUDIO_MANAGER_SET_MODE: {
- int newMode = msg.arg1;
- int oldMode = mAudioManager.getMode();
- Log.v(this, "Request to change audio mode from %s to %s", modeToString(oldMode),
- modeToString(newMode));
-
- if (oldMode != newMode) {
- if (oldMode == AudioManager.MODE_IN_CALL &&
- newMode == AudioManager.MODE_RINGTONE) {
- Log.i(this, "Transition from IN_CALL -> RINGTONE."
- + " Resetting to NORMAL first.");
- mAudioManager.setMode(AudioManager.MODE_NORMAL);
- }
- mAudioManager.setMode(newMode);
- synchronized (mLock) {
- mMostRecentlyUsedMode = newMode;
- }
+ switch (msg.what) {
+ case MSG_AUDIO_MANAGER_INITIALIZE: {
+ mAudioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
+ break;
}
- break;
+ case MSG_AUDIO_MANAGER_ABANDON_AUDIO_FOCUS_FOR_CALL: {
+ mAudioManager.abandonAudioFocusForCall();
+ break;
+ }
+ case MSG_AUDIO_MANAGER_REQUEST_AUDIO_FOCUS_FOR_CALL: {
+ int stream = arg2;
+ mAudioManager.requestAudioFocusForCall(
+ stream,
+ AudioManager.AUDIOFOCUS_GAIN_TRANSIENT);
+ break;
+ }
+ case MSG_AUDIO_MANAGER_SET_MODE: {
+ int newMode = arg2;
+ int oldMode = mAudioManager.getMode();
+ Log.v(this, "Request to change audio mode from %s to %s", modeToString(oldMode),
+ modeToString(newMode));
+
+ if (oldMode != newMode) {
+ if (oldMode == AudioManager.MODE_IN_CALL &&
+ newMode == AudioManager.MODE_RINGTONE) {
+ Log.i(this, "Transition from IN_CALL -> RINGTONE."
+ + " Resetting to NORMAL first.");
+ mAudioManager.setMode(AudioManager.MODE_NORMAL);
+ }
+ mAudioManager.setMode(newMode);
+ synchronized (mLock) {
+ mMostRecentlyUsedMode = newMode;
+ }
+ }
+ break;
+ }
+ default:
+ break;
}
- default:
- break;
+ } finally {
+ Log.endSession();
+ args.recycle();
}
}
};
@@ -127,13 +140,21 @@
CallAudioRouteStateMachine callAudioRouteStateMachine) {
mContext = context;
mLock = lock;
- mAudioManagerHandler.obtainMessage(MSG_AUDIO_MANAGER_INITIALIZE, 0, 0).sendToTarget();
+ mAudioManagerHandler.obtainMessage(MSG_AUDIO_MANAGER_INITIALIZE,
+ setArgs(0)).sendToTarget();
mCallsManager = callsManager;
mAudioFocusStreamType = STREAM_NONE;
mCallAudioRouteStateMachine = callAudioRouteStateMachine;
}
+ private SomeArgs setArgs(int arg) {
+ SomeArgs args = SomeArgs.obtain();
+ args.arg1 = Log.createSubsession();
+ args.arg2 = arg;
+ return args;
+ }
+
@VisibleForTesting
public CallAudioState getCallAudioState() {
return mCallAudioRouteStateMachine.getCurrentCallAudioState();
@@ -147,7 +168,8 @@
if (hasFocus() && getForegroundCall() == call) {
if (!call.isIncoming()) {
// Unmute new outgoing call.
- mCallAudioRouteStateMachine.sendMessage(CallAudioRouteStateMachine.MUTE_OFF);
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
+ CallAudioRouteStateMachine.MUTE_OFF);
}
}
}
@@ -157,7 +179,8 @@
Log.v(this, "onCallRemoved");
if (mCallsManager.getCalls().isEmpty()) {
Log.v(this, "all calls removed, resetting system audio to default state");
- mCallAudioRouteStateMachine.sendMessage(CallAudioRouteStateMachine.REINITIALIZE);
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
+ CallAudioRouteStateMachine.REINITIALIZE);
}
// If we didn't already have focus, there's nothing to do.
@@ -177,8 +200,8 @@
Log.v(this, "onIncomingCallAnswered");
if (mCallsManager.getCalls().size() == 1) {
- mCallAudioRouteStateMachine.sendMessage(CallAudioRouteStateMachine.SWITCH_FOCUS,
- CallAudioRouteStateMachine.HAS_FOCUS);
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
+ CallAudioRouteStateMachine.SWITCH_FOCUS, CallAudioRouteStateMachine.HAS_FOCUS);
}
if (call.can(android.telecom.Call.Details.CAPABILITY_SPEED_UP_MT_AUDIO)) {
@@ -201,7 +224,8 @@
}
void toggleMute() {
- mCallAudioRouteStateMachine.sendMessage(CallAudioRouteStateMachine.TOGGLE_MUTE);
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
+ CallAudioRouteStateMachine.TOGGLE_MUTE);
}
void mute(boolean shouldMute) {
@@ -217,7 +241,7 @@
Log.v(this, "ignoring mute for emergency call");
}
- mCallAudioRouteStateMachine.sendMessage(shouldMute
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(shouldMute
? CallAudioRouteStateMachine.MUTE_ON : CallAudioRouteStateMachine.MUTE_OFF);
}
@@ -230,23 +254,23 @@
Log.v(this, "setAudioRoute, route: %s", CallAudioState.audioRouteToString(route));
switch (route) {
case CallAudioState.ROUTE_BLUETOOTH:
- mCallAudioRouteStateMachine.sendMessage(
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
CallAudioRouteStateMachine.SWITCH_BLUETOOTH);
return;
case CallAudioState.ROUTE_SPEAKER:
- mCallAudioRouteStateMachine.sendMessage(
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
CallAudioRouteStateMachine.SWITCH_SPEAKER);
return;
case CallAudioState.ROUTE_WIRED_HEADSET:
- mCallAudioRouteStateMachine.sendMessage(
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
CallAudioRouteStateMachine.SWITCH_HEADSET);
return;
case CallAudioState.ROUTE_EARPIECE:
- mCallAudioRouteStateMachine.sendMessage(
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
CallAudioRouteStateMachine.SWITCH_EARPIECE);
return;
case CallAudioState.ROUTE_WIRED_OR_EARPIECE:
- mCallAudioRouteStateMachine.sendMessage(
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
CallAudioRouteStateMachine.SWITCH_WIRED_OR_EARPIECE);
return;
default:
@@ -355,15 +379,12 @@
if (mAudioFocusStreamType != stream) {
Log.i(this, "requestAudioFocusAndSetMode : requesting stream: %s -> %s",
streamTypeToString(mAudioFocusStreamType), streamTypeToString(stream));
- mAudioManagerHandler.obtainMessage(
- MSG_AUDIO_MANAGER_REQUEST_AUDIO_FOCUS_FOR_CALL,
- stream,
- 0)
- .sendToTarget();
+ mAudioManagerHandler.obtainMessage(MSG_AUDIO_MANAGER_REQUEST_AUDIO_FOCUS_FOR_CALL,
+ setArgs(stream)).sendToTarget();
}
mAudioFocusStreamType = stream;
- mCallAudioRouteStateMachine.sendMessage(CallAudioRouteStateMachine.SWITCH_FOCUS,
- CallAudioRouteStateMachine.HAS_FOCUS);
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
+ CallAudioRouteStateMachine.SWITCH_FOCUS, CallAudioRouteStateMachine.HAS_FOCUS);
setMode(mode);
}
@@ -372,13 +393,13 @@
if (hasFocus()) {
setMode(AudioManager.MODE_NORMAL);
Log.v(this, "abandoning audio focus");
- mAudioManagerHandler.obtainMessage(MSG_AUDIO_MANAGER_ABANDON_AUDIO_FOCUS_FOR_CALL, 0, 0)
- .sendToTarget();
+ mAudioManagerHandler.obtainMessage(MSG_AUDIO_MANAGER_ABANDON_AUDIO_FOCUS_FOR_CALL,
+ setArgs(0)).sendToTarget();
mAudioFocusStreamType = STREAM_NONE;
mCallToSpeedUpMTAudio = null;
}
- mCallAudioRouteStateMachine.sendMessage(CallAudioRouteStateMachine.SWITCH_FOCUS,
- CallAudioRouteStateMachine.NO_FOCUS);
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
+ CallAudioRouteStateMachine.SWITCH_FOCUS, CallAudioRouteStateMachine.NO_FOCUS);
}
/**
@@ -388,7 +409,8 @@
*/
private void setMode(int newMode) {
Preconditions.checkState(hasFocus());
- mAudioManagerHandler.obtainMessage(MSG_AUDIO_MANAGER_SET_MODE, newMode, 0).sendToTarget();
+ mAudioManagerHandler.obtainMessage(MSG_AUDIO_MANAGER_SET_MODE,
+ setArgs(newMode)).sendToTarget();
}
private void updateAudioForForegroundCall() {
diff --git a/src/com/android/server/telecom/CallAudioRoutePeripheralAdapter.java b/src/com/android/server/telecom/CallAudioRoutePeripheralAdapter.java
index 26a4cb8..45e5afa 100644
--- a/src/com/android/server/telecom/CallAudioRoutePeripheralAdapter.java
+++ b/src/com/android/server/telecom/CallAudioRoutePeripheralAdapter.java
@@ -41,9 +41,10 @@
@Override
public void onBluetoothStateChange(BluetoothManager bluetoothManager) {
if (bluetoothManager.isBluetoothAvailable()) {
- mCallAudioRouteStateMachine.sendMessage(CallAudioRouteStateMachine.CONNECT_BLUETOOTH);
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
+ CallAudioRouteStateMachine.CONNECT_BLUETOOTH);
} else {
- mCallAudioRouteStateMachine.sendMessage(
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
CallAudioRouteStateMachine.DISCONNECT_BLUETOOTH);
}
}
@@ -59,17 +60,17 @@
@Override
public void onWiredHeadsetPluggedInChanged(boolean oldIsPluggedIn, boolean newIsPluggedIn) {
if (!oldIsPluggedIn && newIsPluggedIn) {
- mCallAudioRouteStateMachine.sendMessage(
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
CallAudioRouteStateMachine.CONNECT_WIRED_HEADSET);
} else if (oldIsPluggedIn && !newIsPluggedIn){
- mCallAudioRouteStateMachine.sendMessage(
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
CallAudioRouteStateMachine.DISCONNECT_WIRED_HEADSET);
}
}
@Override
public void onDockChanged(boolean isDocked) {
- mCallAudioRouteStateMachine.sendMessage(
+ mCallAudioRouteStateMachine.sendMessageWithSessionInfo(
isDocked ? CallAudioRouteStateMachine.CONNECT_DOCK
: CallAudioRouteStateMachine.DISCONNECT_DOCK
);
diff --git a/src/com/android/server/telecom/CallAudioRouteStateMachine.java b/src/com/android/server/telecom/CallAudioRouteStateMachine.java
index e6ef8f4..f74e499 100644
--- a/src/com/android/server/telecom/CallAudioRouteStateMachine.java
+++ b/src/com/android/server/telecom/CallAudioRouteStateMachine.java
@@ -122,6 +122,18 @@
@Override
public boolean processMessage(Message msg) {
+ if (msg.obj != null && msg.obj instanceof Session) {
+ Log.continueSession((Session) msg.obj, "CARSM.pM_" + msg.what);
+ }
+ boolean isHandled = processMessageInternal(msg);
+ if (isHandled) {
+ // If !isHandled, unhandledMessage will be called so Log.endSession there.
+ Log.endSession();
+ }
+ return isHandled;
+ }
+
+ public boolean processMessageInternal(Message msg) {
Log.d(this, "Message received: %s", msg);
switch (msg.what) {
case CONNECT_WIRED_HEADSET:
@@ -216,8 +228,8 @@
}
@Override
- public boolean processMessage(Message msg) {
- if (super.processMessage(msg) == HANDLED) {
+ public boolean processMessageInternal(Message msg) {
+ if (super.processMessageInternal(msg) == HANDLED) {
return HANDLED;
}
switch (msg.what) {
@@ -275,8 +287,8 @@
}
@Override
- public boolean processMessage(Message msg) {
- if (super.processMessage(msg) == HANDLED) {
+ public boolean processMessageInternal(Message msg) {
+ if (super.processMessageInternal(msg) == HANDLED) {
return HANDLED;
}
switch (msg.what) {
@@ -313,8 +325,8 @@
abstract class EarpieceRoute extends AudioState {
@Override
- public boolean processMessage(Message msg) {
- if (super.processMessage(msg) == HANDLED) {
+ public boolean processMessageInternal(Message msg) {
+ if (super.processMessageInternal(msg) == HANDLED) {
return HANDLED;
}
switch (msg.what) {
@@ -376,8 +388,8 @@
}
@Override
- public boolean processMessage(Message msg) {
- if (super.processMessage(msg) == HANDLED) {
+ public boolean processMessageInternal(Message msg) {
+ if (super.processMessageInternal(msg) == HANDLED) {
return HANDLED;
}
switch (msg.what) {
@@ -435,8 +447,8 @@
}
@Override
- public boolean processMessage(Message msg) {
- if (super.processMessage(msg) == HANDLED) {
+ public boolean processMessageInternal(Message msg) {
+ if (super.processMessageInternal(msg) == HANDLED) {
return HANDLED;
}
switch (msg.what) {
@@ -473,8 +485,8 @@
abstract class HeadsetRoute extends AudioState {
@Override
- public boolean processMessage(Message msg) {
- if (super.processMessage(msg) == HANDLED) {
+ public boolean processMessageInternal(Message msg) {
+ if (super.processMessageInternal(msg) == HANDLED) {
return HANDLED;
}
switch (msg.what) {
@@ -540,8 +552,8 @@
}
@Override
- public boolean processMessage(Message msg) {
- if (super.processMessage(msg) == HANDLED) {
+ public boolean processMessageInternal(Message msg) {
+ if (super.processMessageInternal(msg) == HANDLED) {
return HANDLED;
}
switch (msg.what) {
@@ -599,8 +611,8 @@
}
@Override
- public boolean processMessage(Message msg) {
- if (super.processMessage(msg) == HANDLED) {
+ public boolean processMessageInternal(Message msg) {
+ if (super.processMessageInternal(msg) == HANDLED) {
return HANDLED;
}
switch (msg.what) {
@@ -637,8 +649,8 @@
abstract class BluetoothRoute extends AudioState {
@Override
- public boolean processMessage(Message msg) {
- if (super.processMessage(msg) == HANDLED) {
+ public boolean processMessageInternal(Message msg) {
+ if (super.processMessageInternal(msg) == HANDLED) {
return HANDLED;
}
switch (msg.what) {
@@ -701,8 +713,8 @@
}
@Override
- public boolean processMessage(Message msg) {
- if (super.processMessage(msg) == HANDLED) {
+ public boolean processMessageInternal(Message msg) {
+ if (super.processMessageInternal(msg) == HANDLED) {
return HANDLED;
}
switch(msg.what) {
@@ -766,8 +778,8 @@
}
@Override
- public boolean processMessage(Message msg) {
- if (super.processMessage(msg) == HANDLED) {
+ public boolean processMessageInternal(Message msg) {
+ if (super.processMessageInternal(msg) == HANDLED) {
return HANDLED;
}
switch(msg.what) {
@@ -808,8 +820,8 @@
abstract class SpeakerRoute extends AudioState {
@Override
- public boolean processMessage(Message msg) {
- if (super.processMessage(msg) == HANDLED) {
+ public boolean processMessageInternal(Message msg) {
+ if (super.processMessageInternal(msg) == HANDLED) {
return HANDLED;
}
switch (msg.what) {
@@ -943,6 +955,14 @@
return mCurrentCallAudioState;
}
+ public void sendMessageWithSessionInfo(int message, int arg) {
+ sendMessage(message, arg, 0, Log.createSubsession());
+ }
+
+ public void sendMessageWithSessionInfo(int message) {
+ sendMessage(message, 0, 0, Log.createSubsession());
+ }
+
/**
* This is for state-independent changes in audio route (i.e. muting)
* @param msg that couldn't be handled.
@@ -978,6 +998,8 @@
Log.e(this, new IllegalStateException(),
"Unexpected message code");
}
+
+ Log.endSession();
}
private void setSpeakerphoneOn(boolean on) {
@@ -1094,7 +1116,12 @@
// SWITCH_HEADSET at end of queue.
// 6. State machine handler processes SWITCH_SPEAKER.
// 7. State machine handler processes SWITCH_HEADSET.
- sendMessageAtFrontOfQueue(messageCode);
+ Session subsession = Log.createSubsession();
+ if(subsession != null) {
+ sendMessageAtFrontOfQueue(messageCode, subsession);
+ } else {
+ sendMessageAtFrontOfQueue(messageCode);
+ }
}
private CallAudioState getInitialAudioState() {
diff --git a/src/com/android/server/telecom/TelecomServiceImpl.java b/src/com/android/server/telecom/TelecomServiceImpl.java
index 91056d2..cd30e52 100644
--- a/src/com/android/server/telecom/TelecomServiceImpl.java
+++ b/src/com/android/server/telecom/TelecomServiceImpl.java
@@ -863,11 +863,13 @@
final UserHandle userHandle = Binder.getCallingUserHandle();
long token = Binder.clearCallingIdentity();
try {
+ Log.startSession("TSI.pC");
final Intent intent = new Intent(Intent.ACTION_CALL, handle);
intent.putExtras(extras);
new UserCallIntentProcessor(mContext, userHandle).processIntent(intent,
callingPackage, hasCallAppOp && hasCallPermission);
} finally {
+ Log.endSession();
Binder.restoreCallingIdentity(token);
}
}
diff --git a/src/com/android/server/telecom/components/PrimaryCallReceiver.java b/src/com/android/server/telecom/components/PrimaryCallReceiver.java
index 5198862..a05f04e 100644
--- a/src/com/android/server/telecom/components/PrimaryCallReceiver.java
+++ b/src/com/android/server/telecom/components/PrimaryCallReceiver.java
@@ -1,5 +1,6 @@
package com.android.server.telecom.components;
+import com.android.server.telecom.Log;
import com.android.server.telecom.TelecomSystem;
import android.content.BroadcastReceiver;
@@ -16,9 +17,11 @@
@Override
public void onReceive(Context context, Intent intent) {
+ Log.startSession("PCR.oR");
synchronized (getTelecomSystem().getLock()) {
getTelecomSystem().getCallIntentProcessor().processIntent(intent);
}
+ Log.endSession();
}
@Override
diff --git a/src/com/android/server/telecom/components/UserCallActivity.java b/src/com/android/server/telecom/components/UserCallActivity.java
index d88e09e..39cb4f9 100644
--- a/src/com/android/server/telecom/components/UserCallActivity.java
+++ b/src/com/android/server/telecom/components/UserCallActivity.java
@@ -52,18 +52,23 @@
@Override
protected void onCreate(Bundle bundle) {
super.onCreate(bundle);
- // TODO: Figure out if there is something to restore from bundle.
- // See OutgoingCallBroadcaster in services/Telephony for more.
- Intent intent = getIntent();
- verifyCallAction(intent);
- final UserManager userManager = (UserManager) getSystemService(Context.USER_SERVICE);
- final UserHandle userHandle = new UserHandle(userManager.getUserHandle());
- // Once control flow has passed to this activity, it is no longer guaranteed that we can
- // accurately determine whether the calling package has the CALL_PHONE runtime permission.
- // At this point in time we trust that the ActivityManager has already performed this
- // validation before starting this activity.
- new UserCallIntentProcessor(this, userHandle).processIntent(getIntent(),
- getCallingPackage(), true /* hasCallAppOp*/);
+ Log.startSession("UCA.oC");
+ try {
+ // TODO: Figure out if there is something to restore from bundle.
+ // See OutgoingCallBroadcaster in services/Telephony for more.
+ Intent intent = getIntent();
+ verifyCallAction(intent);
+ final UserManager userManager = (UserManager) getSystemService(Context.USER_SERVICE);
+ final UserHandle userHandle = new UserHandle(userManager.getUserHandle());
+ // Once control flow has passed to this activity, it is no longer guaranteed that we can
+ // accurately determine whether the calling package has the CALL_PHONE runtime permission.
+ // At this point in time we trust that the ActivityManager has already performed this
+ // validation before starting this activity.
+ new UserCallIntentProcessor(this, userHandle).processIntent(getIntent(),
+ getCallingPackage(), true /* hasCallAppOp*/);
+ } finally {
+ Log.endSession();
+ }
finish();
}
diff --git a/tests/src/com/android/server/telecom/tests/CallAudioRouteStateMachineTest.java b/tests/src/com/android/server/telecom/tests/CallAudioRouteStateMachineTest.java
index 496ad7d..0f55a45 100644
--- a/tests/src/com/android/server/telecom/tests/CallAudioRouteStateMachineTest.java
+++ b/tests/src/com/android/server/telecom/tests/CallAudioRouteStateMachineTest.java
@@ -175,16 +175,16 @@
CallAudioState.ROUTE_EARPIECE | CallAudioState.ROUTE_SPEAKER);
stateMachine.initialize(initState);
- stateMachine.sendMessage(CallAudioRouteStateMachine.SWITCH_FOCUS,
+ stateMachine.sendMessageWithSessionInfo(CallAudioRouteStateMachine.SWITCH_FOCUS,
CallAudioRouteStateMachine.HAS_FOCUS);
- stateMachine.sendMessage(CallAudioRouteStateMachine.CONNECT_WIRED_HEADSET);
+ stateMachine.sendMessageWithSessionInfo(CallAudioRouteStateMachine.CONNECT_WIRED_HEADSET);
CallAudioState expectedMiddleState = new CallAudioState(false,
CallAudioState.ROUTE_WIRED_HEADSET,
CallAudioState.ROUTE_WIRED_HEADSET | CallAudioState.ROUTE_SPEAKER);
verifyNewSystemCallAudioState(initState, expectedMiddleState);
resetMocks();
- stateMachine.sendMessage(CallAudioRouteStateMachine.DISCONNECT_WIRED_HEADSET);
+ stateMachine.sendMessageWithSessionInfo(CallAudioRouteStateMachine.DISCONNECT_WIRED_HEADSET);
verifyNewSystemCallAudioState(expectedMiddleState, initState);
}
@@ -542,9 +542,9 @@
params.initialRoute, (params.availableRoutes | CallAudioState.ROUTE_SPEAKER));
stateMachine.initialize(initState);
// Make the state machine have focus so that we actually do something
- stateMachine.sendMessage(CallAudioRouteStateMachine.SWITCH_FOCUS,
+ stateMachine.sendMessageWithSessionInfo(CallAudioRouteStateMachine.SWITCH_FOCUS,
CallAudioRouteStateMachine.HAS_FOCUS);
- stateMachine.sendMessage(params.action);
+ stateMachine.sendMessageWithSessionInfo(params.action);
// Verify interactions with the speakerphone and bluetooth systems
switch(params.bluetoothInteraction) {
@@ -601,7 +601,7 @@
params.initialRoute, (params.availableRoutes | CallAudioState.ROUTE_SPEAKER));
stateMachine.initialize(initState);
// Omit the focus-getting statement
- stateMachine.sendMessage(params.action);
+ stateMachine.sendMessageWithSessionInfo(params.action);
try {
Thread.sleep(100L);
} catch (InterruptedException e) {