ServiceWorker: Stop exposing ServiceWorkerContextCore
commitd389a96ff7963b90a7a80bc3cd3318fdf48c0e70
authornhiroki <nhiroki@chromium.org>
Thu, 23 Apr 2015 06:12:26 +0000 (22 23:12 -0700)
committerCommit bot <commit-bot@chromium.org>
Thu, 23 Apr 2015 06:12:37 +0000 (23 06:12 +0000)
tree6ba8f2d85cd99b281e2a6a9b62b4de812f300c87
parentdeec21d2f582eff12c78adac4d16ad54d7461066
ServiceWorker: Stop exposing ServiceWorkerContextCore

External components (eg. Push) can directly access SWContextCore, but the
context core is designed for internal use and should be accessed via
SWContextWrapper because it can be null in some cases (eg, failing to
restart the system. See [1,2] for details of the wrapper-core layering).

To enforce the rule, this CL stops exposing the context core and makes the
wrapper to provide interfaces for that instead.

[1] https://code.google.com/p/chromium/issues/detail?id=371675#c18
[2] https://docs.google.com/document/d/1eXdgnAOZC4dDDybmRpXT0t0lOYGhFf7xajOSanEb91Y/edit?usp=sharing

BUG=472019
TEST=compile

Review URL: https://codereview.chromium.org/1079923002

Cr-Commit-Position: refs/heads/master@{#326464}
14 files changed:
content/browser/background_sync/background_sync_manager.cc
content/browser/devtools/protocol/service_worker_handler.cc
content/browser/geofencing/geofencing_manager.cc
content/browser/navigator_connect/navigator_connect_service_worker_service_factory.cc
content/browser/notifications/notification_event_dispatcher_impl.cc
content/browser/push_messaging/push_messaging_message_filter.cc
content/browser/push_messaging/push_messaging_router.cc
content/browser/service_worker/service_worker_browsertest.cc
content/browser/service_worker/service_worker_context_watcher.cc
content/browser/service_worker/service_worker_context_wrapper.cc
content/browser/service_worker/service_worker_context_wrapper.h
content/browser/service_worker/service_worker_internals_ui.cc
content/browser/service_worker/service_worker_internals_ui.h
content/public/browser/push_messaging_service.cc