Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 309fbaaa authored by Kyunglyul Hyun's avatar Kyunglyul Hyun Committed by Automerger Merge Worker
Browse files

Merge "MediaRouter: Enable transfer for RCN case" into rvc-dev am: c88b779a am: 4d3779d8

Change-Id: Ice6212f51f15930d218e82f1063bb2faae6563ba
parents 5024143a 4d3779d8
Loading
Loading
Loading
Loading
+8 −12
Original line number Diff line number Diff line
@@ -808,7 +808,7 @@ class MediaRouter2ServiceImpl {
            return;
        }

        // Can be null if the session is system's.
        // Can be null if the session is system's or RCN.
        RouterRecord routerRecord = managerRecord.mUserRecord.mHandler
                .findRouterforSessionLocked(uniqueSessionId);

@@ -829,7 +829,7 @@ class MediaRouter2ServiceImpl {
            return;
        }

        // Can be null if the session is system's.
        // Can be null if the session is system's or RCN.
        RouterRecord routerRecord = managerRecord.mUserRecord.mHandler
                .findRouterforSessionLocked(uniqueSessionId);

@@ -850,7 +850,7 @@ class MediaRouter2ServiceImpl {
            return;
        }

        // Can be null if the session is system's.
        // Can be null if the session is system's or RCN.
        RouterRecord routerRecord = managerRecord.mUserRecord.mHandler
                .findRouterforSessionLocked(uniqueSessionId);

@@ -1232,7 +1232,7 @@ class MediaRouter2ServiceImpl {
                    route.getOriginalId(), sessionHints);
        }

        // routerRecord can be null if the session is system's.
        // routerRecord can be null if the session is system's or RCN.
        private void selectRouteOnHandler(long uniqueRequestId, @Nullable RouterRecord routerRecord,
                @NonNull String uniqueSessionId, @NonNull MediaRoute2Info route) {
            if (!checkArgumentsForSessionControl(routerRecord, uniqueSessionId, route,
@@ -1250,7 +1250,7 @@ class MediaRouter2ServiceImpl {
                    route.getOriginalId());
        }

        // routerRecord can be null if the session is system's.
        // routerRecord can be null if the session is system's or RCN.
        private void deselectRouteOnHandler(long uniqueRequestId,
                @Nullable RouterRecord routerRecord,
                @NonNull String uniqueSessionId, @NonNull MediaRoute2Info route) {
@@ -1270,7 +1270,7 @@ class MediaRouter2ServiceImpl {
                    route.getOriginalId());
        }

        // routerRecord can be null if the session is system's.
        // routerRecord can be null if the session is system's or RCN.
        private void transferToRouteOnHandler(long uniqueRequestId,
                @Nullable RouterRecord routerRecord,
                @NonNull String uniqueSessionId, @NonNull MediaRoute2Info route) {
@@ -1289,6 +1289,8 @@ class MediaRouter2ServiceImpl {
                    route.getOriginalId());
        }

        // routerRecord is null if and only if the session is created without the request, which
        // includes the system's session and RCN cases.
        private boolean checkArgumentsForSessionControl(@Nullable RouterRecord routerRecord,
                @NonNull String uniqueSessionId, @NonNull MediaRoute2Info route,
                @NonNull String description) {
@@ -1305,12 +1307,6 @@ class MediaRouter2ServiceImpl {
                return true;
            }

            //TODO(b/152950479): Handle RCN case.
            if (routerRecord == null) {
                Slog.w(TAG, "Ignoring " + description + " route from unknown router.");
                return false;
            }

            RouterRecord matchingRecord = mSessionToRouterMap.get(uniqueSessionId);
            if (matchingRecord != routerRecord) {
                Slog.w(TAG, "Ignoring " + description + " route from non-matching router. "