Chromium Code Reviews| Index: Source/modules/netinfo/WorkerNavigatorNetworkInfoConnection.cpp |
| diff --git a/Source/modules/netinfo/WorkerNavigatorNetworkInfoConnection.cpp b/Source/modules/netinfo/WorkerNavigatorNetworkInfoConnection.cpp |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..6ef16d595f4b8a5d838090a7b1f169e0e25ec971 |
| --- /dev/null |
| +++ b/Source/modules/netinfo/WorkerNavigatorNetworkInfoConnection.cpp |
| @@ -0,0 +1,59 @@ |
| +// Copyright 2014 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. |
| + |
| +#include "config.h" |
| +#include "modules/netinfo/WorkerNavigatorNetworkInfoConnection.h" |
| + |
| +#include "core/frame/Navigator.h" |
| +#include "core/workers/WorkerNavigator.h" |
| +#include "modules/netinfo/NetworkInfoConnection.h" |
| + |
| +namespace WebCore { |
| + |
| +WorkerNavigatorNetworkInfoConnection::WorkerNavigatorNetworkInfoConnection(WorkerNavigator& navigator, ExecutionContext* context) |
| +{ |
| +} |
| + |
| +WorkerNavigatorNetworkInfoConnection::~WorkerNavigatorNetworkInfoConnection() |
| +{ |
| +} |
| + |
| +WorkerNavigatorNetworkInfoConnection& WorkerNavigatorNetworkInfoConnection::from(WorkerNavigator& navigator, ExecutionContext* context) |
| +{ |
| + WorkerNavigatorNetworkInfoConnection* supplement = toWorkerNavigatorNetworkInfoConnection(navigator, context); |
| + if (!supplement) { |
| + supplement = new WorkerNavigatorNetworkInfoConnection(navigator, context); |
| + provideTo(navigator, supplementName(), adoptPtrWillBeNoop(supplement)); |
| + } |
| + return *supplement; |
| +} |
| + |
| +WorkerNavigatorNetworkInfoConnection* WorkerNavigatorNetworkInfoConnection::toWorkerNavigatorNetworkInfoConnection(WorkerNavigator& navigator, ExecutionContext* context) |
| +{ |
| + return static_cast<WorkerNavigatorNetworkInfoConnection*>(WillBeHeapSupplement<WorkerNavigator>::from(navigator, supplementName())); |
| +} |
| + |
| +const char* WorkerNavigatorNetworkInfoConnection::supplementName() |
| +{ |
| + return "WorkerNavigatorNetworkInfoConnection"; |
| +} |
| + |
| +NetworkInfoConnection* WorkerNavigatorNetworkInfoConnection::connection(ExecutionContext* context, WorkerNavigator& navigator) |
| +{ |
| + return WorkerNavigatorNetworkInfoConnection::from(navigator, context).connection(context); |
| +} |
| + |
| +void WorkerNavigatorNetworkInfoConnection::trace(Visitor* visitor) |
| +{ |
| + visitor->trace(m_connection); |
| +} |
| + |
| +NetworkInfoConnection* WorkerNavigatorNetworkInfoConnection::connection(ExecutionContext* context) |
| +{ |
| + if (!m_connection && context) |
|
haraken
2014/05/27 22:54:57
I think |context| shouldn't be 0. You can add ASSE
jkarlin
2014/05/29 13:13:49
Done.
|
| + m_connection = NetworkInfoConnection::create(context); |
| + return m_connection.get(); |
| +} |
| + |
| +} // namespace WebCore |