Skip to content
Snippets Groups Projects
Commit 2744ef92 authored by Iván Budnik's avatar Iván Budnik
Browse files

Integrate requestScan() to RouterInfoMediaManager

Bug: 281072508
Test: Manual.
Change-Id: I1d8e93be02b0f5883bc34cbaf5ff28de9bca1e30
parent 67a16df7
No related branches found
No related tags found
No related merge requests found
......@@ -41,6 +41,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.concurrent.Executor;
import java.util.concurrent.Executors;
import java.util.concurrent.atomic.AtomicReference;
import java.util.function.Consumer;
import java.util.stream.Collectors;
......@@ -64,6 +65,8 @@ public final class RouterInfoMediaManager extends InfoMediaManager {
refreshDevices();
};
private final AtomicReference<MediaRouter2.ScanToken> mScanToken = new AtomicReference<>();
// TODO (b/321969740): Plumb target UserHandle between UMO and RouterInfoMediaManager.
/* package */ RouterInfoMediaManager(
Context context,
......@@ -101,12 +104,24 @@ public final class RouterInfoMediaManager extends InfoMediaManager {
mExecutor, mRouteListingPreferenceCallback);
mRouter.registerTransferCallback(mExecutor, mTransferCallback);
mRouter.registerControllerCallback(mExecutor, mControllerCallback);
mRouter.startScan();
if (Flags.enableScreenOffScanning()) {
MediaRouter2.ScanRequest request = new MediaRouter2.ScanRequest.Builder().build();
mScanToken.compareAndSet(null, mRouter.requestScan(request));
} else {
mRouter.startScan();
}
}
@Override
public void stopScan() {
mRouter.stopScan();
if (Flags.enableScreenOffScanning()) {
MediaRouter2.ScanToken token = mScanToken.getAndSet(null);
if (token != null) {
mRouter.cancelScanRequest(token);
}
} else {
mRouter.stopScan();
}
mRouter.unregisterControllerCallback(mControllerCallback);
mRouter.unregisterTransferCallback(mTransferCallback);
mRouter.unregisterRouteListingPreferenceUpdatedCallback(mRouteListingPreferenceCallback);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment