New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 841617 link

Starred by 6 users

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug



Sign in to add a comment

Network Servicification of Offline Page Serving

Project Member Reported by jianli@chromium.org, May 9 2018

Issue description

Support network Servicification for offline page request handling
 
Project Member

Comment 1 by bugdroid1@chromium.org, May 10 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f8c844f4d515fb2fb90495304d4c443bf3ff73ad

commit f8c844f4d515fb2fb90495304d4c443bf3ff73ad
Author: Jian Li <jianli@chromium.org>
Date: Thu May 10 22:15:02 2018

Copy OfflinePageRequestJob files to OfflinePageRequestHandler

These new files are simply copies of OfflinePageRequestJob files
with name changes. They're not added to compile targets. This will
allow easier reviewing for next patch that refactor
OfflinePageRequestHandler to support both with network service
enabled and without network service enabled.

Bug:  841617 
Change-Id: I295479cfe2240eddd77a7f9580af4c0346997282
Reviewed-on: https://chromium-review.googlesource.com/1053364
Reviewed-by: Dmitry Titov <dimich@chromium.org>
Commit-Queue: Jian Li <jianli@chromium.org>
Cr-Commit-Position: refs/heads/master@{#557681}
[add] https://crrev.com/f8c844f4d515fb2fb90495304d4c443bf3ff73ad/chrome/browser/offline_pages/offline_page_request_handler.cc
[add] https://crrev.com/f8c844f4d515fb2fb90495304d4c443bf3ff73ad/chrome/browser/offline_pages/offline_page_request_handler.h
[add] https://crrev.com/f8c844f4d515fb2fb90495304d4c443bf3ff73ad/chrome/browser/offline_pages/offline_page_request_handler_unittest.cc

Project Member

Comment 3 by bugdroid1@chromium.org, May 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e4f685ee45e7061733041e81d90cd95bcfd5f8de

commit e4f685ee45e7061733041e81d90cd95bcfd5f8de
Author: Jian Li <jianli@chromium.org>
Date: Tue May 22 18:44:17 2018

Move common code for serving offline pages to OfflinePageRequestHandler

OfflinePageRequestJob and OfflinePageURLLoader (will be added in next
patch to support network servicification) will create and hold
OfflinePageRequestHandler. The specific behaviors for url request job
and url loader are encapsulated in OfflinePageRequestHandler::Delegate
which will be implemented accordingly.

OfflinePageRequestHandlerTest is also to pull out common testing code.
For now, only one type OfflinePageRequestJobBuilder is added to test
OfflinePageRequestJob. I will add a new type to test new URLLoader in
next patch.


Bug:  841617 
Change-Id: I1cd9b8e03358bc18d6d08e2d038be579de10dc42
Reviewed-on: https://chromium-review.googlesource.com/1058449
Commit-Queue: Jian Li <jianli@chromium.org>
Reviewed-by: Dmitry Titov <dimich@chromium.org>
Cr-Commit-Position: refs/heads/master@{#560715}
[modify] https://crrev.com/e4f685ee45e7061733041e81d90cd95bcfd5f8de/chrome/browser/BUILD.gn
[modify] https://crrev.com/e4f685ee45e7061733041e81d90cd95bcfd5f8de/chrome/browser/offline_pages/offline_page_request_handler.cc
[modify] https://crrev.com/e4f685ee45e7061733041e81d90cd95bcfd5f8de/chrome/browser/offline_pages/offline_page_request_handler.h
[modify] https://crrev.com/e4f685ee45e7061733041e81d90cd95bcfd5f8de/chrome/browser/offline_pages/offline_page_request_handler_unittest.cc
[modify] https://crrev.com/e4f685ee45e7061733041e81d90cd95bcfd5f8de/chrome/browser/offline_pages/offline_page_request_job.cc
[modify] https://crrev.com/e4f685ee45e7061733041e81d90cd95bcfd5f8de/chrome/browser/offline_pages/offline_page_request_job.h
[delete] https://crrev.com/f5604624408647a8ea06e6c884a9a2a0004df05a/chrome/browser/offline_pages/offline_page_request_job_unittest.cc
[modify] https://crrev.com/e4f685ee45e7061733041e81d90cd95bcfd5f8de/chrome/browser/offline_pages/offline_page_tab_helper.cc
[modify] https://crrev.com/e4f685ee45e7061733041e81d90cd95bcfd5f8de/chrome/test/BUILD.gn

Project Member

Comment 4 by bugdroid1@chromium.org, Jun 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/de7b43799b76ba30deae3a2261f6c80f9cb0f013

commit de7b43799b76ba30deae3a2261f6c80f9cb0f013
Author: Jian Li <jianli@chromium.org>
Date: Fri Jun 01 23:22:13 2018

Support offline page serving for network servicification

OfflinePageURLLoader is introduced to intercept a request for
serving offline pages. It creates and holds OfflinePageRequestHandler
which contains all the common request handling logic for both
url request job and url loader. OfflinePageURLLoader implements
OfflinePageRequestHandler::Delegate in order to provide custom
logic.

Bug:  841617 
Change-Id: I12c88a919769aa4d743d4dcb3dafc7617921cdc6
Reviewed-on: https://chromium-review.googlesource.com/1069724
Reviewed-by: Carlos Knippschild <carlosk@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Peter Williamson <petewil@chromium.org>
Commit-Queue: Jian Li <jianli@chromium.org>
Cr-Commit-Position: refs/heads/master@{#563855}
[modify] https://crrev.com/de7b43799b76ba30deae3a2261f6c80f9cb0f013/chrome/browser/BUILD.gn
[modify] https://crrev.com/de7b43799b76ba30deae3a2261f6c80f9cb0f013/chrome/browser/chrome_content_browser_client.cc
[modify] https://crrev.com/de7b43799b76ba30deae3a2261f6c80f9cb0f013/chrome/browser/chrome_content_browser_client.h
[modify] https://crrev.com/de7b43799b76ba30deae3a2261f6c80f9cb0f013/chrome/browser/offline_pages/offline_page_request_handler.cc
[modify] https://crrev.com/de7b43799b76ba30deae3a2261f6c80f9cb0f013/chrome/browser/offline_pages/offline_page_request_handler.h
[modify] https://crrev.com/de7b43799b76ba30deae3a2261f6c80f9cb0f013/chrome/browser/offline_pages/offline_page_request_handler_unittest.cc
[modify] https://crrev.com/de7b43799b76ba30deae3a2261f6c80f9cb0f013/chrome/browser/offline_pages/offline_page_request_job.cc
[add] https://crrev.com/de7b43799b76ba30deae3a2261f6c80f9cb0f013/chrome/browser/offline_pages/offline_page_url_loader.cc
[add] https://crrev.com/de7b43799b76ba30deae3a2261f6c80f9cb0f013/chrome/browser/offline_pages/offline_page_url_loader.h
[add] https://crrev.com/de7b43799b76ba30deae3a2261f6c80f9cb0f013/chrome/browser/offline_pages/offline_page_url_loader_request_interceptor.cc
[add] https://crrev.com/de7b43799b76ba30deae3a2261f6c80f9cb0f013/chrome/browser/offline_pages/offline_page_url_loader_request_interceptor.h

Status: Fixed (was: Started)
Cc: xingliu@chromium.org clamy@chromium.org dtrainor@chromium.org blundell@chromium.org sdefresne@chromium.org yzshen@chromium.org roc...@chromium.org yfried...@chromium.org kinuko@chromium.org dim...@chromium.org
 Issue 803671  has been merged into this issue.
Does offline pages have other dependencies or is it ready to run in a service-manager only world? (not full browser startup)
Offline pages are ready to run in full browser world (tested with about flag enabled). The only missing piece is from the previews that is used by offline pages to decide if offline page should be served if the previews is triggered. The previews team is working on the servicification of this.

Sign in to add a comment