setMTU(getInt(bundle, VpnProfileDataSource.KEY_MTU, Constants.MTU_MIN, Constants.MTU_MAX));
setNATKeepAlive(getInt(bundle, VpnProfileDataSource.KEY_NAT_KEEPALIVE, Constants.NAT_KEEPALIVE_MIN, Constants.NAT_KEEPALIVE_MAX));
- setIkeProposal(bundle.getString(VpnProfileDataSource.KEY_IKE_PROPOSAL));
- setEspProposal(bundle.getString(VpnProfileDataSource.KEY_ESP_PROPOSAL));
- setDnsServers(bundle.getString(VpnProfileDataSource.KEY_DNS_SERVERS));
+ setIkeProposal(getString(bundle, VpnProfileDataSource.KEY_IKE_PROPOSAL));
+ setEspProposal(getString(bundle, VpnProfileDataSource.KEY_ESP_PROPOSAL));
+ setDnsServers(getString(bundle, VpnProfileDataSource.KEY_DNS_SERVERS));
flags = addPositiveFlag(flags, bundle, KEY_TRANSPORT_IPV6_FLAG, VpnProfile.FLAGS_IPv6_TRANSPORT);
final Bundle splitTunneling = bundle.getBundle(VpnProfileDataSource.KEY_SPLIT_TUNNELING);
splitFlags = addPositiveFlag(splitFlags, splitTunneling, KEY_SPLIT_TUNNELLING_BLOCK_IPV4_FLAG, VpnProfile.SPLIT_TUNNELING_BLOCK_IPV4);
splitFlags = addPositiveFlag(splitFlags, splitTunneling, KEY_SPLIT_TUNNELLING_BLOCK_IPV6_FLAG, VpnProfile.SPLIT_TUNNELING_BLOCK_IPV6);
- setExcludedSubnets(splitTunneling.getString(VpnProfileDataSource.KEY_EXCLUDED_SUBNETS));
- setIncludedSubnets(splitTunneling.getString(VpnProfileDataSource.KEY_INCLUDED_SUBNETS));
+ setExcludedSubnets(getString(splitTunneling, VpnProfileDataSource.KEY_EXCLUDED_SUBNETS));
+ setIncludedSubnets(getString(splitTunneling, VpnProfileDataSource.KEY_INCLUDED_SUBNETS));
}
setSplitTunneling(splitFlags);
setGateway(remote.getString(VpnProfileDataSource.KEY_GATEWAY));
setPort(getInt(remote, VpnProfileDataSource.KEY_PORT, 1, 65_535));
- setRemoteId(remote.getString(VpnProfileDataSource.KEY_REMOTE_ID));
+ setRemoteId(getString(remote, VpnProfileDataSource.KEY_REMOTE_ID));
final String certificateData = remote.getString(VpnProfileDataSource.KEY_CERTIFICATE);
if (!TextUtils.isEmpty(certificateData))
return flags;
}
- setLocalId(local.getString(VpnProfileDataSource.KEY_LOCAL_ID));
- setUsername(local.getString(VpnProfileDataSource.KEY_USERNAME));
- setPassword(local.getString(VpnProfileDataSource.KEY_PASSWORD));
+ setLocalId(getString(local, VpnProfileDataSource.KEY_LOCAL_ID));
+ setUsername(getString(local, VpnProfileDataSource.KEY_USERNAME));
+ setPassword(getString(local, VpnProfileDataSource.KEY_PASSWORD));
final String userCertificateData = local.getString(VpnProfileDataSource.KEY_USER_CERTIFICATE);
final String userCertificatePassword = local.getString(VpnProfileDataSource.KEY_USER_CERTIFICATE_PASSWORD, "");
return value < min || value > max ? null : value;
}
+ private static String getString(final Bundle bundle, final String key)
+ {
+ final String value = bundle.getString(key);
+ return TextUtils.isEmpty(value) ? null : value;
+ }
+
private static int addPositiveFlag(int flags, Bundle bundle, String key, int flag)
{
if (bundle.getBoolean(key))