From 24c8d4fc7b7ab1312c2ca302725fbf9002251520 Mon Sep 17 00:00:00 2001 From: Alex Dadukin Date: Thu, 29 Sep 2022 13:30:43 +0000 Subject: [PATCH] Implement dump method in RoutingSessionInfo Bug: b/243116883 Test: adb shell dumpsys media_router Change-Id: Idf2a0160dc44f2bc7ef05b98696c6cef89cac158 --- .../android/media/RoutingSessionInfo.java | 30 +++++++++++++++++++ .../server/media/MediaRouter2ServiceImpl.java | 1 + 2 files changed, 31 insertions(+) diff --git a/media/java/android/media/RoutingSessionInfo.java b/media/java/android/media/RoutingSessionInfo.java index 913ac6b975fb0..10973abf9c567 100644 --- a/media/java/android/media/RoutingSessionInfo.java +++ b/media/java/android/media/RoutingSessionInfo.java @@ -25,6 +25,8 @@ import android.os.Parcelable; import android.text.TextUtils; import android.util.Log; +import java.io.FileDescriptor; +import java.io.PrintWriter; import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -327,6 +329,34 @@ public final class RoutingSessionInfo implements Parcelable { dest.writeBoolean(mIsSystemSession); } + /** + * Dumps current state of the instance. Use with {@code dumpsys}. + * + * See {@link android.os.Binder#dump(FileDescriptor, PrintWriter, String[])}. + * + * @hide + */ + public void dump(@NonNull PrintWriter pw, @NonNull String prefix) { + pw.println(prefix + "RoutingSessionInfo"); + + String indent = prefix + " "; + + pw.println(indent + "mId=" + mId); + pw.println(indent + "mName=" + mName); + pw.println(indent + "mOwnerPackageName=" + mOwnerPackageName); + pw.println(indent + "mClientPackageName=" + mClientPackageName); + pw.println(indent + "mProviderId=" + mProviderId); + pw.println(indent + "mSelectedRoutes=" + mSelectedRoutes); + pw.println(indent + "mSelectableRoutes=" + mSelectableRoutes); + pw.println(indent + "mDeselectableRoutes=" + mDeselectableRoutes); + pw.println(indent + "mTransferableRoutes=" + mTransferableRoutes); + pw.println(indent + "mVolumeHandling=" + mVolumeHandling); + pw.println(indent + "mVolumeMax=" + mVolumeMax); + pw.println(indent + "mVolume=" + mVolume); + pw.println(indent + "mControlHints=" + mControlHints); + pw.println(indent + "mIsSystemSession=" + mIsSystemSession); + } + @Override public boolean equals(Object obj) { if (this == obj) { diff --git a/services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java b/services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java index 82b5c11cfb8ca..91f3167d3e134 100644 --- a/services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java +++ b/services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java @@ -2435,6 +2435,7 @@ class MediaRouter2ServiceImpl { pw.println(indent + "mUniqueRequestId=" + mUniqueRequestId); pw.println(indent + "mManagerRequestId=" + mManagerRequestId); + mOldSession.dump(pw, indent); } } }