Commit be2cdc93 authored by Anna Malova's avatar Anna Malova Committed by Commit Bot

Use Network instead of network handle in AwPacProcessor.

See b/165192953.

Bug: 1085115
Change-Id: I56a7f3108d408a56c3663921a86ba8fd44f1530a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2362915Reviewed-by: default avatarRichard Coles <torne@chromium.org>
Commit-Queue: Anna Malova <amalova@chromium.org>
Cr-Commit-Position: refs/heads/master@{#799568}
parent 9f306d8e
...@@ -23,42 +23,46 @@ import org.chromium.base.annotations.NativeMethods; ...@@ -23,42 +23,46 @@ import org.chromium.base.annotations.NativeMethods;
@TargetApi(28) @TargetApi(28)
public class AwPacProcessor { public class AwPacProcessor {
private long mNativePacProcessor; private long mNativePacProcessor;
private long mNetworkHandle; private Network mNetwork;
public static final long NETWORK_UNSPECIFIED = 0; public static final long NETWORK_UNSPECIFIED = 0;
private static class LazyHolder { private static class LazyHolder {
static final AwPacProcessor sInstance = new AwPacProcessor(NETWORK_UNSPECIFIED); static final AwPacProcessor sInstance = new AwPacProcessor(null);
} }
public static AwPacProcessor getInstance() { public static AwPacProcessor getInstance() {
return LazyHolder.sInstance; return LazyHolder.sInstance;
} }
public AwPacProcessor(long networkHandle) { public AwPacProcessor(Network network) {
mNetworkHandle = networkHandle; if (network == null) {
mNativePacProcessor = AwPacProcessorJni.get().createNativePacProcessor(networkHandle); mNativePacProcessor =
AwPacProcessorJni.get().createNativePacProcessor(NETWORK_UNSPECIFIED);
if (mNetworkHandle != NETWORK_UNSPECIFIED) { return;
Context context = ContextUtils.getApplicationContext(); }
ConnectivityManager connectivityManager =
(ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); mNetwork = network;
NetworkRequest.Builder builder = new NetworkRequest.Builder(); mNativePacProcessor =
AwPacProcessorJni.get().createNativePacProcessor(mNetwork.getNetworkHandle());
connectivityManager.registerNetworkCallback(
builder.build(), new ConnectivityManager.NetworkCallback() { Context context = ContextUtils.getApplicationContext();
@Override ConnectivityManager connectivityManager =
public void onLinkPropertiesChanged( (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
Network network, LinkProperties linkProperties) { NetworkRequest.Builder builder = new NetworkRequest.Builder();
if (network.getNetworkHandle() == mNetworkHandle) {
updateNetworkLinkAddress(linkProperties); connectivityManager.registerNetworkCallback(
} builder.build(), new ConnectivityManager.NetworkCallback() {
@Override
public void onLinkPropertiesChanged(
Network network, LinkProperties linkProperties) {
if (network.equals(mNetwork)) {
updateNetworkLinkAddress(linkProperties);
} }
}); }
});
updateNetworkLinkAddress(connectivityManager.getLinkProperties( updateNetworkLinkAddress(connectivityManager.getLinkProperties(mNetwork));
Network.fromNetworkHandle(mNetworkHandle)));
}
} }
private void updateNetworkLinkAddress(LinkProperties linkProperties) { private void updateNetworkLinkAddress(LinkProperties linkProperties) {
...@@ -82,6 +86,10 @@ public class AwPacProcessor { ...@@ -82,6 +86,10 @@ public class AwPacProcessor {
return AwPacProcessorJni.get().makeProxyRequest(mNativePacProcessor, this, url); return AwPacProcessorJni.get().makeProxyRequest(mNativePacProcessor, this, url);
} }
public Network getNetwork() {
return mNetwork;
}
public static void initializeEnvironment() { public static void initializeEnvironment() {
AwPacProcessorJni.get().initializeEnvironment(); AwPacProcessorJni.get().initializeEnvironment();
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment