diff options
| author | 2019-01-25 13:07:08 +0000 | |
|---|---|---|
| committer | 2019-01-25 13:07:08 +0000 | |
| commit | 0e96192e45a3926f14e3ceeb88420ef481c651fc (patch) | |
| tree | e7e1cc2f7e3803b96a7d15d67f7ad67e614ec0df | |
| parent | 150ad9865e8a92f36d27e4bf9bbd1a6404e2a909 (diff) | |
Use new RollbackManager API in RollbackPackageHealthObserver.
Use RollbackManager.getAvailableRollbacks instead of
RollbackManager.getAvailableRollback, which will be removed shortly.
Bug: 112431924
Test: atest RollbackTest
Change-Id: Ia6548e4d66da3484cb90ab6f20832356628f1881
| -rw-r--r-- | services/core/java/com/android/server/rollback/RollbackPackageHealthObserver.java | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/services/core/java/com/android/server/rollback/RollbackPackageHealthObserver.java b/services/core/java/com/android/server/rollback/RollbackPackageHealthObserver.java index 1f2f1ccd7383..6aa44a70c268 100644 --- a/services/core/java/com/android/server/rollback/RollbackPackageHealthObserver.java +++ b/services/core/java/com/android/server/rollback/RollbackPackageHealthObserver.java @@ -19,6 +19,7 @@ package com.android.server.rollback; import android.content.Context; import android.content.Intent; import android.content.pm.PackageInstaller; +import android.content.rollback.PackageRollbackInfo; import android.content.rollback.RollbackInfo; import android.content.rollback.RollbackManager; import android.os.Handler; @@ -51,11 +52,14 @@ public final class RollbackPackageHealthObserver implements PackageHealthObserve @Override public boolean onHealthCheckFailed(String packageName) { RollbackManager rollbackManager = mContext.getSystemService(RollbackManager.class); - RollbackInfo rollback = rollbackManager.getAvailableRollback(packageName); - if (rollback != null) { - // TODO(zezeozue): Only rollback if rollback version == failed package version - mHandler.post(() -> executeRollback(rollbackManager, rollback)); - return true; + for (RollbackInfo rollback : rollbackManager.getAvailableRollbacks()) { + for (PackageRollbackInfo packageRollback : rollback.getPackages()) { + if (packageName.equals(packageRollback.getPackageName())) { + // TODO(zezeozue): Only rollback if rollback version == failed package version + mHandler.post(() -> executeRollback(rollbackManager, rollback)); + return true; + } + } } // Don't handle the notification, no rollbacks available return false; |