diff options
| author | 2021-10-27 09:33:14 +0000 | |
|---|---|---|
| committer | 2021-10-27 09:33:14 +0000 | |
| commit | 85008dcd71c8e6daf34e3f46b3ea13a73c7f1645 (patch) | |
| tree | 9d50cd1ad084d4fa634511ade37eafb85055e7fc | |
| parent | 0da8f446edfe7ab5951f26d9302349ba581544a5 (diff) | |
| parent | 7631cf027079019dcb8a728352c8366777f4b173 (diff) | |
Merge "Remove usage of healthd." am: 1978bd15ca am: 10d9a6b84c am: 7631cf0270
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1861916
Change-Id: Ia4d5abcc2625be068ee1e35733fc2be85ab18a1a
| -rw-r--r-- | services/core/java/com/android/server/BatteryService.java | 41 | ||||
| -rw-r--r-- | services/tests/servicestests/src/com/android/server/BatteryServiceTest.java | 13 |
2 files changed, 17 insertions, 37 deletions
diff --git a/services/core/java/com/android/server/BatteryService.java b/services/core/java/com/android/server/BatteryService.java index 1e608f5c1240..0146aa82a217 100644 --- a/services/core/java/com/android/server/BatteryService.java +++ b/services/core/java/com/android/server/BatteryService.java @@ -81,8 +81,6 @@ import java.io.IOException; import java.io.PrintWriter; import java.util.ArrayDeque; import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; import java.util.NoSuchElementException; import java.util.Objects; import java.util.concurrent.atomic.AtomicReference; @@ -1435,11 +1433,7 @@ public final class BatteryService extends SystemService { */ public static final class HealthServiceWrapper { private static final String TAG = "HealthServiceWrapper"; - public static final String INSTANCE_HEALTHD = "backup"; public static final String INSTANCE_VENDOR = "default"; - // All interesting instances, sorted by priority high -> low. - private static final List<String> sAllInstances = - Arrays.asList(INSTANCE_VENDOR, INSTANCE_HEALTHD); private final IServiceNotification mNotification = new Notification(); private final HandlerThread mHandlerThread = new HandlerThread("HealthServiceHwbinder"); @@ -1471,8 +1465,8 @@ public final class BatteryService extends SystemService { } /** - * Start monitoring registration of new IHealth services. Only instances that are in - * {@code sAllInstances} and in device / framework manifest are used. This function should + * Start monitoring registration of new IHealth services. Only instance + * {@link #INSTANCE_VENDOR} and in device / framework manifest are used. This function should * only be called once. * * mCallback.onRegistration() is called synchronously (aka in init thread) before @@ -1481,7 +1475,7 @@ public final class BatteryService extends SystemService { * @throws RemoteException transaction error when talking to IServiceManager * @throws NoSuchElementException if one of the following cases: * - No service manager; - * - none of {@code sAllInstances} are in manifests (i.e. not + * - {@link #INSTANCE_VENDOR} is not in manifests (i.e. not * available on this device), or none of these instances are available to current * process. * @throws NullPointerException when supplier is null @@ -1499,26 +1493,23 @@ public final class BatteryService extends SystemService { // Initialize mLastService and call callback for the first time (in init thread) IHealth newService = null; - for (String name : sAllInstances) { - traceBegin("HealthInitGetService_" + name); - try { - newService = healthSupplier.get(name); - } catch (NoSuchElementException ex) { - /* ignored, handled below */ - } finally { - traceEnd(); - } - if (newService != null) { - mInstanceName = name; - mLastService.set(newService); - break; - } + traceBegin("HealthInitGetService_" + INSTANCE_VENDOR); + try { + newService = healthSupplier.get(INSTANCE_VENDOR); + } catch (NoSuchElementException ex) { + /* ignored, handled below */ + } finally { + traceEnd(); + } + if (newService != null) { + mInstanceName = INSTANCE_VENDOR; + mLastService.set(newService); } if (mInstanceName == null || newService == null) { throw new NoSuchElementException(String.format( - "No IHealth service instance among %s is available. Perhaps no permission?", - sAllInstances.toString())); + "IHealth service instance %s isn't available. Perhaps no permission?", + INSTANCE_VENDOR)); } if (callback != null) { diff --git a/services/tests/servicestests/src/com/android/server/BatteryServiceTest.java b/services/tests/servicestests/src/com/android/server/BatteryServiceTest.java index cb12ba7d7679..a2ecbc30ec64 100644 --- a/services/tests/servicestests/src/com/android/server/BatteryServiceTest.java +++ b/services/tests/servicestests/src/com/android/server/BatteryServiceTest.java @@ -47,7 +47,6 @@ public class BatteryServiceTest extends AndroidTestCase { @Mock BatteryService.HealthServiceWrapper.IHealthSupplier mHealthServiceSupplier; BatteryService.HealthServiceWrapper mWrapper; - private static final String HEALTHD = BatteryService.HealthServiceWrapper.INSTANCE_HEALTHD; private static final String VENDOR = BatteryService.HealthServiceWrapper.INSTANCE_VENDOR; @Override @@ -117,7 +116,7 @@ public class BatteryServiceTest extends AndroidTestCase { @SmallTest public void testWrapPreferVendor() throws Exception { - initForInstances(VENDOR, HEALTHD); + initForInstances(VENDOR); mWrapper.init(mCallback, mManagerSupplier, mHealthServiceSupplier); waitHandlerThreadFinish(); verify(mCallback, times(1)).onRegistration(same(null), same(mMockedHal), eq(VENDOR)); @@ -126,16 +125,6 @@ public class BatteryServiceTest extends AndroidTestCase { } @SmallTest - public void testUseHealthd() throws Exception { - initForInstances(HEALTHD); - mWrapper.init(mCallback, mManagerSupplier, mHealthServiceSupplier); - waitHandlerThreadFinish(); - verify(mCallback, times(1)).onRegistration(same(null), same(mMockedHal), eq(HEALTHD)); - verify(mCallback, never()).onRegistration(same(mMockedHal), same(mMockedHal), anyString()); - verify(mCallback, times(1)).onRegistration(same(mMockedHal), same(mMockedHal2), eq(HEALTHD)); - } - - @SmallTest public void testNoService() throws Exception { initForInstances("unrelated"); try { |