Commit afe1dc47 authored by haraken's avatar haraken Committed by Commit bot

Remove ContextClient from NavigatorStorageQuota

Now that Navigator's supplement can get a Navigator object via host().
Then Navigator's supplement doesn't need to observe ContextClient.

BUG=610176

Review-Url: https://codereview.chromium.org/2617583005
Cr-Commit-Position: refs/heads/master@{#441898}
parent ff41261e
...@@ -37,8 +37,8 @@ ...@@ -37,8 +37,8 @@
namespace blink { namespace blink {
NavigatorStorageQuota::NavigatorStorageQuota(LocalFrame* frame) NavigatorStorageQuota::NavigatorStorageQuota(Navigator& navigator)
: ContextClient(frame) {} : Supplement<Navigator>(navigator) {}
const char* NavigatorStorageQuota::supplementName() { const char* NavigatorStorageQuota::supplementName() {
return "NavigatorStorageQuota"; return "NavigatorStorageQuota";
...@@ -48,7 +48,7 @@ NavigatorStorageQuota& NavigatorStorageQuota::from(Navigator& navigator) { ...@@ -48,7 +48,7 @@ NavigatorStorageQuota& NavigatorStorageQuota::from(Navigator& navigator) {
NavigatorStorageQuota* supplement = static_cast<NavigatorStorageQuota*>( NavigatorStorageQuota* supplement = static_cast<NavigatorStorageQuota*>(
Supplement<Navigator>::from(navigator, supplementName())); Supplement<Navigator>::from(navigator, supplementName()));
if (!supplement) { if (!supplement) {
supplement = new NavigatorStorageQuota(navigator.frame()); supplement = new NavigatorStorageQuota(navigator);
provideTo(navigator, supplementName(), supplement); provideTo(navigator, supplementName(), supplement);
} }
return *supplement; return *supplement;
...@@ -73,27 +73,27 @@ StorageManager* NavigatorStorageQuota::storage(Navigator& navigator) { ...@@ -73,27 +73,27 @@ StorageManager* NavigatorStorageQuota::storage(Navigator& navigator) {
} }
StorageQuota* NavigatorStorageQuota::storageQuota() const { StorageQuota* NavigatorStorageQuota::storageQuota() const {
if (!m_storageQuota && frame()) if (!m_storageQuota)
m_storageQuota = StorageQuota::create(); m_storageQuota = StorageQuota::create();
return m_storageQuota.get(); return m_storageQuota.get();
} }
DeprecatedStorageQuota* NavigatorStorageQuota::webkitTemporaryStorage() const { DeprecatedStorageQuota* NavigatorStorageQuota::webkitTemporaryStorage() const {
if (!m_temporaryStorage && frame()) if (!m_temporaryStorage)
m_temporaryStorage = m_temporaryStorage =
DeprecatedStorageQuota::create(DeprecatedStorageQuota::Temporary); DeprecatedStorageQuota::create(DeprecatedStorageQuota::Temporary);
return m_temporaryStorage.get(); return m_temporaryStorage.get();
} }
DeprecatedStorageQuota* NavigatorStorageQuota::webkitPersistentStorage() const { DeprecatedStorageQuota* NavigatorStorageQuota::webkitPersistentStorage() const {
if (!m_persistentStorage && frame()) if (!m_persistentStorage)
m_persistentStorage = m_persistentStorage =
DeprecatedStorageQuota::create(DeprecatedStorageQuota::Persistent); DeprecatedStorageQuota::create(DeprecatedStorageQuota::Persistent);
return m_persistentStorage.get(); return m_persistentStorage.get();
} }
StorageManager* NavigatorStorageQuota::storage() const { StorageManager* NavigatorStorageQuota::storage() const {
if (!m_storageManager && frame()) if (!m_storageManager)
m_storageManager = new StorageManager(); m_storageManager = new StorageManager();
return m_storageManager.get(); return m_storageManager.get();
} }
...@@ -104,7 +104,6 @@ DEFINE_TRACE(NavigatorStorageQuota) { ...@@ -104,7 +104,6 @@ DEFINE_TRACE(NavigatorStorageQuota) {
visitor->trace(m_persistentStorage); visitor->trace(m_persistentStorage);
visitor->trace(m_storageManager); visitor->trace(m_storageManager);
Supplement<Navigator>::trace(visitor); Supplement<Navigator>::trace(visitor);
ContextClient::trace(visitor);
} }
} // namespace blink } // namespace blink
...@@ -31,7 +31,6 @@ ...@@ -31,7 +31,6 @@
#ifndef NavigatorStorageQuota_h #ifndef NavigatorStorageQuota_h
#define NavigatorStorageQuota_h #define NavigatorStorageQuota_h
#include "core/dom/ContextLifecycleObserver.h"
#include "core/frame/Navigator.h" #include "core/frame/Navigator.h"
#include "modules/quota/DeprecatedStorageQuota.h" #include "modules/quota/DeprecatedStorageQuota.h"
#include "platform/Supplementable.h" #include "platform/Supplementable.h"
...@@ -39,15 +38,13 @@ ...@@ -39,15 +38,13 @@
namespace blink { namespace blink {
class LocalFrame;
class Navigator; class Navigator;
class StorageManager; class StorageManager;
class StorageQuota; class StorageQuota;
class NavigatorStorageQuota final class NavigatorStorageQuota final
: public GarbageCollected<NavigatorStorageQuota>, : public GarbageCollected<NavigatorStorageQuota>,
public Supplement<Navigator>, public Supplement<Navigator> {
public ContextClient {
USING_GARBAGE_COLLECTED_MIXIN(NavigatorStorageQuota); USING_GARBAGE_COLLECTED_MIXIN(NavigatorStorageQuota);
public: public:
...@@ -65,7 +62,7 @@ class NavigatorStorageQuota final ...@@ -65,7 +62,7 @@ class NavigatorStorageQuota final
DECLARE_TRACE(); DECLARE_TRACE();
private: private:
explicit NavigatorStorageQuota(LocalFrame*); explicit NavigatorStorageQuota(Navigator&);
static const char* supplementName(); static const char* supplementName();
mutable Member<StorageQuota> m_storageQuota; mutable Member<StorageQuota> m_storageQuota;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment