From d23d7f2d12c20314e1e8ff206fafc8f21745ca2d Mon Sep 17 00:00:00 2001 From: Christopher Tate Date: Thu, 2 Jul 2009 14:37:05 -0700 Subject: Add a 'wipe' operation to Bmgr "bmgr wipe PACKAGE" now issues the backup transport clearBackupData() operation for the given package. --- cmds/bmgr/src/com/android/commands/bmgr/Bmgr.java | 26 +++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'cmds/bmgr/src/com/android/commands') diff --git a/cmds/bmgr/src/com/android/commands/bmgr/Bmgr.java b/cmds/bmgr/src/com/android/commands/bmgr/Bmgr.java index c90b862..ee3ec1a 100644 --- a/cmds/bmgr/src/com/android/commands/bmgr/Bmgr.java +++ b/cmds/bmgr/src/com/android/commands/bmgr/Bmgr.java @@ -97,6 +97,11 @@ public final class Bmgr { return; } + if ("wipe".equals(op)) { + doWipe(); + return; + } + System.err.println("Unknown command"); showUsage(); } @@ -183,6 +188,22 @@ public final class Bmgr { } } + private void doWipe() { + String pkg = nextArg(); + if (pkg == null) { + showUsage(); + return; + } + + try { + mBmgr.clearBackupData(pkg); + System.out.println("Wiped backup data for " + pkg); + } catch (RemoteException e) { + System.err.println(e.toString()); + System.err.println(BMGR_NOT_RUNNING_ERR); + } + } + private void doList() { String arg = nextArg(); // sets, transports, packages set# if ("transports".equals(arg)) { @@ -343,6 +364,7 @@ public final class Bmgr { System.err.println(" bmgr transport WHICH"); System.err.println(" bmgr restore TOKEN"); System.err.println(" bmgr run"); + System.err.println(" bmgr wipe PACKAGE"); System.err.println(""); System.err.println("The 'backup' command schedules a backup pass for the named package."); System.err.println("Note that the backup pass will effectively be a no-op if the package"); @@ -373,5 +395,9 @@ public final class Bmgr { System.err.println("The 'run' command causes any scheduled backup operation to be initiated"); System.err.println("immediately, without the usual waiting period for batching together"); System.err.println("data changes."); + System.err.println(""); + System.err.println("The 'wipe' command causes all backed-up data for the given package to be"); + System.err.println("erased from the current transport's storage. The next backup operation"); + System.err.println("that the given application performs will rewrite its entire data set."); } } -- cgit v1.1