Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit be3ecd01 authored by android-build-team Robot's avatar android-build-team Robot
Browse files

Snap for 7321546 from 599317a4 to sc-v2-release

Change-Id: If82b382eef81d2668e616b4219ef9d5f00011fdc
parents f0746ff4 599317a4
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -186,7 +186,7 @@ message SnapshotUpdateStatus {
    MergeFailureCode merge_failure_code = 7;
}

// Next: 9
// Next: 10
message SnapshotMergeReport {
    // Status of the update after the merge attempts.
    UpdateState state = 1;
@@ -212,4 +212,7 @@ message SnapshotMergeReport {

    // Time from sys.boot_completed to merge start, in milliseconds.
    uint32 boot_complete_to_merge_start_time_ms = 8;

    // Merge failure code, filled if state == MergeFailed.
    MergeFailureCode merge_failure_code = 9;
}
+1 −0
Original line number Diff line number Diff line
@@ -27,6 +27,7 @@ class MockSnapshotManager : public ISnapshotManager {
    MOCK_METHOD(bool, CancelUpdate, (), (override));
    MOCK_METHOD(bool, FinishedSnapshotWrites, (bool wipe), (override));
    MOCK_METHOD(void, UpdateCowStats, (ISnapshotMergeStats * stats), (override));
    MOCK_METHOD(MergeFailureCode, ReadMergeFailureCode, (), (override));
    MOCK_METHOD(bool, InitiateMerge, (), (override));

    MOCK_METHOD(UpdateState, ProcessUpdateState,
+2 −0
Original line number Diff line number Diff line
@@ -34,11 +34,13 @@ class MockSnapshotMergeStats final : public ISnapshotMergeStats {
    MOCK_METHOD(void, set_estimated_cow_size_bytes, (uint64_t), (override));
    MOCK_METHOD(void, set_boot_complete_time_ms, (uint32_t), (override));
    MOCK_METHOD(void, set_boot_complete_to_merge_start_time_ms, (uint32_t), (override));
    MOCK_METHOD(void, set_merge_failure_code, (MergeFailureCode), (override));
    MOCK_METHOD(uint64_t, cow_file_size, (), (override));
    MOCK_METHOD(uint64_t, total_cow_size_bytes, (), (override));
    MOCK_METHOD(uint64_t, estimated_cow_size_bytes, (), (override));
    MOCK_METHOD(uint32_t, boot_complete_time_ms, (), (override));
    MOCK_METHOD(uint32_t, boot_complete_to_merge_start_time_ms, (), (override));
    MOCK_METHOD(MergeFailureCode, merge_failure_code, (), (override));
    MOCK_METHOD(std::unique_ptr<Result>, Finish, (), (override));

    using ISnapshotMergeStats::Result;
+5 −0
Original line number Diff line number Diff line
@@ -167,6 +167,10 @@ class ISnapshotManager {
    virtual UpdateState ProcessUpdateState(const std::function<bool()>& callback = {},
                                           const std::function<bool()>& before_cancel = {}) = 0;

    // If ProcessUpdateState() returned MergeFailed, this returns the appropriate
    // code. Otherwise, MergeFailureCode::Ok is returned.
    virtual MergeFailureCode ReadMergeFailureCode() = 0;

    // Find the status of the current update, if any.
    //
    // |progress| depends on the returned status:
@@ -332,6 +336,7 @@ class SnapshotManager final : public ISnapshotManager {
    bool CancelUpdate() override;
    bool FinishedSnapshotWrites(bool wipe) override;
    void UpdateCowStats(ISnapshotMergeStats* stats) override;
    MergeFailureCode ReadMergeFailureCode() override;
    bool InitiateMerge() override;
    UpdateState ProcessUpdateState(const std::function<bool()>& callback = {},
                                   const std::function<bool()>& before_cancel = {}) override;
+4 −0
Original line number Diff line number Diff line
@@ -34,11 +34,13 @@ class ISnapshotMergeStats {
    virtual void set_estimated_cow_size_bytes(uint64_t bytes) = 0;
    virtual void set_boot_complete_time_ms(uint32_t ms) = 0;
    virtual void set_boot_complete_to_merge_start_time_ms(uint32_t ms) = 0;
    virtual void set_merge_failure_code(MergeFailureCode code) = 0;
    virtual uint64_t cow_file_size() = 0;
    virtual uint64_t total_cow_size_bytes() = 0;
    virtual uint64_t estimated_cow_size_bytes() = 0;
    virtual uint32_t boot_complete_time_ms() = 0;
    virtual uint32_t boot_complete_to_merge_start_time_ms() = 0;
    virtual MergeFailureCode merge_failure_code() = 0;

    // Called when merge ends. Properly clean up permanent storage.
    class Result {
@@ -70,6 +72,8 @@ class SnapshotMergeStats : public ISnapshotMergeStats {
    uint32_t boot_complete_time_ms() override;
    void set_boot_complete_to_merge_start_time_ms(uint32_t ms) override;
    uint32_t boot_complete_to_merge_start_time_ms() override;
    void set_merge_failure_code(MergeFailureCode code) override;
    MergeFailureCode merge_failure_code() override;
    std::unique_ptr<Result> Finish() override;

  private:
Loading