tree a4aa6189a4c333cfc48bcf636664b5c043c19d53
parent 4ae86b1a35238f0894d840bd72631ca2415b7571
author Felipe Leme <felipeal@google.com> 1474506800 -0700
committer Felipe Leme <felipeal@google.com> 1475107410 -0700

Deprecate run_command() and dump_file().

This change will break dumpstate_board() implementations that were not
refactored to use the equivalent functions in the Dumpstate
class. For example:

void dumpstate_board() {
  dump_file("INTERRUPTS", "/proc/interrupts");
  run_command("SUBSYSTEM TOMBSTONES", 5, SU_PATH, "root",
              "ls", "-l", "/data/tombstones/ramdump", NULL);

}

Should be refactored to:

void dumpstate_board(){
  Dumpstate& ds = Dumpstate::GetInstance();

  ds.DumpFile("INTERRUPTS", "/proc/interrupts");
  ds.RunCommand("SUBSYSTEM TOMBSTONES",
                {"ls", "-l", "/data/tombstones/ramdump"},
                CommandOptions::AS_ROOT_5);
}

BUG: 26379932
Test: manual / refactored code

Change-Id: Ia74515cc57abc18bc6966a5aed71dd679422fd0e
