summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/backup/java/com/android/server/backup/BackupManagerService.java18
-rw-r--r--services/backup/java/com/android/server/backup/FullBackupJob.java4
-rw-r--r--services/backup/java/com/android/server/backup/KeyValueBackupJob.java2
-rw-r--r--services/backup/java/com/android/server/backup/Trampoline.java7
4 files changed, 14 insertions, 17 deletions
diff --git a/services/backup/java/com/android/server/backup/BackupManagerService.java b/services/backup/java/com/android/server/backup/BackupManagerService.java
index 814f6daac43c..69e4df01c4db 100644
--- a/services/backup/java/com/android/server/backup/BackupManagerService.java
+++ b/services/backup/java/com/android/server/backup/BackupManagerService.java
@@ -74,16 +74,6 @@ public class BackupManagerService {
@VisibleForTesting
static final String DUMP_RUNNING_USERS_MESSAGE = "Backup Manager is running for users:";
- // The published binder is a singleton Trampoline object that calls through to the proper code.
- // This indirection lets us turn down the heavy implementation object on the fly without
- // disturbing binders that have been cached elsewhere in the system.
- private static Trampoline sInstance;
-
- static Trampoline getInstance() {
- // Always constructed during system bring up, so no need to lazy-init.
- return sInstance;
- }
-
private final Context mContext;
private final Trampoline mTrampoline;
@@ -895,22 +885,22 @@ public class BackupManagerService {
@VisibleForTesting
Lifecycle(Context context, Trampoline trampoline) {
super(context);
- sInstance = trampoline;
+ Trampoline.sInstance = trampoline;
}
@Override
public void onStart() {
- publishService(Context.BACKUP_SERVICE, sInstance);
+ publishService(Context.BACKUP_SERVICE, Trampoline.sInstance);
}
@Override
public void onUnlockUser(int userId) {
- sInstance.onUnlockUser(userId);
+ Trampoline.sInstance.onUnlockUser(userId);
}
@Override
public void onStopUser(int userId) {
- sInstance.onStopUser(userId);
+ Trampoline.sInstance.onStopUser(userId);
}
@VisibleForTesting
diff --git a/services/backup/java/com/android/server/backup/FullBackupJob.java b/services/backup/java/com/android/server/backup/FullBackupJob.java
index 088e1f9a0db8..19a85432875c 100644
--- a/services/backup/java/com/android/server/backup/FullBackupJob.java
+++ b/services/backup/java/com/android/server/backup/FullBackupJob.java
@@ -91,7 +91,7 @@ public class FullBackupJob extends JobService {
mParamsForUser.put(userId, params);
}
- Trampoline service = BackupManagerService.getInstance();
+ Trampoline service = Trampoline.getInstance();
return service.beginFullBackup(userId, this);
}
@@ -105,7 +105,7 @@ public class FullBackupJob extends JobService {
}
}
- Trampoline service = BackupManagerService.getInstance();
+ Trampoline service = Trampoline.getInstance();
service.endFullBackup(userId);
return false;
diff --git a/services/backup/java/com/android/server/backup/KeyValueBackupJob.java b/services/backup/java/com/android/server/backup/KeyValueBackupJob.java
index ac43fc3b7781..7b5dbd7ce777 100644
--- a/services/backup/java/com/android/server/backup/KeyValueBackupJob.java
+++ b/services/backup/java/com/android/server/backup/KeyValueBackupJob.java
@@ -144,7 +144,7 @@ public class KeyValueBackupJob extends JobService {
}
// Time to run a key/value backup!
- Trampoline service = BackupManagerService.getInstance();
+ Trampoline service = Trampoline.getInstance();
try {
service.backupNowForUser(userId);
} catch (RemoteException e) {}
diff --git a/services/backup/java/com/android/server/backup/Trampoline.java b/services/backup/java/com/android/server/backup/Trampoline.java
index 210a9ef94e53..0061cf02adfd 100644
--- a/services/backup/java/com/android/server/backup/Trampoline.java
+++ b/services/backup/java/com/android/server/backup/Trampoline.java
@@ -16,6 +16,7 @@
package com.android.server.backup;
+import static com.android.internal.util.Preconditions.checkNotNull;
import static com.android.server.backup.BackupManagerService.TAG;
import android.Manifest;
@@ -98,6 +99,12 @@ public class Trampoline extends IBackupManager.Stub {
private static final String BACKUP_THREAD = "backup";
+ static Trampoline sInstance;
+
+ static Trampoline getInstance() {
+ return checkNotNull(sInstance);
+ }
+
private final Context mContext;
private final UserManager mUserManager;