Make Before Break: Create BroadcastQueue

To preserve legacy behavior expected by existing apps,
during Make Before Break, the secondary ClientModeManager
should not send out any public broadcasts.
BroadcastQueue is used to queue such broadcasts. If and when
the ClientModeManager becomes primary, the queued broadcasts
would be sent out. At that time, the disconnect broadcasts
for the previous primary ClientModeManager will also be
sent out (even if it didn't disconnect yet), to give apps
the illusion that only a single ClientModeManager is active.

Bug: 159944009
Test: atest FrameworksWifiTests
Change-Id: Ib4df74c386196c2ab99f91cdcbd46abb5d097252
5 files changed
tree: 917025bcce10a372c7990d412970c6a367f1fb9d
  1. apex/
  2. service/
  3. metrics_pdd_hook.py
  4. PREUPLOAD.cfg