| OLD | NEW | 
|   1 // Copyright 2015 The Chromium Authors. All rights reserved. |   1 // Copyright 2015 The Chromium Authors. All rights reserved. | 
|   2 // Use of this source code is governed by a BSD-style license that can be |   2 // Use of this source code is governed by a BSD-style license that can be | 
|   3 // found in the LICENSE file. |   3 // found in the LICENSE file. | 
|   4  |   4  | 
|   5 #ifndef StorageNamespaceController_h |   5 #ifndef StorageNamespaceController_h | 
|   6 #define StorageNamespaceController_h |   6 #define StorageNamespaceController_h | 
|   7  |   7  | 
|   8 #include "core/page/Page.h" |   8 #include "core/page/Page.h" | 
 |   9 #include "core/page/PageSupplementable.h" | 
|   9 #include "platform/Supplementable.h" |  10 #include "platform/Supplementable.h" | 
|  10 #include "wtf/PassOwnPtr.h" |  11 #include "wtf/PassOwnPtr.h" | 
|  11  |  12  | 
|  12 namespace blink { |  13 namespace blink { | 
|  13  |  14  | 
|  14 class InspectorDOMStorageAgent; |  15 class InspectorDOMStorageAgent; | 
 |  16 class Page; | 
|  15 class StorageClient; |  17 class StorageClient; | 
|  16 class StorageNamespace; |  18 class StorageNamespace; | 
|  17  |  19  | 
|  18 class StorageNamespaceController final : public NoBaseWillBeGarbageCollectedFina
    lized<StorageNamespaceController>, public WillBeHeapSupplement<Page> { |  20 class StorageNamespaceController final : public NoBaseWillBeGarbageCollectedFina
    lized<StorageNamespaceController>, public WillBeHeapSupplement<Page> { | 
|  19     WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(StorageNamespaceController); |  21     WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(StorageNamespaceController); | 
|  20 public: |  22 public: | 
|  21     StorageNamespace* sessionStorage(bool optionalCreate = true); |  23     StorageNamespace* sessionStorage(bool optionalCreate = true); | 
|  22     StorageClient* storageClient() { return m_client; } |  24     StorageClient* storageClient() { return m_client; } | 
|  23     ~StorageNamespaceController(); |  25     ~StorageNamespaceController(); | 
|  24  |  26  | 
|  25     static void provideStorageNamespaceTo(Page&, StorageClient*); |  27     static void provideStorageNamespaceTo(Page&, StorageClient*); | 
|  26     static StorageNamespaceController* from(Page* page) { return static_cast<Sto
    rageNamespaceController*>(WillBeHeapSupplement<Page>::from(page, supplementName(
    ))); } |  28     static StorageNamespaceController* from(Page* page) { return static_cast<Sto
    rageNamespaceController*>(WillBeHeapSupplement<Page>::from(page, supplementName(
    ))); } | 
|  27  |  29  | 
|  28     DECLARE_TRACE(); |  30     DECLARE_TRACE(); | 
|  29  |  31  | 
|  30     InspectorDOMStorageAgent* inspectorAgent() { return m_inspectorAgent; } |  32     InspectorDOMStorageAgent* inspectorAgent() { return m_inspectorAgent; } | 
|  31     void setInspectorAgent(InspectorDOMStorageAgent* agent) { m_inspectorAgent =
     agent; } |  33     void setInspectorAgent(InspectorDOMStorageAgent* agent) { m_inspectorAgent =
     agent; } | 
|  32 private: |  34 private: | 
|  33     explicit StorageNamespaceController(StorageClient*); |  35     explicit StorageNamespaceController(StorageClient*); | 
|  34     static const char* supplementName(); |  36     static const char* supplementName(); | 
|  35     OwnPtr<StorageNamespace> m_sessionStorage; |  37     OwnPtr<StorageNamespace> m_sessionStorage; | 
|  36     StorageClient* m_client; |  38     StorageClient* m_client; | 
|  37     RawPtrWillBeMember<InspectorDOMStorageAgent> m_inspectorAgent; |  39     RawPtrWillBeMember<InspectorDOMStorageAgent> m_inspectorAgent; | 
|  38 }; |  40 }; | 
|  39  |  41  | 
|  40 } // namespace blink |  42 } // namespace blink | 
|  41  |  43  | 
|  42 #endif // StorageNamespaceController_h |  44 #endif // StorageNamespaceController_h | 
| OLD | NEW |