Make generic BaseNetworkObserver.

This makes it easier to add new INetworkManagementEventObserver events
in future.

Change-Id: I432263d745558de4b878f313c1951230ed9db2b1
This commit is contained in:
Jeff Sharkey
2012-08-05 14:29:23 -07:00
parent a1ef1bec2a
commit 60e6c1ac06

View File

@@ -83,6 +83,7 @@ import com.android.internal.telephony.PhoneConstants;
import com.android.server.am.BatteryStatsService; import com.android.server.am.BatteryStatsService;
import com.android.server.connectivity.Tethering; import com.android.server.connectivity.Tethering;
import com.android.server.connectivity.Vpn; import com.android.server.connectivity.Vpn;
import com.android.server.net.BaseNetworkObserver;
import com.google.android.collect.Lists; import com.google.android.collect.Lists;
import com.google.android.collect.Sets; import com.google.android.collect.Sets;
import dalvik.system.DexClassLoader; import dalvik.system.DexClassLoader;
@@ -524,6 +525,7 @@ public class ConnectivityService extends IConnectivityManager.Stub {
try { try {
nmService.registerObserver(mTethering); nmService.registerObserver(mTethering);
nmService.registerObserver(mVpn); nmService.registerObserver(mVpn);
nmService.registerObserver(mDataActivityObserver);
} catch (RemoteException e) { } catch (RemoteException e) {
loge("Error registering observer :" + e); loge("Error registering observer :" + e);
} }
@@ -535,13 +537,6 @@ public class ConnectivityService extends IConnectivityManager.Stub {
mSettingsObserver = new SettingsObserver(mHandler, EVENT_APPLY_GLOBAL_HTTP_PROXY); mSettingsObserver = new SettingsObserver(mHandler, EVENT_APPLY_GLOBAL_HTTP_PROXY);
mSettingsObserver.observe(mContext); mSettingsObserver.observe(mContext);
INetworkManagementEventObserver netdObserver = new NetdObserver();
try {
mNetd.registerObserver(netdObserver);
} catch (RemoteException e) {
loge("Error registering observer :" + e);
}
loadGlobalProxy(); loadGlobalProxy();
} }
@@ -922,18 +917,13 @@ public class ConnectivityService extends IConnectivityManager.Stub {
return tracker != null && tracker.setRadio(turnOn); return tracker != null && tracker.setRadio(turnOn);
} }
private class NetdObserver extends INetworkManagementEventObserver.Stub { private INetworkManagementEventObserver mDataActivityObserver = new BaseNetworkObserver() {
@Override
public void interfaceClassDataActivityChanged(String label, boolean active) { public void interfaceClassDataActivityChanged(String label, boolean active) {
int deviceType = Integer.parseInt(label); int deviceType = Integer.parseInt(label);
sendDataActivityBroadcast(deviceType, active); sendDataActivityBroadcast(deviceType, active);
} }
};
public void interfaceStatusChanged(String iface, boolean up) {}
public void interfaceLinkStateChanged(String iface, boolean up) {}
public void interfaceAdded(String iface) {}
public void interfaceRemoved(String iface) {}
public void limitReached(String limitName, String iface) {}
}
/** /**
* Used to notice when the calling process dies so we can self-expire * Used to notice when the calling process dies so we can self-expire