Index: Source/modules/quota/DurableStorageController.h |
diff --git a/Source/modules/quota/DurableStorageController.h b/Source/modules/quota/DurableStorageController.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..f391e6164e50a402b64ee40efb336a8fc2a379ae |
--- /dev/null |
+++ b/Source/modules/quota/DurableStorageController.h |
@@ -0,0 +1,44 @@ |
+// Copyright 2015 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef DurableStorageController_h |
+#define DurableStorageController_h |
+ |
+#include "core/frame/LocalFrameLifecycleObserver.h" |
+#include "modules/ModulesExport.h" |
+#include "platform/Supplementable.h" |
+ |
+namespace blink { |
+ |
+class WebDurableStorageDispatcher; |
+ |
+class MODULES_EXPORT DurableStorageController final |
+ : public NoBaseWillBeGarbageCollectedFinalized<DurableStorageController> |
+ , public WillBeHeapSupplement<LocalFrame> |
+ , public LocalFrameLifecycleObserver { |
+ WTF_MAKE_NONCOPYABLE(DurableStorageController); |
+ WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(DurableStorageController); |
+public: |
+ virtual ~DurableStorageController(); |
+ |
+ static void provideTo(LocalFrame&, WebDurableStorageDispatcher*); |
+ static DurableStorageController* from(LocalFrame&); |
+ static const char* supplementName(); |
+ |
+ WebDurableStorageDispatcher* client() const; |
+ |
+ DECLARE_VIRTUAL_TRACE(); |
+ |
+private: |
+ DurableStorageController(LocalFrame&, WebDurableStorageDispatcher*); |
+ |
+ // Inherited from LocalFrameLifecycleObserver. |
+ virtual void willDetachFrameHost() override; |
+ |
+ WebDurableStorageDispatcher* m_client; |
+}; |
+ |
+} // namespace blink |
+ |
+#endif // DurableStorageController_h |