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

Commit 88cb2d9d authored by Ruslan Tkhakokhov's avatar Ruslan Tkhakokhov Committed by Android (Google) Code Review
Browse files

Merge "Get blocked restore keys directly from UserBMS"

parents b9d730d8 9de0b77c
Loading
Loading
Loading
Loading
+3 −8
Original line number Diff line number Diff line
@@ -1080,12 +1080,8 @@ public class UserBackupManagerService {
        }
    }

    public Map<String, Set<String>> getExcludedRestoreKeys(String... packages) {
        return mBackupPreferences.getExcludedRestoreKeysForPackages(packages);
    }

    public Map<String, Set<String>> getAllExcludedRestoreKeys() {
        return mBackupPreferences.getAllExcludedRestoreKeys();
    public Set<String> getExcludedRestoreKeys(String packageName) {
        return mBackupPreferences.getExcludedRestoreKeysForPackage(packageName);
    }

    /** Used for generating random salts or passwords. */
@@ -3356,8 +3352,7 @@ public class UserBackupManagerService {
                                restoreSet,
                                packageName,
                                token,
                                listener,
                                getExcludedRestoreKeys(packageName));
                                listener);
                mBackupHandler.sendMessage(msg);
            } catch (Exception e) {
                // Calling into the transport broke; back off and proceed with the installation.
+2 −11
Original line number Diff line number Diff line
@@ -48,16 +48,7 @@ public class UserBackupPreferences {
        mEditor.commit();
    }

    Map<String, Set<String>> getExcludedRestoreKeysForPackages(String... packages) {
        Map<String, Set<String>> excludedKeys = new HashMap<>();
        for (String packageName : packages) {
            excludedKeys.put(packageName,
                    mPreferences.getStringSet(packageName, Collections.emptySet()));
        }
        return excludedKeys;
    }

    Map<String, Set<String>> getAllExcludedRestoreKeys() {
        return (Map<String, Set<String>>) mPreferences.getAll();
    Set<String> getExcludedRestoreKeysForPackage(String packageName) {
        return mPreferences.getStringSet(packageName, Collections.emptySet());
    }
}
+1 −2
Original line number Diff line number Diff line
@@ -299,8 +299,7 @@ public class BackupHandler extends Handler {
                                params.pmToken,
                                params.isSystemRestore,
                                params.filterSet,
                                params.listener,
                                params.excludedKeys);
                                params.listener);

                synchronized (backupManagerService.getPendingRestores()) {
                    if (backupManagerService.isRestoreInProgress()) {
+9 −20
Original line number Diff line number Diff line
@@ -37,7 +37,6 @@ public class RestoreParams {
    public final boolean isSystemRestore;
    @Nullable public final String[] filterSet;
    public final OnTaskFinishedListener listener;
    public final Map<String, Set<String>> excludedKeys;

    /**
     * No kill after restore.
@@ -48,8 +47,7 @@ public class RestoreParams {
            IBackupManagerMonitor monitor,
            long token,
            PackageInfo packageInfo,
            OnTaskFinishedListener listener,
            Map<String, Set<String>> excludedKeys) {
            OnTaskFinishedListener listener) {
        return new RestoreParams(
                transportClient,
                observer,
@@ -59,8 +57,7 @@ public class RestoreParams {
                /* pmToken */ 0,
                /* isSystemRestore */ false,
                /* filterSet */ null,
                listener,
                excludedKeys);
                listener);
    }

    /**
@@ -73,8 +70,7 @@ public class RestoreParams {
            long token,
            String packageName,
            int pmToken,
            OnTaskFinishedListener listener,
            Map<String, Set<String>> excludedKeys) {
            OnTaskFinishedListener listener) {
        String[] filterSet = {packageName};
        return new RestoreParams(
                transportClient,
@@ -85,8 +81,7 @@ public class RestoreParams {
                pmToken,
                /* isSystemRestore */ false,
                filterSet,
                listener,
                excludedKeys);
                listener);
    }

    /**
@@ -97,8 +92,7 @@ public class RestoreParams {
            IRestoreObserver observer,
            IBackupManagerMonitor monitor,
            long token,
            OnTaskFinishedListener listener,
            Map<String, Set<String>> excludedKeys) {
            OnTaskFinishedListener listener) {
        return new RestoreParams(
                transportClient,
                observer,
@@ -108,8 +102,7 @@ public class RestoreParams {
                /* pmToken */ 0,
                /* isSystemRestore */ true,
                /* filterSet */ null,
                listener,
                excludedKeys);
                listener);
    }

    /**
@@ -122,8 +115,7 @@ public class RestoreParams {
            long token,
            String[] filterSet,
            boolean isSystemRestore,
            OnTaskFinishedListener listener,
            Map<String, Set<String>> excludedKeys) {
            OnTaskFinishedListener listener) {
        return new RestoreParams(
                transportClient,
                observer,
@@ -133,8 +125,7 @@ public class RestoreParams {
                /* pmToken */ 0,
                isSystemRestore,
                filterSet,
                listener,
                excludedKeys);
                listener);
    }

    private RestoreParams(
@@ -146,8 +137,7 @@ public class RestoreParams {
            int pmToken,
            boolean isSystemRestore,
            @Nullable String[] filterSet,
            OnTaskFinishedListener listener,
            Map<String, Set<String>> excludedKeys) {
            OnTaskFinishedListener listener) {
        this.transportClient = transportClient;
        this.observer = observer;
        this.monitor = monitor;
@@ -157,6 +147,5 @@ public class RestoreParams {
        this.isSystemRestore = isSystemRestore;
        this.filterSet = filterSet;
        this.listener = listener;
        this.excludedKeys = excludedKeys;
    }
}
+3 −6
Original line number Diff line number Diff line
@@ -178,8 +178,7 @@ public class ActiveRestoreSession extends IRestoreSession.Stub {
                                                observer,
                                                monitor,
                                                token,
                                                listener,
                                                mBackupManagerService.getAllExcludedRestoreKeys()),
                                                listener),
                                "RestoreSession.restoreAll()");
                    } finally {
                        Binder.restoreCallingIdentity(oldId);
@@ -272,8 +271,7 @@ public class ActiveRestoreSession extends IRestoreSession.Stub {
                                                token,
                                                packages,
                                                /* isSystemRestore */ packages.length > 1,
                                                listener,
                                                mBackupManagerService.getExcludedRestoreKeys(packages)),
                                                listener),
                                "RestoreSession.restorePackages(" + packages.length + " packages)");
                    } finally {
                        Binder.restoreCallingIdentity(oldId);
@@ -365,8 +363,7 @@ public class ActiveRestoreSession extends IRestoreSession.Stub {
                                    monitor,
                                    token,
                                    app,
                                    listener,
                                    mBackupManagerService.getExcludedRestoreKeys(app.packageName)),
                                    listener),
                    "RestoreSession.restorePackage(" + packageName + ")");
        } finally {
            Binder.restoreCallingIdentity(oldId);
Loading