Loading services/core/java/com/android/server/tv/TvInputHardwareManager.java +88 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.content.pm.PackageManager; import android.hardware.hdmi.HdmiControlManager; import android.hardware.hdmi.HdmiDeviceInfo; import android.hardware.hdmi.HdmiHotplugEvent; Loading @@ -45,6 +46,7 @@ import android.media.tv.ITvInputHardwareCallback; import android.media.tv.TvInputHardwareInfo; import android.media.tv.TvInputInfo; import android.media.tv.TvStreamConfig; import android.os.Binder; import android.os.Handler; import android.os.IBinder; import android.os.Message; Loading @@ -57,8 +59,11 @@ import android.util.SparseBooleanArray; import android.view.KeyEvent; import android.view.Surface; import com.android.internal.util.IndentingPrintWriter; import com.android.server.SystemService; import java.io.FileDescriptor; import java.io.PrintWriter; import java.util.ArrayList; import java.util.Collections; import java.util.Iterator; Loading Loading @@ -549,6 +554,70 @@ class TvInputHardwareManager implements TvInputHal.Callback { return (float) mCurrentIndex / (float) mCurrentMaxIndex; } public void dump(FileDescriptor fd, final PrintWriter writer, String[] args) { final IndentingPrintWriter pw = new IndentingPrintWriter(writer, " "); if (mContext.checkCallingOrSelfPermission(android.Manifest.permission.DUMP) != PackageManager.PERMISSION_GRANTED) { pw.println("Permission Denial: can't dump TvInputHardwareManager from pid=" + Binder.getCallingPid() + ", uid=" + Binder.getCallingUid()); return; } synchronized (mLock) { pw.println("TvInputHardwareManager Info:"); pw.increaseIndent(); pw.println("Connections Info:"); pw.increaseIndent(); for (int i = 0; i < mConnections.size(); i++) { int deviceId = mConnections.keyAt(i); Connection mConnection = mConnections.valueAt(i); pw.println("Connection (" + deviceId + "): " + mConnection); } pw.decreaseIndent(); pw.println("HardwareList:"); pw.increaseIndent(); for (TvInputHardwareInfo tvInputHardwareInfo : mHardwareList) { pw.println(tvInputHardwareInfo); } pw.decreaseIndent(); pw.println("HdmiDeviceList:"); pw.increaseIndent(); for (HdmiDeviceInfo hdmiDeviceInfo : mHdmiDeviceList) { pw.println(hdmiDeviceInfo); } pw.decreaseIndent(); pw.println("HardwareInputMap: TvInputId-> DeviceId"); pw.increaseIndent(); for (int i = 0 ; i < mHardwareInputIdMap.size(); i++) { int deviceId = mHardwareInputIdMap.keyAt(i); String tvInputId = mHardwareInputIdMap.valueAt(i); pw.println(deviceId + ": " + tvInputId); } pw.decreaseIndent(); pw.println("HdmiInputIdMap: TvInputId -> HDMI Address"); pw.increaseIndent(); for (int i = 0; i < mHdmiInputIdMap.size(); i++) { int hdmiAddress = mHdmiInputIdMap.keyAt(i); String tvInputId = mHdmiInputIdMap.valueAt(i); pw.println(hdmiAddress + ": " + tvInputId); } pw.decreaseIndent(); pw.println("InputMap: inputId -> TvInputInfo"); pw.increaseIndent(); for(Map.Entry<String, TvInputInfo> entry : mInputMap.entrySet()) { pw.println(entry.getKey() + ": " + entry.getValue()); } pw.decreaseIndent(); pw.decreaseIndent(); } } private class Connection implements IBinder.DeathRecipient { private final TvInputHardwareInfo mHardwareInfo; private TvInputInfo mInfo; Loading Loading @@ -641,6 +710,25 @@ class TvInputHardwareManager implements TvInputHal.Callback { resetLocked(null, null, null, null, null); } } public String toString() { StringBuilder s = new StringBuilder(); s.append("Connection {HardwareInfo: ").append(mHardwareInfo.toString()).append(" "); s.append("TvInputInfo: ").append(mInfo).append(" "); s.append("callback: ").append(mCallback).append(" "); if (mConfigs != null) { for (int i = 0; i < mConfigs.length; i++) { s.append("Config[").append(i).append("]: ").append(mConfigs[i].toString()) .append(" "); } } else { s.append("Configs: ").append(mConfigs).append(" "); } s.append("CallingUid: ").append(mCallingUid).append(" "); s.append("ResolvedUserId: ").append(mResolvedUserId).append(" "); s.append("}"); return s.toString(); } } private class TvInputHardwareImpl extends ITvInputHardware.Stub { Loading services/core/java/com/android/server/tv/TvInputManagerService.java +1 −0 Original line number Diff line number Diff line Loading @@ -1923,6 +1923,7 @@ public final class TvInputManagerService extends SystemService { pw.decreaseIndent(); } } mTvInputHardwareManager.dump(fd, writer, args); } } Loading Loading
services/core/java/com/android/server/tv/TvInputHardwareManager.java +88 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.content.pm.PackageManager; import android.hardware.hdmi.HdmiControlManager; import android.hardware.hdmi.HdmiDeviceInfo; import android.hardware.hdmi.HdmiHotplugEvent; Loading @@ -45,6 +46,7 @@ import android.media.tv.ITvInputHardwareCallback; import android.media.tv.TvInputHardwareInfo; import android.media.tv.TvInputInfo; import android.media.tv.TvStreamConfig; import android.os.Binder; import android.os.Handler; import android.os.IBinder; import android.os.Message; Loading @@ -57,8 +59,11 @@ import android.util.SparseBooleanArray; import android.view.KeyEvent; import android.view.Surface; import com.android.internal.util.IndentingPrintWriter; import com.android.server.SystemService; import java.io.FileDescriptor; import java.io.PrintWriter; import java.util.ArrayList; import java.util.Collections; import java.util.Iterator; Loading Loading @@ -549,6 +554,70 @@ class TvInputHardwareManager implements TvInputHal.Callback { return (float) mCurrentIndex / (float) mCurrentMaxIndex; } public void dump(FileDescriptor fd, final PrintWriter writer, String[] args) { final IndentingPrintWriter pw = new IndentingPrintWriter(writer, " "); if (mContext.checkCallingOrSelfPermission(android.Manifest.permission.DUMP) != PackageManager.PERMISSION_GRANTED) { pw.println("Permission Denial: can't dump TvInputHardwareManager from pid=" + Binder.getCallingPid() + ", uid=" + Binder.getCallingUid()); return; } synchronized (mLock) { pw.println("TvInputHardwareManager Info:"); pw.increaseIndent(); pw.println("Connections Info:"); pw.increaseIndent(); for (int i = 0; i < mConnections.size(); i++) { int deviceId = mConnections.keyAt(i); Connection mConnection = mConnections.valueAt(i); pw.println("Connection (" + deviceId + "): " + mConnection); } pw.decreaseIndent(); pw.println("HardwareList:"); pw.increaseIndent(); for (TvInputHardwareInfo tvInputHardwareInfo : mHardwareList) { pw.println(tvInputHardwareInfo); } pw.decreaseIndent(); pw.println("HdmiDeviceList:"); pw.increaseIndent(); for (HdmiDeviceInfo hdmiDeviceInfo : mHdmiDeviceList) { pw.println(hdmiDeviceInfo); } pw.decreaseIndent(); pw.println("HardwareInputMap: TvInputId-> DeviceId"); pw.increaseIndent(); for (int i = 0 ; i < mHardwareInputIdMap.size(); i++) { int deviceId = mHardwareInputIdMap.keyAt(i); String tvInputId = mHardwareInputIdMap.valueAt(i); pw.println(deviceId + ": " + tvInputId); } pw.decreaseIndent(); pw.println("HdmiInputIdMap: TvInputId -> HDMI Address"); pw.increaseIndent(); for (int i = 0; i < mHdmiInputIdMap.size(); i++) { int hdmiAddress = mHdmiInputIdMap.keyAt(i); String tvInputId = mHdmiInputIdMap.valueAt(i); pw.println(hdmiAddress + ": " + tvInputId); } pw.decreaseIndent(); pw.println("InputMap: inputId -> TvInputInfo"); pw.increaseIndent(); for(Map.Entry<String, TvInputInfo> entry : mInputMap.entrySet()) { pw.println(entry.getKey() + ": " + entry.getValue()); } pw.decreaseIndent(); pw.decreaseIndent(); } } private class Connection implements IBinder.DeathRecipient { private final TvInputHardwareInfo mHardwareInfo; private TvInputInfo mInfo; Loading Loading @@ -641,6 +710,25 @@ class TvInputHardwareManager implements TvInputHal.Callback { resetLocked(null, null, null, null, null); } } public String toString() { StringBuilder s = new StringBuilder(); s.append("Connection {HardwareInfo: ").append(mHardwareInfo.toString()).append(" "); s.append("TvInputInfo: ").append(mInfo).append(" "); s.append("callback: ").append(mCallback).append(" "); if (mConfigs != null) { for (int i = 0; i < mConfigs.length; i++) { s.append("Config[").append(i).append("]: ").append(mConfigs[i].toString()) .append(" "); } } else { s.append("Configs: ").append(mConfigs).append(" "); } s.append("CallingUid: ").append(mCallingUid).append(" "); s.append("ResolvedUserId: ").append(mResolvedUserId).append(" "); s.append("}"); return s.toString(); } } private class TvInputHardwareImpl extends ITvInputHardware.Stub { Loading
services/core/java/com/android/server/tv/TvInputManagerService.java +1 −0 Original line number Diff line number Diff line Loading @@ -1923,6 +1923,7 @@ public final class TvInputManagerService extends SystemService { pw.decreaseIndent(); } } mTvInputHardwareManager.dump(fd, writer, args); } } Loading