1/*
2 * Copyright (C) 2016 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
5 * except in compliance with the License. You may obtain a copy of the License at
6 *
7 *      http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software distributed under the
10 * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
11 * KIND, either express or implied. See the License for the specific language governing
12 * permissions and limitations under the License.
13 */
14
15package com.android.systemui.utils.leaks;
16
17import android.os.Bundle;
18import android.testing.LeakCheck;
19
20import com.android.settingslib.net.DataUsageController;
21import com.android.systemui.statusbar.policy.DataSaverController;
22import com.android.systemui.statusbar.policy.NetworkController;
23import com.android.systemui.statusbar.policy.NetworkController.SignalCallback;
24
25public class FakeNetworkController extends BaseLeakChecker<SignalCallback>
26        implements NetworkController {
27
28    private final FakeDataSaverController mDataSaverController;
29    private final BaseLeakChecker<EmergencyListener> mEmergencyChecker;
30
31    public FakeNetworkController(LeakCheck test) {
32        super(test, "network");
33        mDataSaverController = new FakeDataSaverController(test);
34        mEmergencyChecker = new BaseLeakChecker<>(test, "emergency");
35    }
36
37    @Override
38    public void addEmergencyListener(EmergencyListener listener) {
39        mEmergencyChecker.addCallback(listener);
40    }
41
42    @Override
43    public void removeEmergencyListener(EmergencyListener listener) {
44        mEmergencyChecker.removeCallback(listener);
45    }
46
47    @Override
48    public boolean hasEmergencyCryptKeeperText() {
49        return false;
50    }
51
52    @Override
53    public boolean isRadioOn() {
54        return false;
55    }
56
57    @Override
58    public DataSaverController getDataSaverController() {
59        return mDataSaverController;
60    }
61
62    @Override
63    public boolean hasMobileDataFeature() {
64        return false;
65    }
66
67    @Override
68    public void setWifiEnabled(boolean enabled) {
69
70    }
71
72    @Override
73    public AccessPointController getAccessPointController() {
74        return null;
75    }
76
77    @Override
78    public DataUsageController getMobileDataController() {
79        return null;
80    }
81
82    @Override
83    public boolean hasVoiceCallingFeature() {
84        return false;
85    }
86
87    @Override
88    public void dispatchDemoCommand(String command, Bundle args) {
89
90    }
91}
92