Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(35)

Unified Diff: android_webview/java/src/org/chromium/android_webview/AwContentsIoThreadClient.java

Issue 284123004: [android_webview] Add more params to request intercepting. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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);
+ }
}

Powered by Google App Engine
This is Rietveld 408576698