Merge "MediaRouter: Enable transfer for RCN case" into rvc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
c88b779af9
@@ -808,7 +808,7 @@ class MediaRouter2ServiceImpl {
|
|||||||
return;
|
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
|
RouterRecord routerRecord = managerRecord.mUserRecord.mHandler
|
||||||
.findRouterforSessionLocked(uniqueSessionId);
|
.findRouterforSessionLocked(uniqueSessionId);
|
||||||
|
|
||||||
@@ -829,7 +829,7 @@ class MediaRouter2ServiceImpl {
|
|||||||
return;
|
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
|
RouterRecord routerRecord = managerRecord.mUserRecord.mHandler
|
||||||
.findRouterforSessionLocked(uniqueSessionId);
|
.findRouterforSessionLocked(uniqueSessionId);
|
||||||
|
|
||||||
@@ -850,7 +850,7 @@ class MediaRouter2ServiceImpl {
|
|||||||
return;
|
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
|
RouterRecord routerRecord = managerRecord.mUserRecord.mHandler
|
||||||
.findRouterforSessionLocked(uniqueSessionId);
|
.findRouterforSessionLocked(uniqueSessionId);
|
||||||
|
|
||||||
@@ -1232,7 +1232,7 @@ class MediaRouter2ServiceImpl {
|
|||||||
route.getOriginalId(), sessionHints);
|
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,
|
private void selectRouteOnHandler(long uniqueRequestId, @Nullable RouterRecord routerRecord,
|
||||||
@NonNull String uniqueSessionId, @NonNull MediaRoute2Info route) {
|
@NonNull String uniqueSessionId, @NonNull MediaRoute2Info route) {
|
||||||
if (!checkArgumentsForSessionControl(routerRecord, uniqueSessionId, route,
|
if (!checkArgumentsForSessionControl(routerRecord, uniqueSessionId, route,
|
||||||
@@ -1250,7 +1250,7 @@ class MediaRouter2ServiceImpl {
|
|||||||
route.getOriginalId());
|
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,
|
private void deselectRouteOnHandler(long uniqueRequestId,
|
||||||
@Nullable RouterRecord routerRecord,
|
@Nullable RouterRecord routerRecord,
|
||||||
@NonNull String uniqueSessionId, @NonNull MediaRoute2Info route) {
|
@NonNull String uniqueSessionId, @NonNull MediaRoute2Info route) {
|
||||||
@@ -1270,7 +1270,7 @@ class MediaRouter2ServiceImpl {
|
|||||||
route.getOriginalId());
|
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,
|
private void transferToRouteOnHandler(long uniqueRequestId,
|
||||||
@Nullable RouterRecord routerRecord,
|
@Nullable RouterRecord routerRecord,
|
||||||
@NonNull String uniqueSessionId, @NonNull MediaRoute2Info route) {
|
@NonNull String uniqueSessionId, @NonNull MediaRoute2Info route) {
|
||||||
@@ -1289,6 +1289,8 @@ class MediaRouter2ServiceImpl {
|
|||||||
route.getOriginalId());
|
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,
|
private boolean checkArgumentsForSessionControl(@Nullable RouterRecord routerRecord,
|
||||||
@NonNull String uniqueSessionId, @NonNull MediaRoute2Info route,
|
@NonNull String uniqueSessionId, @NonNull MediaRoute2Info route,
|
||||||
@NonNull String description) {
|
@NonNull String description) {
|
||||||
@@ -1305,12 +1307,6 @@ class MediaRouter2ServiceImpl {
|
|||||||
return true;
|
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);
|
RouterRecord matchingRecord = mSessionToRouterMap.get(uniqueSessionId);
|
||||||
if (matchingRecord != routerRecord) {
|
if (matchingRecord != routerRecord) {
|
||||||
Slog.w(TAG, "Ignoring " + description + " route from non-matching router. "
|
Slog.w(TAG, "Ignoring " + description + " route from non-matching router. "
|
||||||
|
|||||||
Reference in New Issue
Block a user