summaryrefslogtreecommitdiffstats
path: root/android_webview/browser/net
Commit message (Collapse)AuthorAgeFilesLines
* Revert 219709 "Remove the Extensions URLRequestContext."earthdok@chromium.org2013-08-272-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reverted due to crashes under memory tools. BUG=280138 > Remove the Extensions URLRequestContext. > > Though chrome-extension: scheme URLs support cookies, they do not share > a namespace with http: and https:. In particular, chrome-extension://a and > http://a should not have the same set of cookies. > > To enforce this, previously the code created a completely separate > URLRequestContext for servicing chrome-extension: schemes. However, > the code really only used this object as a method for conveying the > correct cookie jar from Profile creation to a few spots where cookies > were accessed; the rest of the URLRequestContext functionality was unused. > > This CL removes the Extensions URLRequestContext code and replaces it > with APIs that directly expose the needed net::CookieStore. > > Lastly, CookieMonster::EnableFileScheme() is removed and > CookieMonster::Delegate is renamed CookieMonsterDelegate. > > EnableFileScheme is an inherently racy API because > CookieMonsters are creatable on all threads and this > function sets an unprotected global flag. CookieMonsterDelegate > is preferable to the nested interface because it can now be > forward declared. > > TBRing darin and sky to cover the rest of the mechanical unittest changes. > > TBR=darin,sky > BUG=158386,159193,57884 > > Review URL: https://chromiumcodereview.appspot.com/12546016 TBR=ajwong@chromium.org Review URL: https://codereview.chromium.org/23551005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219787 0039d316-1c4b-4281-b951-d872f2087c98
* Remove the Extensions URLRequestContext.ajwong@chromium.org2013-08-272-7/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Though chrome-extension: scheme URLs support cookies, they do not share a namespace with http: and https:. In particular, chrome-extension://a and http://a should not have the same set of cookies. To enforce this, previously the code created a completely separate URLRequestContext for servicing chrome-extension: schemes. However, the code really only used this object as a method for conveying the correct cookie jar from Profile creation to a few spots where cookies were accessed; the rest of the URLRequestContext functionality was unused. This CL removes the Extensions URLRequestContext code and replaces it with APIs that directly expose the needed net::CookieStore. Lastly, CookieMonster::EnableFileScheme() is removed and CookieMonster::Delegate is renamed CookieMonsterDelegate. EnableFileScheme is an inherently racy API because CookieMonsters are creatable on all threads and this function sets an unprotected global flag. CookieMonsterDelegate is preferable to the nested interface because it can now be forward declared. TBRing darin and sky to cover the rest of the mechanical unittest changes. TBR=darin,sky BUG=158386,159193,57884 Review URL: https://chromiumcodereview.appspot.com/12546016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219709 0039d316-1c4b-4281-b951-d872f2087c98
* Make Android Webview URLRequestContext follow content API expectations better.ajwong@chromium.org2013-08-262-120/+107
| | | | | | | | | | | | | After this CL, AwBrowserContext::CreateRequestContext will actually be responsible for creating the URLRequestContextGetter which makes it behave much closer to the coding pattern used by Profile. This is necessary to unblock movement of the URLRequestContext creation into content. BUG=159193 R=joth@chromium.org, mkosiba@chromium.org Review URL: https://codereview.chromium.org/22812016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219620 0039d316-1c4b-4281-b951-d872f2087c98
* Remove WorkerPool dependency from URLRequestFileJob.earthdok@chromium.org2013-08-191-1/+6
| | | | | | | | | | | | Make net::URLRequestFileJob pass a TaskRunner to FileStream, instead of using a deprecated FileStream constructor that depends on WorkerPool. This TaskRunner is obtained from the blocking pool where possible. Also, remove two explicit uses of WorkerPool in net/url_request/ and chrome/browser/. Removes dependency on deprecated code. Also fixes memory leaks in unit tests caused by FileStream destruction tasks not running to completion in WorkerPool. BUG=248513, 251774 Review URL: https://chromiumcodereview.appspot.com/22795006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218273 0039d316-1c4b-4281-b951-d872f2087c98
* Send X-Requested-With header for complying with webview classic.sgurun@chromium.org2013-08-151-0/+6
| | | | | | | | BUG=b/10312777 Review URL: https://chromiumcodereview.appspot.com/23012004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@217862 0039d316-1c4b-4281-b951-d872f2087c98
* Change BrowserThreadDelegate to run Init() async.mariakhomenko@chromium.org2013-07-172-15/+19
| | | | | | | | | | | | | | | | After this change Init() method will be run as the first task on the thread asynchronously from the UI thread initialization. This allows us to speed up the startup by making IOThread Init() a non-blocking task for the UI. Changes AwUrlRequestContextGetter to create a CookieMonster on UI thread since it needs to happen synchonously. BUG=258231 Review URL: https://chromiumcodereview.appspot.com/18618004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@212003 0039d316-1c4b-4281-b951-d872f2087c98
* Use a direct include of the message_loop header in android_webview/, apps/, ↵avi@chromium.org2013-07-173-3/+3
| | | | | | | | | | | | ash/. BUG=260807 TEST=none TBR=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/19269013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211925 0039d316-1c4b-4281-b951-d872f2087c98
* Restore session cookies for classic compatibility.sgurun@chromium.org2013-07-151-1/+1
| | | | | | | | BUG= 9416203 Review URL: https://chromiumcodereview.appspot.com/18100006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211622 0039d316-1c4b-4281-b951-d872f2087c98
* [Android WebView] Persist cookiesboliu@chromium.org2013-06-241-0/+10
| | | | | | | | | | | | Cookies where never persisted when Android WebView network stack initialization, and this will fix that. BUG=internal b/9416203 NOTRY=true Review URL: https://chromiumcodereview.appspot.com/17617003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208300 0039d316-1c4b-4281-b951-d872f2087c98
* Update Android to use scoped_refptr<T>::get() rather than implicit "operator T*"rsleevi@chromium.org2013-06-131-4/+4
| | | | | | | | | | | Android fixes and post-Linux cleanup BUG=110610 TBR=darin@chromium.org Review URL: https://codereview.chromium.org/16907002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@206179 0039d316-1c4b-4281-b951-d872f2087c98
* Update includes of message_loop_proxy.brettw@chromium.org2013-06-101-1/+1
| | | | | | | | | | | This keeps the forwarding header, just updates all current callers. BUG= R=avi@chromium.org Review URL: https://codereview.chromium.org/16514006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205306 0039d316-1c4b-4281-b951-d872f2087c98
* Use a direct include of strings headers in android_webview/.avi@chromium.org2013-06-101-1/+1
| | | | | | | | | | BUG=247723 TEST=none TBR=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/16599011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205262 0039d316-1c4b-4281-b951-d872f2087c98
* Switch Android WebView to use the simple cachejoth@chromium.org2013-05-211-2/+9
| | | | | | | | | NOTRY=true BUG=241854 Review URL: https://chromiumcodereview.appspot.com/15294019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201344 0039d316-1c4b-4281-b951-d872f2087c98
* Enable Clang warnings for implementation files on all platforms.rsleevi@chromium.org2013-05-151-18/+16
| | | | | | | | | | This fixes a few remaining issues for Android builds BUG=115047 Review URL: https://chromiumcodereview.appspot.com/14876034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@200125 0039d316-1c4b-4281-b951-d872f2087c98
* Override server-side simple-cache trial with commandline switches.pasko@google.com2013-05-131-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | FIXING broken about:flags for simple cache on Android. Until recently we used a trick to avoid dedicated global settings in net::disk_cache other than the objects belonging to the infrastructure of the trials. The commandline flag would change the experiment group on the chromium side, while one the net/ side we would check which group we belong to. Later we decided to switch to the server-controlled experiments. This went into a conflict with our approach: the server-controlled experiment would override the settings set by the command-line option. This is unfortunate. Stevet@ suggests that there are plans to avoid overriding the experiment groups by the server config, but in the meantime the trick stops working. Solve this by adding backend type enum provided at backend instantiation. TBR=jam@chromium.org BUG=239461 Review URL: https://chromiumcodereview.appspot.com/14828004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@199708 0039d316-1c4b-4281-b951-d872f2087c98
* Removed static factories for data, ftp, file, and about jobs.pauljensen@chromium.org2013-05-083-0/+7
| | | | | | | | | | | | | | | | | Instead add corresponding ProtocolHandlers as needed. Remove URLRequestContext members used by these static factories. Bake FtpAuthCache into FtpProtocolHandler as it was already unique per FtpProtocolHandler. This is a revived version of http://crrev.com/10836206 BUG=142945 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=188912 Review URL: https://chromiumcodereview.appspot.com/11931024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@198915 0039d316-1c4b-4281-b951-d872f2087c98
* android_webview: Use base::MessageLoop.xhwang@chromium.org2013-04-272-9/+8
| | | | | | | | BUG=236029 Review URL: https://chromiumcodereview.appspot.com/14314022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@196944 0039d316-1c4b-4281-b951-d872f2087c98
* android_webview: Remove use of ALLOW_THIS_IN_INITIALIZER_LIST.scherkus@chromium.org2013-04-261-1/+1
| | | | | | | | | | It's no longer providing value as the MSVC warning is disabled during compilation. Refer to bug for details. BUG=234765 Review URL: https://codereview.chromium.org/14497005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@196810 0039d316-1c4b-4281-b951-d872f2087c98
* Hide ContentClient getters from embedders so that they they don't reuse ↵jam@chromium.org2013-04-051-2/+2
| | | | | | | | | content's embedder API. The main reasons are that it makes content's embedder interfaces harder to change if they're reused by the embedder, and that its makes it confusing for embedder code when there are multiple ways to do the same thing. BUG=227047 Review URL: https://codereview.chromium.org/13409003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192649 0039d316-1c4b-4281-b951-d872f2087c98
* [Android] Fix remaining linker errors for components buildyfriedman@chromium.org2013-04-031-4/+4
| | | | | | | | | | | Miscellaneous missing dependencies and a few more exports. BUG=158821 Review URL: https://chromiumcodereview.appspot.com/12988003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191944 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 188912 "Removed static factories for data, ftp, file, and..."kbr@chromium.org2013-03-193-7/+0
| | | | | | | | | | | | | | | | | | | | | Broke layout tests userscripts/user-script-plugin-document.html and plugins/plugin-document-back-forward.html on all platforms. > Removed static factories for data, ftp, file, and about jobs. > Instead add corresponding ProtocolHandlers as needed. > Remove URLRequestContext members used by these static > factories. Bake FtpAuthCache into FtpProtocolHandler as it > was already unique per FtpProtocolHandler. > This is a revived version of http://crrev.com/10836206 > > BUG=142945 > > > Review URL: https://chromiumcodereview.appspot.com/11931024 TBR=pauljensen@chromium.org Review URL: https://codereview.chromium.org/12605011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@188927 0039d316-1c4b-4281-b951-d872f2087c98
* Update TestURLRequest constructor interface in unit tests.tedv@chromium.org2013-03-191-1/+2
| | | | | | | | | | | | | | | | | | | The webkit and android_webview unit tests that create TestURLRequest objects are updated in this patch to explicitly specify which network delegate they use, rather than extracting it from the context. This is usually but not always NULL. This change is motivated by a desire to remove external accesses to a request context's delegate. (If a block of code needs to use a NetworkDelegate, it should not query the URLRequestContext for it, but instead should already have access to whatever delegate the context uses.) BUG=146587 Review URL: https://chromiumcodereview.appspot.com/12321106 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@188920 0039d316-1c4b-4281-b951-d872f2087c98
* Removed static factories for data, ftp, file, and about jobs.pauljensen@chromium.org2013-03-193-0/+7
| | | | | | | | | | | | | | | Instead add corresponding ProtocolHandlers as needed. Remove URLRequestContext members used by these static factories. Bake FtpAuthCache into FtpProtocolHandler as it was already unique per FtpProtocolHandler. This is a revived version of http://crrev.com/10836206 BUG=142945 Review URL: https://chromiumcodereview.appspot.com/11931024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@188912 0039d316-1c4b-4281-b951-d872f2087c98
* Stop sending Accept-Charset HTTP header as its not relevant anymore. Remove ↵pauljensen@chromium.org2013-03-151-3/+0
| | | | | | | | | | it from HttpUserAgentSettings as well as this is no longer needed. BUG=112804 Review URL: https://chromiumcodereview.appspot.com/12463021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@188237 0039d316-1c4b-4281-b951-d872f2087c98
* [android_webview] Make intercepted URLRequests have status codes.mkosiba@chromium.org2013-03-113-6/+123
| | | | | | | | | | | | | | This changes the way AndroidStreamReaderUrlRequestJob handles requests which don't have an InputStream. Rather than immediately failing the Job we pretend to have HTTP response headers that say 404 Not Found and empty contents (much like fetching the data from a real server would). BUG=180542 Review URL: https://chromiumcodereview.appspot.com/12531002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@187270 0039d316-1c4b-4281-b951-d872f2087c98
* [android_webview] Don't intercept resource and asset URLRequests.mkosiba@chromium.org2013-03-075-36/+134
| | | | | | | | | | | | | | WebViewClassic doesn't allow for request intercepting of resource and asset file:// URLRequests. This change makes AwContents exhibit the same behavior. BUG=179411 Touches only android code, builds fine on android trybots. NOTRY=true Review URL: https://chromiumcodereview.appspot.com/12377051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186723 0039d316-1c4b-4281-b951-d872f2087c98
* Add chrome-search: access from Instant overlaydhollowa@chromium.org2013-03-072-46/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enables the Instant NTP page access to: chrome-search://theme/*, chrome-search://favicon/*, and chrome-search://thumb/*. This CL has a number of aspects to make the installed theme background image available to the Instant overlay: 1. Utilizes the new chrome-search: scheme that is accessible only to the Instant overlay's render process. This is enforced on the renderer side by WebKit::WebSecurityPolicy facilities. This is enforced on the browser side by the InstantIOContext::ShouldServiceRequest and URLDataSource::ShouldServiceRequest facilities. 2. Whitelists the chrome-search://theme origin to be made available to the specific Instant overlay's origin/url. 3. Backend CSS that sets the appropriate background image that resides in the chrome-search://theme origin. 4. A small refactoring of the Instant tests to support mix-in usage of InstantTestBase. BUG=172408, 134937 TEST=InstantPolicyTest.SearchSchemePolicy R=sreeram@chromium.org, creis@chromium.org Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=186347 Review URL: https://chromiumcodereview.appspot.com/11896113 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186680 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 186347jochen@chromium.org2013-03-062-12/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Broke MalwareDetailsTest: [ RUN ] MalwareDetailsTest.HTTPCache Received signal 11 SEGV_MAPERR 00010000001e [0x00000285f2ee] base::debug::StackTrace::StackTrace() [0x00000285f3f6] base::debug::(anonymous namespace)::StackDumpSignalHandler() [0x7f5274c148f0] <unknown> [0x0000028a82f7] base::SupportsUserData::GetUserData() [0x00000215307f] (anonymous namespace)::GetDataForResourceContext() [0x00000215315c] InstantIOContext::RemoveInstantProcessOnIO() [0x000002881dd9] MessageLoop::RunTask() [0x00000288261b] MessageLoop::DeferOrRunPendingTask() [0x000002882c28] MessageLoop::DoWork() [0x000002853f4a] base::MessagePumpLibevent::Run() [0x00000287d8f2] MessageLoop::RunInternal() [0x00000289966d] base::RunLoop::Run() [0x00000287cca5] MessageLoop::Run() [0x0000042ee488] content::BrowserThreadImpl::IOThreadRun() [0x0000042ef28b] content::BrowserThreadImpl::Run() [0x0000028b4d88] base::Thread::ThreadMain() [0x0000028afc01] base::(anonymous namespace)::ThreadFunc() [0x7f5274c0b9ca] start_thread [0x7f5272728cdd] clone > Add chrome-search: access from Instant overlay > > Enables the Instant NTP page access to: > chrome-search://theme/*, > chrome-search://favicon/*, and > chrome-search://thumb/*. > > This CL has a number of aspects to make the installed theme > background image available to the Instant overlay: > 1. Utilizes the new chrome-search: scheme that is accessible only > to the Instant overlay's render process. This is enforced > on the renderer side by WebKit::WebSecurityPolicy > facilities. This is enforced on the browser side by the > InstantIOContext::ShouldServiceRequest and URLDataSource::ShouldServiceRequest facilities. > 2. Whitelists the chrome-search://theme origin to be made > available to the specific Instant overlay's origin/url. > 3. Backend CSS that sets the appropriate background image > that resides in the chrome-search://theme origin. > 4. A small refactoring of the Instant tests to support mix-in > usage of InstantTestBase. > > BUG=172408, 134937 > TEST=InstantPolicyTest.SearchSchemePolicy > R=sreeram@chromium.org, creis@chromium.org > > > Review URL: https://chromiumcodereview.appspot.com/11896113 TBR=dhollowa@chromium.org Review URL: https://codereview.chromium.org/12521005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186371 0039d316-1c4b-4281-b951-d872f2087c98
* Add chrome-search: access from Instant overlaydhollowa@chromium.org2013-03-062-46/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enables the Instant NTP page access to: chrome-search://theme/*, chrome-search://favicon/*, and chrome-search://thumb/*. This CL has a number of aspects to make the installed theme background image available to the Instant overlay: 1. Utilizes the new chrome-search: scheme that is accessible only to the Instant overlay's render process. This is enforced on the renderer side by WebKit::WebSecurityPolicy facilities. This is enforced on the browser side by the InstantIOContext::ShouldServiceRequest and URLDataSource::ShouldServiceRequest facilities. 2. Whitelists the chrome-search://theme origin to be made available to the specific Instant overlay's origin/url. 3. Backend CSS that sets the appropriate background image that resides in the chrome-search://theme origin. 4. A small refactoring of the Instant tests to support mix-in usage of InstantTestBase. BUG=172408, 134937 TEST=InstantPolicyTest.SearchSchemePolicy R=sreeram@chromium.org, creis@chromium.org Review URL: https://chromiumcodereview.appspot.com/11896113 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186347 0039d316-1c4b-4281-b951-d872f2087c98
* Fix for CookieManager init race conditionjoth@chromium.org2013-03-012-8/+16
| | | | | | | | | | | | | | | | | As the cookiemanager can be used at any time from any thread, we need to ensure it is constructed early in startup, synchronously to the AndroidBrowserProcess.init() call. This rolls back a little of the change made in http://src.chromium.org/viewvc/chrome/trunk/src/android_webview/browser/net/init_native_callback.h?view=diff&r1=174173&r2=174174 (intenral issue b/8249158) BUG= Review URL: https://chromiumcodereview.appspot.com/12387028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@185462 0039d316-1c4b-4281-b951-d872f2087c98
* Remove unused pieces of URLRequestJobFactory API.pauljensen@chromium.org2013-02-122-38/+9
| | | | | | | | | | | | This is mostly the Interceptor logic which is now unused. Also switch DebugDevToolsInterceptor (the last remaining Interceptor) to a ProtocolHandler. BUG=146602,161529 Review URL: https://chromiumcodereview.appspot.com/12217095 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@182016 0039d316-1c4b-4281-b951-d872f2087c98
* Add StoragePartition's ProtocolHandlers at URLRequestContext construction time. pauljensen@chromium.org2013-02-082-68/+93
| | | | | | | | | | | Previously they were added later which doesn't mesh with pending URLRequestJobFactory API changes. BUG=146602,161529 Review URL: https://chromiumcodereview.appspot.com/11308362 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@181519 0039d316-1c4b-4281-b951-d872f2087c98
* Add FilePath to base namespace.brettw@chromium.org2013-02-022-2/+2
| | | | | | | This updates headers that forward-declare it and a few random places to use the namespace explicitly. There us a using declaration in file_path.h that makes the rest compile, which we can do in future passes. Review URL: https://codereview.chromium.org/12163003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180245 0039d316-1c4b-4281-b951-d872f2087c98
* Convert AwRequestInerceptor to net::URLRequestJobFactory::ProtocolHandlerpauljensen@chromium.org2013-01-021-1/+5
| | | | | | | | | BUG=161534 Review URL: https://chromiumcodereview.appspot.com/11678008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174807 0039d316-1c4b-4281-b951-d872f2087c98
* [Android WebView] Fix some locale related TODOs.benm@chromium.org2012-12-211-2/+1
| | | | | | | | | | | | | | | | | | | | Implement AwContentBrowserClient::GetAcceptLangs as the classic WebView did - use the current local for the primary accept language and append en-US as an alternative if the primary language was something else. Use UTF-8 as the default accept charset. As far as I can tell AwContentBrowserClient::GetCanonicalEncodingNameByAliasName should simply echo the passed in string - we shouldn't get passed anything other than a canonical encoding name in android_webview/. Move the mapping of Android deprecated language codes from l10n_util.cc into base/android/java/.../LocaleUtils.java to make that logic easier to reuse by android_webview. Review URL: https://chromiumcodereview.appspot.com/11614002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174385 0039d316-1c4b-4281-b951-d872f2087c98
* Fix aw unittestsboliu@chromium.org2012-12-211-0/+5
| | | | | | | | | | | | | | | | They were broken in r174174 but since these tests are not run on the cq or main waterfall, they were broken and no one noticed for awhile. R=joth@chromium.org,mkosiba@chromium.org BUG= Android only change. Ran through Android bots NOTRY=true Review URL: https://chromiumcodereview.appspot.com/11637052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174308 0039d316-1c4b-4281-b951-d872f2087c98
* Convert trivial URLRequest::Interceptors and ↵pauljensen@chromium.org2012-12-203-9/+13
| | | | | | | | | | URLRequestJobFactory::Interceptor into URLRequestJobFactory::ProtocolHandlers. BUG=161524 Review URL: https://codereview.chromium.org/11293252 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174174 0039d316-1c4b-4281-b951-d872f2087c98
* Change Android Webview URL Request Context access of mutation functions.tedv@chromium.org2012-12-162-8/+9
| | | | | | | | | | | | | | | The associated CR involves moving mutation interfaces of URLRequestJobFactory to derived (non-abstract) classes. See CL https://codereview.chromium.org/11227017 for more information. BUG=146602 Review URL: https://chromiumcodereview.appspot.com/11447032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173392 0039d316-1c4b-4281-b951-d872f2087c98
* [Android] Fix AwSettingsTest AppCache test crashes.mnaganov@chromium.org2012-12-062-7/+34
| | | | | | | | | | | | | The problem was due to usage of a second cache thread. R=boliu@chromium.org BUG=163383 NOTRY=true Review URL: https://chromiumcodereview.appspot.com/11440036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171520 0039d316-1c4b-4281-b951-d872f2087c98
* [android_webview] Fix use after free in intercepted requests.mkosiba@chromium.org2012-11-305-70/+119
| | | | | | | | | | | | | | | This fixes the use after free problem that can occur if the Seek or Read request on the worker thread runs after the job has been deleted. TEST=AndroidWebViewTests,android_webview_unittests BUG=None R=mnaganov@chromium.org Review URL: https://chromiumcodereview.appspot.com/11428052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170505 0039d316-1c4b-4281-b951-d872f2087c98
* [android_webview] Don't block the IO thread when reading from an InputStream.mkosiba@chromium.org2012-11-226-0/+936
| | | | | | | | | | | | | | | | This breaks up the functionality in the AndroidStreamReader..Job into three separate classes, adds native unittests and makes the Job read the InputStream on a background thread. This change adds a separate unittestjava folder because the code under javatests can't be compiled to be a part of a native unittest APK due to resource dependencies. TEST=AndroidWebviewTests,android_webview_unittests BUG=None Review URL: https://codereview.chromium.org/11363123 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@169274 0039d316-1c4b-4281-b951-d872f2087c98
* Provide mutable members of UrlRequestContext via pure-virtual interface. ↵pauljensen@chromium.org2012-11-071-9/+7
| | | | | | | | | | Create a pure-virtual interface called HttpUserAgentSettings that provides access to the Accept-Language, Accept-Charset, and User-Agent HTTP headers. Each UrlRequestContext should have a HttpUserAgentSettings implementation attached via set_http_user_agent_settings(). BUG=146596 Review URL: https://chromiumcodereview.appspot.com/10918279 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166425 0039d316-1c4b-4281-b951-d872f2087c98
* Pass CookieMonster to CookieManager in initboliu@chromium.org2012-11-013-32/+27
| | | | | | | | | | | | | | | | | Add a static native callback header file in aw/browser/net and implemented in aw/native. CookieManager is rewritten to be a lazy-created singleton class so there is a place to hold the cookie monster without introducing a static initializer. BUG=157683 Android only change and ran through all android trybots NOTRY=true Review URL: https://chromiumcodereview.appspot.com/11368013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165369 0039d316-1c4b-4281-b951-d872f2087c98
* Improve URLRequestContextBuilder for use in android_webviewboliu@chromium.org2012-10-271-109/+16
| | | | | | | | | | | | | | Implemented [Enable|Disable]HttpCache methods. Added OS_ANDROID for set_proxy_config_service guard. Added set_network_delegate method. Also fix a double owning issue introduced by me in r164387. BUG= Review URL: https://chromiumcodereview.appspot.com/11266049 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164495 0039d316-1c4b-4281-b951-d872f2087c98
* Fix leaking request factory in android_webviewboliu@chromium.org2012-10-262-7/+8
| | | | | | | | | | | | | | Have the context getter own the factory since it already owns the context itself. BUG= Run through android_fyi_dbg trybot NOTRY=true Review URL: https://chromiumcodereview.appspot.com/11320004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164387 0039d316-1c4b-4281-b951-d872f2087c98
* Implement AwContentBrowserClient and AwBrowserContextboliu@chromium.org2012-10-253-0/+317
| | | | | | | | | | | | | | | | Some other classes that are added in this patch: AwBrowserMainParts, AwQuotaPermissionClient, AwUrlRequestContext[Getter], AwResourceContext. There is enough implementation for these classes so that existing instrumentation tests still pass. A lot of TODOs are added for future work beyond this patch. BUG= Review URL: https://chromiumcodereview.appspot.com/11184051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164213 0039d316-1c4b-4281-b951-d872f2087c98
* [android_webview] Fix clang build.mkosiba@chromium.org2012-10-242-0/+4
| | | | | | | | | | | Added missing destructor. BUG= TBR=benm@chromium.org Review URL: https://codereview.chromium.org/11264007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163811 0039d316-1c4b-4281-b951-d872f2087c98
* [android_webview] Support intercepting for unhandled schemes.mkosiba@chromium.org2012-10-242-0/+140
| | | | | | | | | | | This makes it possible to intercept navigations and resource requests for otherwise unsupported schemes. BUG=156354,148369 Review URL: https://codereview.chromium.org/11185051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163804 0039d316-1c4b-4281-b951-d872f2087c98
* Make original_response_headers parameter of ↵battre@chromium.org2012-10-202-2/+2
| | | | | | | | | | | NetworkDelegate::OnHeadersReceived const BUG=149890 TBR=tony@chromium.org,mnaganov@chromium.org,jochen@chromium.org Review URL: https://chromiumcodereview.appspot.com/10944013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163111 0039d316-1c4b-4281-b951-d872f2087c98
* Add WebView implementation for CookieManager.tedchoc@chromium.org2012-09-072-0/+178
Additional details of the requirements can be found from the Android SDK. http://developer.android.com/reference/android/webkit/CookieManager.html BUG= TEST=make forwarder android_webview_apk android_webview_test_apk Review URL: https://chromiumcodereview.appspot.com/10913074 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@155331 0039d316-1c4b-4281-b951-d872f2087c98