FrameworkFacade.java revision 3fff4c9bd5db730141e75706a7229814d403b363
1
2package com.android.server.wifi;
3
4import android.app.PendingIntent;
5import android.content.Context;
6import android.content.Intent;
7import android.net.TrafficStats;
8import android.net.ip.IpManager;
9import android.os.Handler;
10import android.os.IBinder;
11import android.os.ServiceManager;
12import android.provider.Settings;
13
14/**
15 * This class allows overriding objects with mocks to write unit tests
16 */
17public class FrameworkFacade {
18    public static final String TAG = "FrameworkFacade";
19
20    public BaseWifiLogger makeBaseLogger() {
21        return new BaseWifiLogger();
22    }
23
24    public BaseWifiLogger makeRealLogger(WifiStateMachine stateMachine, WifiNative wifiNative) {
25        return new WifiLogger(stateMachine, wifiNative);
26    }
27
28    public int getIntegerSetting(Context context, String name, int def) {
29        return Settings.Global.getInt(context.getContentResolver(), name, def);
30    }
31
32    public long getLongSetting(Context context, String name, long def) {
33        return Settings.Global.getLong(context.getContentResolver(), name, def);
34    }
35
36    public String getStringSetting(Context context, String name) {
37        return Settings.Global.getString(context.getContentResolver(), name);
38    }
39
40    public IBinder getService(String serviceName) {
41        return ServiceManager.getService(serviceName);
42    }
43
44    public PendingIntent getBroadcast(Context context, int requestCode, Intent intent, int flags) {
45        return PendingIntent.getBroadcast(context, requestCode, intent, flags);
46    }
47
48    public SupplicantStateTracker makeSupplicantStateTracker(Context context,
49             WifiStateMachine wifiStateMachine, WifiConfigStore configStore, Handler handler) {
50        return new SupplicantStateTracker(context, wifiStateMachine, configStore, handler);
51    }
52
53    public WifiApConfigStore makeApConfigStore(Context context) {
54        return new WifiApConfigStore(context);
55    }
56
57    public long getTxPackets(String iface) {
58        return TrafficStats.getTxPackets(iface);
59    }
60
61    public long getRxPackets(String iface) {
62        return TrafficStats.getRxPackets(iface);
63    }
64
65    public IpManager makeIpManager(
66            Context context, String iface, IpManager.Callback callback) {
67        return new IpManager(context, iface, callback);
68    }
69}
70
71