Chromium Code Reviews| Index: android_webview/java/src/org/chromium/android_webview/AwContentsIoThreadClient.java |
| diff --git a/android_webview/java/src/org/chromium/android_webview/AwContentsIoThreadClient.java b/android_webview/java/src/org/chromium/android_webview/AwContentsIoThreadClient.java |
| index b82cb12635612436639c7fe9139e193d6bb70972..6a456bb8a87e0ff03162d8c285db9b6a2a59c019 100644 |
| --- a/android_webview/java/src/org/chromium/android_webview/AwContentsIoThreadClient.java |
| +++ b/android_webview/java/src/org/chromium/android_webview/AwContentsIoThreadClient.java |
| @@ -7,6 +7,8 @@ package org.chromium.android_webview; |
| import org.chromium.base.CalledByNative; |
| import org.chromium.base.JNINamespace; |
| +import java.util.HashMap; |
| + |
| /** |
| * Delegate for handling callbacks. All methods are called on the IO thread. |
| * |
| @@ -14,26 +16,44 @@ import org.chromium.base.JNINamespace; |
| * provided functionality. |
| */ |
| @JNINamespace("android_webview") |
| -public interface AwContentsIoThreadClient { |
| +public abstract class AwContentsIoThreadClient { |
| @CalledByNative |
| - public int getCacheMode(); |
| + public abstract int getCacheMode(); |
| @CalledByNative |
| - public InterceptedRequestData shouldInterceptRequest(String url, boolean isMainFrame); |
| + public abstract void onDownloadStart(String url, String userAgent, |
| + String contentDisposition, String mimeType, long contentLength); |
| @CalledByNative |
| - public boolean shouldBlockContentUrls(); |
| + public abstract void newLoginRequest(String realm, String account, String args); |
| @CalledByNative |
| - public boolean shouldBlockFileUrls(); |
| + public abstract boolean shouldBlockContentUrls(); |
| @CalledByNative |
| - public boolean shouldBlockNetworkLoads(); |
| + public abstract boolean shouldBlockFileUrls(); |
| @CalledByNative |
| - public void onDownloadStart(String url, String userAgent, |
| - String contentDisposition, String mimeType, long contentLength); |
| + public abstract boolean shouldBlockNetworkLoads(); |
| + |
| + public abstract InterceptedRequestData shouldInterceptRequest( |
| + AwContentsClient.ShouldInterceptRequestParams params); |
| + |
| + // Protected methods --------------------------------------------------------------------------- |
| @CalledByNative |
| - public void newLoginRequest(String realm, String account, String args); |
| + protected InterceptedRequestData shouldInterceptRequest(String url, boolean isMainFrame, |
| + boolean hasUserGesture, String method, String[] headerNames, String[] headerValues) { |
|
benm (inactive)
2014/05/15 17:43:15
requestHeaders
mkosiba (inactive)
2014/06/19 17:54:14
Done.
|
| + AwContentsClient.ShouldInterceptRequestParams params = |
| + new AwContentsClient.ShouldInterceptRequestParams(); |
| + params.url = url; |
| + params.isMainFrame = isMainFrame; |
| + params.hasUserGesture = hasUserGesture; |
| + params.method = method; |
| + params.headers = new HashMap<String, String>(headerNames.length); |
| + for (int i = 0; i < headerNames.length; ++i) { |
| + params.headers.put(headerNames[i], headerValues[i]); |
| + } |
| + return shouldInterceptRequest(params); |
| + } |
| } |