summaryrefslogtreecommitdiffstats
path: root/services/backup
diff options
context:
space:
mode:
authorZoltan Szatmary-Ban <szatmz@google.com>2014-11-12 18:03:08 +0000
committerZoltan Szatmary-Ban <szatmz@google.com>2014-11-12 23:51:31 +0000
commit201caf57f9a9699e04620eac9b1fcdaf4338d2f0 (patch)
tree0012bb1c1dc502ea15beccbdabf684a87401e1fa /services/backup
parent19865ccd44958b0902b9eedd11df279a03ff74c1 (diff)
downloadframeworks_base-201caf57f9a9699e04620eac9b1fcdaf4338d2f0.zip
frameworks_base-201caf57f9a9699e04620eac9b1fcdaf4338d2f0.tar.gz
frameworks_base-201caf57f9a9699e04620eac9b1fcdaf4338d2f0.tar.bz2
Adding method to query backup manager service activity status
Bug: 17367491 Change-Id: I9920c07d56c4c0ccb1f3dce637c0fb390902d2ff
Diffstat (limited to 'services/backup')
-rw-r--r--services/backup/java/com/android/server/backup/Trampoline.java17
1 files changed, 16 insertions, 1 deletions
diff --git a/services/backup/java/com/android/server/backup/Trampoline.java b/services/backup/java/com/android/server/backup/Trampoline.java
index 5d2187f..8bd7132 100644
--- a/services/backup/java/com/android/server/backup/Trampoline.java
+++ b/services/backup/java/com/android/server/backup/Trampoline.java
@@ -94,7 +94,7 @@ public class Trampoline extends IBackupManager.Stub {
if (userHandle == UserHandle.USER_OWNER) {
synchronized (this) {
- if (makeActive != (mService != null)) {
+ if (makeActive != isBackupServiceActive(userHandle)) {
Slog.i(TAG, "Making backup "
+ (makeActive ? "" : "in") + "active in user " + userHandle);
if (makeActive) {
@@ -113,6 +113,21 @@ public class Trampoline extends IBackupManager.Stub {
}
}
+ /**
+ * Querying activity state of backup service. Calling this method before initialize yields
+ * undefined result.
+ * @param userHandle The user in which the activity state of backup service is queried.
+ * @return true if the service is active.
+ */
+ public boolean isBackupServiceActive(final int userHandle) {
+ if (userHandle == UserHandle.USER_OWNER) {
+ synchronized (this) {
+ return mService != null;
+ }
+ }
+ return false;
+ }
+
// IBackupManager binder API
@Override
public void dataChanged(String packageName) throws RemoteException {