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

Commit aca6fae8 authored by Terry Wang's avatar Terry Wang Committed by Android (Google) Code Review
Browse files

Merge "Close AppSearchImpl in handling user removed broadcast." into sc-dev

parents 263fe888 a3d8ce43
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -179,7 +179,7 @@ public class AppSearchManagerService extends SystemService {
     */
    private void handleUserRemoved(@NonNull UserHandle userHandle) {
        try {
            mImplInstanceManager.removeAppSearchImplForUser(userHandle);
            mImplInstanceManager.closeAndRemoveAppSearchImplForUser(userHandle);
            mLoggerInstanceManager.removePlatformLoggerForUser(userHandle);
            Log.i(TAG, "Removed AppSearchImpl instance for: " + userHandle);
        } catch (Throwable t) {
+0 −19
Original line number Diff line number Diff line
@@ -103,25 +103,6 @@ public final class ImplInstanceManager {
        }
    }

    /**
     * Remove an instance of {@link AppSearchImpl} for the given user.
     *
     * <p>This method should only be called if {@link AppSearchManagerService} receives an
     * ACTION_USER_REMOVED, which the instance of given user should be removed.
     *
     * <p>If the user is removed, the "credential encrypted" system directory where icing lives will
     * be auto-deleted. So we shouldn't worry about persist data or close the AppSearchImpl.
     *
     * @param userHandle The multi-user user handle of the user that need to be removed.
     */
    public void removeAppSearchImplForUser(@NonNull UserHandle userHandle) {
        Objects.requireNonNull(userHandle);
        synchronized (mInstancesLocked) {
            // no need to close and persist data to disk since we are removing them now.
            mInstancesLocked.remove(userHandle);
        }
    }

    /**
     * Close and remove an instance of {@link AppSearchImpl} for the given user.
     *