diff options
| author | Jeff Brown <jeffbrown@google.com> | 2011-12-14 20:20:01 -0800 |
|---|---|---|
| committer | Jeff Brown <jeffbrown@google.com> | 2011-12-16 04:01:00 -0800 |
| commit | 6754ba24f12a54b97b3ca1c5d29fc23c15980abe (patch) | |
| tree | 64c4241b75e87fb617388796f99262a2554fa31a /core/java/android/app/ApplicationThreadNative.java | |
| parent | d5064be3b5922ee6522a33f8b729ffee2e3d7b4b (diff) | |
Add plumbing for dumping database info using dumpsys.
Change-Id: I51b0364c3d3d41aa38a759fbce48e625fff1b2dd
Diffstat (limited to 'core/java/android/app/ApplicationThreadNative.java')
| -rw-r--r-- | core/java/android/app/ApplicationThreadNative.java | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/core/java/android/app/ApplicationThreadNative.java b/core/java/android/app/ApplicationThreadNative.java index e6d28ef48c21..e75d7b4ce46d 100644 --- a/core/java/android/app/ApplicationThreadNative.java +++ b/core/java/android/app/ApplicationThreadNative.java @@ -554,6 +554,26 @@ public abstract class ApplicationThreadNative extends Binder reply.writeNoException(); return true; } + + case DUMP_DB_INFO_TRANSACTION: + { + data.enforceInterface(IApplicationThread.descriptor); + ParcelFileDescriptor fd = data.readFileDescriptor(); + String[] args = data.readStringArray(); + if (fd != null) { + try { + dumpDbInfo(fd.getFileDescriptor(), args); + } finally { + try { + fd.close(); + } catch (IOException e) { + // swallowed, not propagated back to the caller + } + } + } + reply.writeNoException(); + return true; + } } return super.onTransact(code, data, reply, flags); @@ -1131,4 +1151,13 @@ class ApplicationThreadProxy implements IApplicationThread { mRemote.transact(DUMP_GFX_INFO_TRANSACTION, data, null, IBinder.FLAG_ONEWAY); data.recycle(); } + + public void dumpDbInfo(FileDescriptor fd, String[] args) throws RemoteException { + Parcel data = Parcel.obtain(); + data.writeInterfaceToken(IApplicationThread.descriptor); + data.writeFileDescriptor(fd); + data.writeStringArray(args); + mRemote.transact(DUMP_DB_INFO_TRANSACTION, data, null, IBinder.FLAG_ONEWAY); + data.recycle(); + } } |
