aboutsummaryrefslogtreecommitdiffstats
path: root/user
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2020-03-23 20:20:27 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2020-03-23 20:20:27 +0000
commit2ec0aece700b2bece9b1bde0cda0773c3ca94e27 (patch)
treea760815902dbb06129a61036076adbf549528358 /user
parentf501c3a3662b7d5e94421d9feb1f02c0afb688c6 (diff)
parentc5683ceed696efee9b20c15795bb2f08ba65cc78 (diff)
downloadplatform_packages_services_Car-2ec0aece700b2bece9b1bde0cda0773c3ca94e27.tar.gz
platform_packages_services_Car-2ec0aece700b2bece9b1bde0cda0773c3ca94e27.tar.bz2
platform_packages_services_Car-2ec0aece700b2bece9b1bde0cda0773c3ca94e27.zip
Merge "Refactored InitialUserSetter to use the right API." into rvc-dev
Diffstat (limited to 'user')
-rw-r--r--user/car-user-lib/src/android/car/userlib/InitialUserSetter.java29
1 files changed, 16 insertions, 13 deletions
diff --git a/user/car-user-lib/src/android/car/userlib/InitialUserSetter.java b/user/car-user-lib/src/android/car/userlib/InitialUserSetter.java
index 0916ee156..0c0294d9b 100644
--- a/user/car-user-lib/src/android/car/userlib/InitialUserSetter.java
+++ b/user/car-user-lib/src/android/car/userlib/InitialUserSetter.java
@@ -79,21 +79,27 @@ public final class InitialUserSetter {
// TODO(b/151758646): implement
}
+ @VisibleForTesting
+ void fallbackDefaultBehavior(@NonNull String reason) {
+ Log.w(TAG, "Falling back to default behavior. Reason: " + reason);
+ executeDefaultBehavior();
+ }
+
/**
- * Switches to the given user, falling back to {@link #executeDefaultBehavior()} if it fails.
+ * Switches to the given user, falling back to {@link #fallbackDefaultBehavior(String)} if it
+ * fails.
*/
public void switchUser(@UserIdInt int userId) {
if (DBG) Log.d(TAG, "switchUser(): userId= " + userId);
- if (!mHelper.switchToUserId(userId)) {
- Log.w(TAG, "am.switchUser(" + userId + ") failed; falling back to default behavior");
- executeDefaultBehavior();
+ if (!mHelper.startForegroundUser(userId)) {
+ fallbackDefaultBehavior("am.switchUser(" + userId + ") failed");
}
}
/**
- * Creates a new user and switches to it, falling back to {@link #executeDefaultBehavior()} if
- * any of these steps fails.
+ * Creates a new user and switches to it, falling back to
+ * {@link #fallbackDefaultBehavior(String) if any of these steps fails.
*
* @param name (optional) name of the new user
* @param halFlags user flags as defined by Vehicle HAL ({@code UserFlags} enum).
@@ -105,8 +111,7 @@ public final class InitialUserSetter {
}
if (UserHalHelper.isSystem(halFlags)) {
- Log.w(TAG, "Cannot create system user");
- executeDefaultBehavior();
+ fallbackDefaultBehavior("Cannot create system user");
return;
}
@@ -121,7 +126,7 @@ public final class InitialUserSetter {
validAdmin = false;
}
if (!validAdmin) {
- executeDefaultBehavior();
+ fallbackDefaultBehavior("Invalid flags for admin user");
return;
}
}
@@ -139,10 +144,8 @@ public final class InitialUserSetter {
UserInfo userInfo = mUm.createUser(name, type, flags);
if (userInfo == null) {
- Log.w(TAG, "createUser(name=" + safeName(name) + ", flags="
- + userFlagsToString(halFlags) + "): failed to create user; falling back to "
- + "default behavior");
- executeDefaultBehavior();
+ fallbackDefaultBehavior("createUser(name=" + safeName(name) + ", flags="
+ + userFlagsToString(halFlags) + "): failed to create user");
return;
}