Create a FuseDataProvider base class

The fuse data provider for adb/sdcard shares common code and structures.
This cl creates a FuseDataProvider base class and provides
implementations for adb and sdcard.

In the follow cls, we can kill the provider_vtab struct; and also add
another implementation to parse a block map file and provides data.

Test: unit tests pass, sideload a package, apply a package from sdcard
Change-Id: If8311666a52a2e3c0fbae0ee9688fa6d01e4ad09
This commit is contained in:
xunchang
2019-03-19 11:11:58 -07:00
parent 698dc08561
commit ea2912f187
16 changed files with 250 additions and 136 deletions
+2 -1
View File
@@ -56,7 +56,7 @@
#include "common.h"
#include "device.h"
#include "fsck_unshare_blocks.h"
#include "fuse_sdcard_provider.h"
#include "fuse_sdcard_install.h"
#include "fuse_sideload.h"
#include "install.h"
#include "logging.h"
@@ -709,6 +709,7 @@ static void run_graphics_test() {
ui->ShowText(true);
}
// TODO(xunchang) move apply_from_sdcard() to fuse_sdcard_install.cpp
// How long (in seconds) we wait for the fuse-provided package file to
// appear, before timing out.
#define SDCARD_INSTALL_TIMEOUT 10