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 fe59d2bbf8aad378e38aa6adac44c5ada9a3b06f..087e01714ce6a61651e6bcb611953fb84643475b 100644 |
--- a/android_webview/java/src/org/chromium/android_webview/AwContentsIoThreadClient.java |
+++ b/android_webview/java/src/org/chromium/android_webview/AwContentsIoThreadClient.java |
@@ -4,6 +4,9 @@ |
package org.chromium.android_webview; |
+import android.util.ArrayMap; |
+ |
+import org.chromium.android_webview.AwContentsClient; |
import org.chromium.base.CalledByNative; |
import org.chromium.base.JNINamespace; |
@@ -14,29 +17,48 @@ 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 boolean shouldBlockContentUrls(); |
@CalledByNative |
- public boolean shouldBlockContentUrls(); |
+ public abstract boolean shouldBlockFileUrls(); |
@CalledByNative |
- public boolean shouldBlockFileUrls(); |
+ public abstract boolean shouldBlockNetworkLoads(); |
@CalledByNative |
- public boolean shouldBlockNetworkLoads(); |
+ public abstract boolean shouldAcceptThirdPartyCookies(); |
@CalledByNative |
- public boolean shouldAcceptThirdPartyCookies(); |
+ public abstract void onDownloadStart(String url, String userAgent, |
+ String contentDisposition, String mimeType, long contentLength); |
@CalledByNative |
- public void onDownloadStart(String url, String userAgent, |
- String contentDisposition, String mimeType, long contentLength); |
+ public abstract void newLoginRequest(String realm, String account, String args); |
+ |
+ public abstract AwWebResourceResponse shouldInterceptRequest( |
+ AwContentsClient.ShouldInterceptRequestParams params); |
+ |
+ // Protected methods --------------------------------------------------------------------------- |
@CalledByNative |
- public void newLoginRequest(String realm, String account, String args); |
+ protected AwWebResourceResponse shouldInterceptRequest(String url, boolean isMainFrame, |
+ boolean hasUserGesture, String method, String[] requestHeaderNames, |
+ String[] requestHeaderValues) { |
+ AwContentsClient.ShouldInterceptRequestParams params = |
+ new AwContentsClient.ShouldInterceptRequestParams(); |
+ params.url = url; |
+ params.isMainFrame = isMainFrame; |
+ params.hasUserGesture = hasUserGesture; |
+ params.method = method; |
+ params.requestHeaders = new ArrayMap<String, String>(requestHeaderNames.length); |
+ for (int i = 0; i < requestHeaderNames.length; ++i) { |
+ params.requestHeaders.put(requestHeaderNames[i], requestHeaderValues[i]); |
+ } |
+ return shouldInterceptRequest(params); |
+ } |
} |