Loading services/core/java/com/android/server/powerstats/PowerStatsService.java +41 −30 Original line number Diff line number Diff line Loading @@ -603,9 +603,37 @@ public class PowerStatsService extends SystemService { @NonNull private String getEnergyConsumerName(EnergyConsumer consumer, EnergyConsumer[] energyConsumers) { if (consumer.type != EnergyConsumerType.OTHER) { StringBuilder sb = new StringBuilder(); sb.append(energyConsumerTypeToString(consumer.type)); switch (consumer.type) { case EnergyConsumerType.BLUETOOTH: sb.append("BLUETOOTH"); break; case EnergyConsumerType.CPU_CLUSTER: sb.append("CPU"); break; case EnergyConsumerType.DISPLAY: sb.append("DISPLAY"); break; case EnergyConsumerType.GNSS: sb.append("GNSS"); break; case EnergyConsumerType.MOBILE_RADIO: sb.append("MOBILE_RADIO"); break; case EnergyConsumerType.WIFI: sb.append("WIFI"); break; case EnergyConsumerType.CAMERA: sb.append("CAMERA"); break; default: if (consumer.name != null && !consumer.name.isBlank()) { sb.append(consumer.name.toUpperCase(Locale.ENGLISH)); } else { sb.append("CONSUMER_").append(consumer.type); } break; } boolean hasOrdinal = consumer.ordinal != 0; if (!hasOrdinal) { // See if any other EnergyConsumer of the same type has an ordinal Loading @@ -620,23 +648,6 @@ public class PowerStatsService extends SystemService { sb.append('/').append(consumer.ordinal); } return sb.toString(); } else { return consumer.name; } } private static String energyConsumerTypeToString(int type) { switch(type) { case EnergyConsumerType.BLUETOOTH: return "BLUETOOTH"; case EnergyConsumerType.CPU_CLUSTER: return "CPU"; case EnergyConsumerType.DISPLAY: return "DISPLAY"; case EnergyConsumerType.GNSS: return "GNSS"; case EnergyConsumerType.MOBILE_RADIO: return "MOBILE_RADIO"; case EnergyConsumerType.WIFI: return "WIFI"; case EnergyConsumerType.OTHER: return ""; default: throw new IllegalStateException("Unrecognized EnergyConsumerType: " + type); } } /** Loading services/tests/powerstatstests/src/com/android/server/powerstats/PowerStatsServiceTest.java +3 −3 Original line number Diff line number Diff line Loading @@ -1081,7 +1081,7 @@ public class PowerStatsServiceTest { assertThat(result.powerMonitors).isNotNull(); assertThat(Arrays.stream(result.powerMonitors).map(PowerMonitor::getName).toList()) .containsAtLeast( "energyconsumer0", "ENERGYCONSUMER0", "BLUETOOTH/1", "[channelname0]:channelsubsystem0", "[channelname1]:channelsubsystem1"); Loading Loading @@ -1131,7 +1131,7 @@ public class PowerStatsServiceTest { Map<String, PowerMonitor> map = Arrays.stream(supportedPowerMonitorsResult.powerMonitors) .collect(Collectors.toMap(PowerMonitor::getName, pm -> pm)); PowerMonitor consumer1 = map.get("energyconsumer0"); PowerMonitor consumer1 = map.get("ENERGYCONSUMER0"); PowerMonitor consumer2 = map.get("BLUETOOTH/1"); PowerMonitor measurement1 = map.get("[channelname0]:channelsubsystem0"); PowerMonitor measurement2 = map.get("[channelname1]:channelsubsystem1"); Loading Loading @@ -1196,6 +1196,6 @@ public class PowerStatsServiceTest { supportedPowerMonitorsResult = new GetSupportedPowerMonitorsResult(); mService.getSupportedPowerMonitorsImpl(supportedPowerMonitorsResult); assertThat(Arrays.stream(supportedPowerMonitorsResult.powerMonitors) .map(PowerMonitor::getName).toList()).contains("energyconsumer0"); .map(PowerMonitor::getName).toList()).contains("ENERGYCONSUMER0"); } } Loading
services/core/java/com/android/server/powerstats/PowerStatsService.java +41 −30 Original line number Diff line number Diff line Loading @@ -603,9 +603,37 @@ public class PowerStatsService extends SystemService { @NonNull private String getEnergyConsumerName(EnergyConsumer consumer, EnergyConsumer[] energyConsumers) { if (consumer.type != EnergyConsumerType.OTHER) { StringBuilder sb = new StringBuilder(); sb.append(energyConsumerTypeToString(consumer.type)); switch (consumer.type) { case EnergyConsumerType.BLUETOOTH: sb.append("BLUETOOTH"); break; case EnergyConsumerType.CPU_CLUSTER: sb.append("CPU"); break; case EnergyConsumerType.DISPLAY: sb.append("DISPLAY"); break; case EnergyConsumerType.GNSS: sb.append("GNSS"); break; case EnergyConsumerType.MOBILE_RADIO: sb.append("MOBILE_RADIO"); break; case EnergyConsumerType.WIFI: sb.append("WIFI"); break; case EnergyConsumerType.CAMERA: sb.append("CAMERA"); break; default: if (consumer.name != null && !consumer.name.isBlank()) { sb.append(consumer.name.toUpperCase(Locale.ENGLISH)); } else { sb.append("CONSUMER_").append(consumer.type); } break; } boolean hasOrdinal = consumer.ordinal != 0; if (!hasOrdinal) { // See if any other EnergyConsumer of the same type has an ordinal Loading @@ -620,23 +648,6 @@ public class PowerStatsService extends SystemService { sb.append('/').append(consumer.ordinal); } return sb.toString(); } else { return consumer.name; } } private static String energyConsumerTypeToString(int type) { switch(type) { case EnergyConsumerType.BLUETOOTH: return "BLUETOOTH"; case EnergyConsumerType.CPU_CLUSTER: return "CPU"; case EnergyConsumerType.DISPLAY: return "DISPLAY"; case EnergyConsumerType.GNSS: return "GNSS"; case EnergyConsumerType.MOBILE_RADIO: return "MOBILE_RADIO"; case EnergyConsumerType.WIFI: return "WIFI"; case EnergyConsumerType.OTHER: return ""; default: throw new IllegalStateException("Unrecognized EnergyConsumerType: " + type); } } /** Loading
services/tests/powerstatstests/src/com/android/server/powerstats/PowerStatsServiceTest.java +3 −3 Original line number Diff line number Diff line Loading @@ -1081,7 +1081,7 @@ public class PowerStatsServiceTest { assertThat(result.powerMonitors).isNotNull(); assertThat(Arrays.stream(result.powerMonitors).map(PowerMonitor::getName).toList()) .containsAtLeast( "energyconsumer0", "ENERGYCONSUMER0", "BLUETOOTH/1", "[channelname0]:channelsubsystem0", "[channelname1]:channelsubsystem1"); Loading Loading @@ -1131,7 +1131,7 @@ public class PowerStatsServiceTest { Map<String, PowerMonitor> map = Arrays.stream(supportedPowerMonitorsResult.powerMonitors) .collect(Collectors.toMap(PowerMonitor::getName, pm -> pm)); PowerMonitor consumer1 = map.get("energyconsumer0"); PowerMonitor consumer1 = map.get("ENERGYCONSUMER0"); PowerMonitor consumer2 = map.get("BLUETOOTH/1"); PowerMonitor measurement1 = map.get("[channelname0]:channelsubsystem0"); PowerMonitor measurement2 = map.get("[channelname1]:channelsubsystem1"); Loading Loading @@ -1196,6 +1196,6 @@ public class PowerStatsServiceTest { supportedPowerMonitorsResult = new GetSupportedPowerMonitorsResult(); mService.getSupportedPowerMonitorsImpl(supportedPowerMonitorsResult); assertThat(Arrays.stream(supportedPowerMonitorsResult.powerMonitors) .map(PowerMonitor::getName).toList()).contains("energyconsumer0"); .map(PowerMonitor::getName).toList()).contains("ENERGYCONSUMER0"); } }