1 /* 2 * Copyright (C) 2012 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package com.android.layoutlib.bridge.android; 18 19 import android.os.BatterySaverPolicyConfig; 20 import android.os.ParcelDuration; 21 import android.os.IBinder; 22 import android.os.IPowerManager; 23 import android.os.IWakeLockCallback; 24 import android.os.PowerManager; 25 import android.os.PowerManager.WakeReason; 26 import android.os.PowerSaveState; 27 import android.os.RemoteException; 28 import android.os.WorkSource; 29 30 import java.util.Collections; 31 import java.util.List; 32 33 /** 34 * Fake implementation of IPowerManager. 35 */ 36 public class BridgePowerManager implements IPowerManager { 37 38 @Override isInteractive()39 public boolean isInteractive() throws RemoteException { 40 return true; 41 } 42 43 @Override isDisplayInteractive(int displayId)44 public boolean isDisplayInteractive(int displayId) { 45 return true; 46 } 47 48 @Override areAutoPowerSaveModesEnabled()49 public boolean areAutoPowerSaveModesEnabled() throws RemoteException { 50 return false; 51 } 52 53 @Override isPowerSaveMode()54 public boolean isPowerSaveMode() throws RemoteException { 55 return false; 56 } 57 58 @Override setPowerSaveModeEnabled(boolean mode)59 public boolean setPowerSaveModeEnabled(boolean mode) throws RemoteException { 60 return false; 61 } 62 63 @Override getFullPowerSavePolicy()64 public BatterySaverPolicyConfig getFullPowerSavePolicy() { 65 return new BatterySaverPolicyConfig.Builder().build(); 66 } 67 68 @Override setFullPowerSavePolicy(BatterySaverPolicyConfig config)69 public boolean setFullPowerSavePolicy(BatterySaverPolicyConfig config) { 70 return false; 71 } 72 73 @Override setDynamicPowerSaveHint(boolean powerSaveHint, int disableThreshold)74 public boolean setDynamicPowerSaveHint(boolean powerSaveHint, int disableThreshold) 75 throws RemoteException { 76 return false; 77 } 78 79 @Override setAdaptivePowerSavePolicy(BatterySaverPolicyConfig config)80 public boolean setAdaptivePowerSavePolicy(BatterySaverPolicyConfig config) 81 throws RemoteException { 82 return false; 83 } 84 85 @Override setAdaptivePowerSaveEnabled(boolean enabled)86 public boolean setAdaptivePowerSaveEnabled(boolean enabled) throws RemoteException { 87 return false; 88 } 89 90 @Override getPowerSaveModeTrigger()91 public int getPowerSaveModeTrigger() { 92 return 0; 93 } 94 getPowerSaveState(int serviceType)95 public PowerSaveState getPowerSaveState(int serviceType) { 96 return null; 97 } 98 99 @Override setBatteryDischargePrediction(ParcelDuration timeRemaining, boolean isPersonalized)100 public void setBatteryDischargePrediction(ParcelDuration timeRemaining, 101 boolean isPersonalized) { 102 // pass for now 103 } 104 105 @Override getBatteryDischargePrediction()106 public ParcelDuration getBatteryDischargePrediction() { 107 return null; 108 } 109 110 @Override isBatteryDischargePredictionPersonalized()111 public boolean isBatteryDischargePredictionPersonalized() { 112 return false; 113 } 114 115 @Override asBinder()116 public IBinder asBinder() { 117 // pass for now. 118 return null; 119 } 120 121 @Override acquireWakeLock(IBinder arg0, int arg1, String arg2, String arg2_5, WorkSource arg3, String arg4, int arg5, IWakeLockCallback callback)122 public void acquireWakeLock(IBinder arg0, int arg1, String arg2, String arg2_5, WorkSource arg3, 123 String arg4, int arg5, IWakeLockCallback callback) 124 throws RemoteException { 125 // pass for now. 126 } 127 128 @Override acquireWakeLockAsync(IBinder arg0, int arg1, String arg2, String arg2_5, WorkSource arg3, String arg4)129 public void acquireWakeLockAsync(IBinder arg0, int arg1, String arg2, String arg2_5, 130 WorkSource arg3, String arg4) throws RemoteException { 131 // pass for now. 132 } 133 134 @Override acquireWakeLockWithUid(IBinder arg0, int arg1, String arg2, String arg2_5, int arg3, int arg4, IWakeLockCallback callback)135 public void acquireWakeLockWithUid(IBinder arg0, int arg1, String arg2, String arg2_5, 136 int arg3, int arg4, IWakeLockCallback callback) 137 throws RemoteException { 138 // pass for now. 139 } 140 141 @Override setPowerBoost(int boost, int durationMs)142 public void setPowerBoost(int boost, int durationMs) { 143 // pass for now. 144 } 145 146 @Override setPowerMode(int mode, boolean enabled)147 public void setPowerMode(int mode, boolean enabled) { 148 // pass for now. 149 } 150 151 @Override setPowerModeChecked(int mode, boolean enabled)152 public boolean setPowerModeChecked(int mode, boolean enabled) { 153 return false; 154 } 155 156 @Override crash(String arg0)157 public void crash(String arg0) throws RemoteException { 158 // pass for now. 159 } 160 161 @Override goToSleep(long arg0, int arg1, int arg2)162 public void goToSleep(long arg0, int arg1, int arg2) throws RemoteException { 163 // pass for now. 164 } 165 166 @Override goToSleepWithDisplayId(int arg0, long arg1, int arg2, int arg3)167 public void goToSleepWithDisplayId(int arg0, long arg1, int arg2, int arg3) 168 throws RemoteException { 169 // pass for now. 170 } 171 172 @Override nap(long arg0)173 public void nap(long arg0) throws RemoteException { 174 // pass for now. 175 } 176 177 @Override getBrightnessConstraint(int constraint)178 public float getBrightnessConstraint(int constraint) { 179 return PowerManager.BRIGHTNESS_MAX; 180 } 181 182 @Override reboot(boolean confirm, String reason, boolean wait)183 public void reboot(boolean confirm, String reason, boolean wait) { 184 // pass for now. 185 } 186 187 @Override rebootSafeMode(boolean confirm, boolean wait)188 public void rebootSafeMode(boolean confirm, boolean wait) { 189 // pass for now. 190 } 191 192 @Override shutdown(boolean confirm, String reason, boolean wait)193 public void shutdown(boolean confirm, String reason, boolean wait) { 194 // pass for now. 195 } 196 197 @Override releaseWakeLock(IBinder arg0, int arg1)198 public void releaseWakeLock(IBinder arg0, int arg1) throws RemoteException { 199 // pass for now. 200 } 201 202 @Override releaseWakeLockAsync(IBinder arg0, int arg1)203 public void releaseWakeLockAsync(IBinder arg0, int arg1) throws RemoteException { 204 // pass for now. 205 } 206 207 @Override updateWakeLockUids(IBinder arg0, int[] arg1)208 public void updateWakeLockUids(IBinder arg0, int[] arg1) throws RemoteException { 209 // pass for now. 210 } 211 212 @Override updateWakeLockUidsAsync(IBinder arg0, int[] arg1)213 public void updateWakeLockUidsAsync(IBinder arg0, int[] arg1) throws RemoteException { 214 // pass for now. 215 } 216 217 @Override setAttentionLight(boolean arg0, int arg1)218 public void setAttentionLight(boolean arg0, int arg1) throws RemoteException { 219 // pass for now. 220 } 221 222 @Override setStayOnSetting(int arg0)223 public void setStayOnSetting(int arg0) throws RemoteException { 224 // pass for now. 225 } 226 227 @Override updateWakeLockWorkSource(IBinder arg0, WorkSource arg1, String arg2)228 public void updateWakeLockWorkSource(IBinder arg0, WorkSource arg1, String arg2) throws RemoteException { 229 // pass for now. 230 } 231 232 @Override updateWakeLockCallback(IBinder arg0, IWakeLockCallback arg1)233 public void updateWakeLockCallback(IBinder arg0, IWakeLockCallback arg1) throws RemoteException { 234 // pass for now. 235 } 236 237 @Override isWakeLockLevelSupported(int level)238 public boolean isWakeLockLevelSupported(int level) throws RemoteException { 239 // pass for now. 240 return true; 241 } 242 243 @Override userActivity(int displayId, long time, int event, int flags)244 public void userActivity(int displayId, long time, int event, int flags) 245 throws RemoteException { 246 // pass for now. 247 } 248 249 @Override wakeUp(long time, @WakeReason int reason, String details , String opPackageName)250 public void wakeUp(long time, @WakeReason int reason, String details , String opPackageName) 251 throws RemoteException { 252 // pass for now. 253 } 254 255 @Override boostScreenBrightness(long time)256 public void boostScreenBrightness(long time) throws RemoteException { 257 // pass for now. 258 } 259 260 @Override isDeviceIdleMode()261 public boolean isDeviceIdleMode() throws RemoteException { 262 return false; 263 } 264 265 @Override isLightDeviceIdleMode()266 public boolean isLightDeviceIdleMode() throws RemoteException { 267 return false; 268 } 269 270 @Override isLowPowerStandbySupported()271 public boolean isLowPowerStandbySupported() { 272 return false; 273 } 274 275 @Override isLowPowerStandbyEnabled()276 public boolean isLowPowerStandbyEnabled() { 277 return false; 278 } 279 280 @Override setLowPowerStandbyPolicy(LowPowerStandbyPolicy policy)281 public void setLowPowerStandbyPolicy(LowPowerStandbyPolicy policy) { 282 // pass for now. 283 } 284 285 @Override getLowPowerStandbyPolicy()286 public LowPowerStandbyPolicy getLowPowerStandbyPolicy() { 287 return null; 288 } 289 290 @Override isExemptFromLowPowerStandby()291 public boolean isExemptFromLowPowerStandby() { 292 return true; 293 } 294 295 @Override isReasonAllowedInLowPowerStandby(int reason)296 public boolean isReasonAllowedInLowPowerStandby(int reason) { 297 return true; 298 } 299 300 @Override isFeatureAllowedInLowPowerStandby(String feature)301 public boolean isFeatureAllowedInLowPowerStandby(String feature) { 302 return true; 303 } 304 305 @Override acquireLowPowerStandbyPorts(IBinder token, List<LowPowerStandbyPortDescription> ports)306 public void acquireLowPowerStandbyPorts(IBinder token, 307 List<LowPowerStandbyPortDescription> ports) { 308 // pass for now 309 } 310 311 @Override releaseLowPowerStandbyPorts(IBinder token)312 public void releaseLowPowerStandbyPorts(IBinder token) { 313 // pass for now 314 } 315 316 @Override getActiveLowPowerStandbyPorts()317 public List<LowPowerStandbyPortDescription> getActiveLowPowerStandbyPorts() { 318 return Collections.emptyList(); 319 } 320 321 @Override setLowPowerStandbyEnabled(boolean enabled)322 public void setLowPowerStandbyEnabled(boolean enabled) { 323 // pass for now 324 } 325 326 @Override setLowPowerStandbyActiveDuringMaintenance(boolean activeDuringMaintenance)327 public void setLowPowerStandbyActiveDuringMaintenance(boolean activeDuringMaintenance) { 328 // pass for now 329 } 330 331 @Override forceLowPowerStandbyActive(boolean active)332 public void forceLowPowerStandbyActive(boolean active) { 333 // pass for now 334 } 335 336 @Override isScreenBrightnessBoosted()337 public boolean isScreenBrightnessBoosted() throws RemoteException { 338 return false; 339 } 340 341 @Override getLastShutdownReason()342 public int getLastShutdownReason() { 343 return PowerManager.SHUTDOWN_REASON_UNKNOWN; 344 } 345 346 @Override getLastSleepReason()347 public int getLastSleepReason() { 348 return PowerManager.GO_TO_SLEEP_REASON_TIMEOUT; 349 } 350 351 @Override setDozeAfterScreenOff(boolean mode)352 public void setDozeAfterScreenOff(boolean mode) throws RemoteException { 353 // pass for now. 354 } 355 356 @Override isAmbientDisplayAvailable()357 public boolean isAmbientDisplayAvailable() { 358 return false; 359 } 360 361 @Override suppressAmbientDisplay(String token, boolean suppress)362 public void suppressAmbientDisplay(String token, boolean suppress) { 363 // pass for now 364 } 365 366 @Override isAmbientDisplaySuppressedForToken(String token)367 public boolean isAmbientDisplaySuppressedForToken(String token) { 368 return false; 369 } 370 371 @Override isAmbientDisplaySuppressedForTokenByApp(String token, int appUid)372 public boolean isAmbientDisplaySuppressedForTokenByApp(String token, int appUid) { 373 return false; 374 } 375 376 @Override isAmbientDisplaySuppressed()377 public boolean isAmbientDisplaySuppressed() { 378 return false; 379 } 380 381 @Override forceSuspend()382 public boolean forceSuspend() { 383 return false; 384 } 385 } 386