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

Commit 507e6f83 authored by Ruslan Tkhakokhov's avatar Ruslan Tkhakokhov
Browse files

API Review: Internal RestoreSession#restorePackages

Bug: 120843781
Test: 1) atest RunBackupFrameworksServicesRoboTests
      2) atest CtsBackupTestCases
      3) atest CtsBackupHostTestCases
      4) atest GtsBackupTestCases
      5) atest GtsBackupHostTestCases

Change-Id: Ice42aedd702e1c16b074d7a00d7b15d8f4aaf733
parent 25f0e816
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -803,8 +803,8 @@ public class Bmgr {
                            } else {
                                String[] names = new String[filter.size()];
                                filter.toArray(names);
                                didRestore = (mRestore.restoreSome(token, observer,
                                        null, names) == 0);
                                didRestore = (mRestore.restorePackages(token, observer, names,
                                        null) == 0);
                            }
                            break;
                        }
+2 −2
Original line number Diff line number Diff line
@@ -71,8 +71,8 @@ interface IRestoreSession {
     *   applications mentioned in this list will have their data restored.
     * @param monitor If non null the binder will send important events to this monitor.
     */
    int restoreSome(long token, IRestoreObserver observer, IBackupManagerMonitor monitor,
            in String[] packages);
    int restorePackages(long token, IRestoreObserver observer, in String[] packages,
            IBackupManagerMonitor monitor);

    /**
     * Restore a single application from backup.  The data will be restored from the
+2 −2
Original line number Diff line number Diff line
@@ -163,8 +163,8 @@ public class RestoreSession {
                ? null
                : new BackupManagerMonitorWrapper(monitor);
        try {
            err = mBinder.restoreSome(token, mObserver, monitorWrapper,
                    packages.toArray(new String[] {}));
            err = mBinder.restorePackages(token, mObserver, packages.toArray(new String[] {}),
                    monitorWrapper);
        } catch (RemoteException e) {
            Log.d(TAG, "Can't contact server to restore packages");
        }
+1 −1
Original line number Diff line number Diff line
@@ -105,7 +105,7 @@ public class RestoreParams {
    /**
     * Caller specifies whether is considered a system-level restore.
     */
    public static RestoreParams createForRestoreSome(
    public static RestoreParams createForRestorePackages(
            TransportClient transportClient,
            IRestoreObserver observer,
            IBackupManagerMonitor monitor,
+11 −6
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ import static com.android.server.backup.internal.BackupHandler.MSG_RESTORE_SESSI
import static com.android.server.backup.internal.BackupHandler.MSG_RUN_GET_RESTORE_SETS;
import static com.android.server.backup.internal.BackupHandler.MSG_RUN_RESTORE;

import android.annotation.NonNull;
import android.annotation.Nullable;
import android.app.backup.IBackupManagerMonitor;
import android.app.backup.IRestoreObserver;
@@ -192,18 +193,22 @@ public class ActiveRestoreSession extends IRestoreSession.Stub {
    }

    // Restores of more than a single package are treated as 'system' restores
    public synchronized int restoreSome(long token, IRestoreObserver observer,
            IBackupManagerMonitor monitor, String[] packages) {
    public synchronized int restorePackages(long token, @Nullable IRestoreObserver observer,
            @NonNull String[] packages, @Nullable IBackupManagerMonitor monitor) {
        mBackupManagerService.getContext().enforceCallingOrSelfPermission(
                android.Manifest.permission.BACKUP,
                "performRestore");

        if (DEBUG) {
            StringBuilder b = new StringBuilder(128);
            b.append("restoreSome token=");
            b.append("restorePackages token=");
            b.append(Long.toHexString(token));
            b.append(" observer=");
            if (observer == null) {
                b.append("null");
            } else {
                b.append(observer.toString());
            }
            b.append(" monitor=");
            if (monitor == null) {
                b.append("null");
@@ -260,7 +265,7 @@ public class ActiveRestoreSession extends IRestoreSession.Stub {
                    try {
                        return sendRestoreToHandlerLocked(
                                (transportClient, listener) ->
                                        RestoreParams.createForRestoreSome(
                                        RestoreParams.createForRestorePackages(
                                                transportClient,
                                                observer,
                                                monitor,
@@ -268,7 +273,7 @@ public class ActiveRestoreSession extends IRestoreSession.Stub {
                                                packages,
                                                /* isSystemRestore */ packages.length > 1,
                                                listener),
                                "RestoreSession.restoreSome(" + packages.length + " packages)");
                                "RestoreSession.restorePackages(" + packages.length + " packages)");
                    } finally {
                        Binder.restoreCallingIdentity(oldId);
                    }
Loading