VPN: Use List<String> instead for dnsServers and searchDomains.

Change-Id: I5d72c182ad47f59121a04b68ec6c2d164e2d00a8
This commit is contained in:
Chia-chi Yeh
2011-07-01 01:09:42 -07:00
parent 1f7746b39b
commit 8909b10175
3 changed files with 14 additions and 6 deletions

View File

@@ -23,6 +23,8 @@ import android.os.Parcel;
import android.os.Parcelable;
import android.os.SystemClock;
import java.util.List;
/**
* A simple container used to carry information in VpnBuilder, VpnDialogs,
* and com.android.server.connectivity.Vpn. Internal use only.
@@ -62,7 +64,8 @@ public class VpnConfig implements Parcelable {
public int mtu = -1;
public String addresses;
public String routes;
public String dnsServers;
public List<String> dnsServers;
public List<String> searchDomains;
public long startTime = -1;
@Override
@@ -79,7 +82,8 @@ public class VpnConfig implements Parcelable {
out.writeInt(mtu);
out.writeString(addresses);
out.writeString(routes);
out.writeString(dnsServers);
out.writeStringList(dnsServers);
out.writeStringList(searchDomains);
out.writeLong(startTime);
}
@@ -95,7 +99,8 @@ public class VpnConfig implements Parcelable {
config.mtu = in.readInt();
config.addresses = in.readString();
config.routes = in.readString();
config.dnsServers = in.readString();
config.dnsServers = in.createStringArrayList();
config.searchDomains = in.createStringArrayList();
config.startTime = in.readLong();
return config;
}

View File

@@ -2533,7 +2533,7 @@ public class ConnectivityService extends IConnectivityManager.Stub {
private VpnCallback() {
}
public synchronized void override(String[] dnsServers) {
public synchronized void override(List<String> dnsServers, List<String> searchDomains) {
// TODO: override DNS servers and http proxy.
}

View File

@@ -190,11 +190,14 @@ public class Vpn extends INetworkManagementEventObserver.Stub {
throw e;
}
String dnsServers = (config.dnsServers == null) ? "" : config.dnsServers.trim();
mCallback.override(dnsServers.isEmpty() ? null : dnsServers.split(" "));
// Override DNS servers and search domains.
mCallback.override(config.dnsServers, config.searchDomains);
// Fill more values.
config.packageName = mPackageName;
config.interfaceName = mInterfaceName;
// Show the notification!
showNotification(config, label, bitmap);
return descriptor;
}