update_engine: Move DLC metadata ownership to update_engine
Add dbus messages so dlcservice can let update_engine know when a DLC is
installed or uninstalled.
BUG=chromium:912666
TEST=unittests, install and uninstall DLCs on DUT.
Cq-Depend: chromium:2112994,chromium:2113254
Change-Id: I35374504afcdaf96b099e343cabe072fc18f1022
Reviewed-on: https://chromium-review.googlesource.com/c/aosp/platform/system/update_engine/+/2113134
Reviewed-by: Amin Hassani <ahassani@chromium.org>
Reviewed-by: Jae Hoon Kim <kimjae@chromium.org>
Tested-by: Andrew Lassalle <andrewlassalle@chromium.org>
Commit-Queue: Andrew Lassalle <andrewlassalle@chromium.org>
diff --git a/update_attempter.h b/update_attempter.h
index 91e072a..c364de3 100644
--- a/update_attempter.h
+++ b/update_attempter.h
@@ -162,6 +162,9 @@
// UPDATED_NEED_REBOOT. Returns true on success, false otherwise.
bool RebootIfNeeded();
+ // Sets the DLC as active or inactive. See common_service.h
+ virtual bool SetDlcActiveValue(bool is_active, const std::string& dlc_id);
+
// DownloadActionDelegate methods:
void BytesReceived(uint64_t bytes_progressed,
uint64_t bytes_received,
@@ -253,6 +256,7 @@
FRIEND_TEST(UpdateAttempterTest, CalculateDlcParamsNoPrefFilesTest);
FRIEND_TEST(UpdateAttempterTest, CalculateDlcParamsNonParseableValuesTest);
FRIEND_TEST(UpdateAttempterTest, CalculateDlcParamsValidValuesTest);
+ FRIEND_TEST(UpdateAttempterTest, CalculateDlcParamsRemoveStaleMetadata);
FRIEND_TEST(UpdateAttempterTest, ChangeToDownloadingOnReceivedBytesTest);
FRIEND_TEST(UpdateAttempterTest, CheckForInstallNotIdleFails);
FRIEND_TEST(UpdateAttempterTest, CheckForUpdateAUDlcTest);