1 /* 2 * Copyright (C) 2020 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.systemui.util.sensors; 18 19 import java.util.ArrayList; 20 import java.util.List; 21 22 public class FakeThresholdSensor implements ThresholdSensor { 23 private boolean mIsLoaded; 24 private boolean mPaused; 25 private List<Listener> mListeners = new ArrayList<>(); 26 FakeThresholdSensor()27 public FakeThresholdSensor() { 28 } 29 setTag(String tag)30 public void setTag(String tag) { 31 } 32 33 @Override setDelay(int delay)34 public void setDelay(int delay) { 35 } 36 37 @Override isLoaded()38 public boolean isLoaded() { 39 return mIsLoaded; 40 } 41 42 @Override pause()43 public void pause() { 44 mPaused = true; 45 } 46 47 @Override resume()48 public void resume() { 49 mPaused = false; 50 } 51 52 @Override register(ThresholdSensor.Listener listener)53 public void register(ThresholdSensor.Listener listener) { 54 mListeners.add(listener); 55 } 56 57 @Override unregister(ThresholdSensor.Listener listener)58 public void unregister(ThresholdSensor.Listener listener) { 59 mListeners.remove(listener); 60 } 61 62 @Override getName()63 public String getName() { 64 return "FakeThresholdSensorName"; 65 } 66 67 @Override getType()68 public String getType() { 69 return "FakeThresholdSensorType"; 70 } 71 setLoaded(boolean loaded)72 public void setLoaded(boolean loaded) { 73 mIsLoaded = loaded; 74 } 75 triggerEvent(boolean below, long timestampNs)76 void triggerEvent(boolean below, long timestampNs) { 77 if (!mPaused) { 78 for (Listener listener : mListeners) { 79 listener.onThresholdCrossed(new ThresholdSensorEvent(below, timestampNs)); 80 } 81 } 82 } 83 isPaused()84 boolean isPaused() { 85 return mPaused; 86 } 87 getNumListeners()88 int getNumListeners() { 89 return mListeners.size(); 90 } 91 } 92