OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 NavigatorNetworkInformation_h | 5 #ifndef NavigatorNetworkInformation_h |
6 #define NavigatorNetworkInformation_h | 6 #define NavigatorNetworkInformation_h |
7 | 7 |
8 #include "core/frame/DOMWindowProperty.h" | 8 #include "core/frame/DOMWindowProperty.h" |
9 #include "platform/Supplementable.h" | 9 #include "platform/Supplementable.h" |
10 | 10 |
11 namespace blink { | 11 namespace blink { |
12 | 12 |
13 class Navigator; | 13 class Navigator; |
14 class NetworkInformation; | 14 class NetworkInformation; |
15 | 15 |
16 class NavigatorNetworkInformation final | 16 // TODO(Oilpan): when ~DOMWindowProperty is removed, derive from GarbageCollecte
d<> instead. |
17 : public NoBaseWillBeGarbageCollected<NavigatorNetworkInformation> | 17 class NavigatorNetworkInformation final : public GarbageCollectedFinalized<Navig
atorNetworkInformation>, public HeapSupplement<Navigator>, DOMWindowProperty { |
18 , public WillBeHeapSupplement<Navigator> | 18 USING_GARBAGE_COLLECTED_MIXIN(NavigatorNetworkInformation); |
19 , DOMWindowProperty { | |
20 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(NavigatorNetworkInformation); | |
21 DECLARE_EMPTY_VIRTUAL_DESTRUCTOR_WILL_BE_REMOVED(NavigatorNetworkInformation
); | |
22 public: | 19 public: |
23 static NavigatorNetworkInformation& from(Navigator&); | 20 static NavigatorNetworkInformation& from(Navigator&); |
24 static NavigatorNetworkInformation* toNavigatorNetworkInformation(Navigator&
); | 21 static NavigatorNetworkInformation* toNavigatorNetworkInformation(Navigator&
); |
25 static const char* supplementName(); | 22 |
| 23 virtual ~NavigatorNetworkInformation(); |
26 | 24 |
27 static NetworkInformation* connection(Navigator&); | 25 static NetworkInformation* connection(Navigator&); |
28 | 26 |
29 DECLARE_VIRTUAL_TRACE(); | 27 DECLARE_VIRTUAL_TRACE(); |
30 | 28 |
31 private: | 29 private: |
32 explicit NavigatorNetworkInformation(Navigator&); | 30 explicit NavigatorNetworkInformation(Navigator&); |
33 NetworkInformation* connection(); | 31 NetworkInformation* connection(); |
34 | 32 |
35 PersistentWillBeMember<NetworkInformation> m_connection; | 33 static const char* supplementName(); |
| 34 |
| 35 Member<NetworkInformation> m_connection; |
36 }; | 36 }; |
37 | 37 |
38 } // namespace blink | 38 } // namespace blink |
39 | 39 |
40 #endif // NavigatorNetworkInformation_h | 40 #endif // NavigatorNetworkInformation_h |
OLD | NEW |