summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/platform/p2p/socket_dispatcher.h
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2021-09-03 13:32:17 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2021-10-01 14:31:55 +0200
commit21ba0c5d4bf8fba15dddd97cd693bad2358b77fd (patch)
tree91be119f694044dfc1ff9fdc054459e925de9df0 /chromium/third_party/blink/renderer/platform/p2p/socket_dispatcher.h
parent03c549e0392f92c02536d3f86d5e1d8dfa3435ac (diff)
downloadqtwebengine-chromium-21ba0c5d4bf8fba15dddd97cd693bad2358b77fd.tar.gz
BASELINE: Update Chromium to 92.0.4515.166
Change-Id: I42a050486714e9e54fc271f2a8939223a02ae364
Diffstat (limited to 'chromium/third_party/blink/renderer/platform/p2p/socket_dispatcher.h')
-rw-r--r--chromium/third_party/blink/renderer/platform/p2p/socket_dispatcher.h31
1 files changed, 19 insertions, 12 deletions
diff --git a/chromium/third_party/blink/renderer/platform/p2p/socket_dispatcher.h b/chromium/third_party/blink/renderer/platform/p2p/socket_dispatcher.h
index 7d75ef814e1..a178b03b79c 100644
--- a/chromium/third_party/blink/renderer/platform/p2p/socket_dispatcher.h
+++ b/chromium/third_party/blink/renderer/platform/p2p/socket_dispatcher.h
@@ -23,12 +23,12 @@
#include <stdint.h>
-#include "base/callback_forward.h"
#include "base/compiler_specific.h"
#include "base/macros.h"
#include "base/memory/ref_counted.h"
#include "base/observer_list_threadsafe.h"
#include "base/synchronization/lock.h"
+#include "base/types/pass_key.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
#include "mojo/public/cpp/bindings/receiver.h"
#include "mojo/public/cpp/bindings/shared_remote.h"
@@ -36,8 +36,12 @@
#include "net/base/network_interfaces.h"
#include "services/network/public/cpp/p2p_socket_type.h"
#include "services/network/public/mojom/p2p.mojom-blink.h"
+#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
+#include "third_party/blink/renderer/platform/mojo/heap_mojo_receiver.h"
+#include "third_party/blink/renderer/platform/mojo/mojo_binding_context.h"
#include "third_party/blink/renderer/platform/p2p/network_list_manager.h"
#include "third_party/blink/renderer/platform/platform_export.h"
+#include "third_party/blink/renderer/platform/supplementable.h"
#include "third_party/blink/renderer/platform/wtf/vector.h"
namespace base {
@@ -46,18 +50,22 @@ class SingleThreadTaskRunner;
namespace blink {
class NetworkListObserver;
-}
-
-namespace blink {
// This class is created on the main thread, but is used primarily on the
// WebRTC worker threads.
class PLATFORM_EXPORT P2PSocketDispatcher
- : public base::RefCountedThreadSafe<P2PSocketDispatcher>,
+ : public GarbageCollected<P2PSocketDispatcher>,
+ public Supplement<MojoBindingContext>,
public blink::NetworkListManager,
public network::mojom::blink::P2PNetworkNotificationClient {
public:
- P2PSocketDispatcher();
+ static const char kSupplementName[];
+
+ static P2PSocketDispatcher& From(MojoBindingContext& context);
+
+ P2PSocketDispatcher(MojoBindingContext& context,
+ base::PassKey<P2PSocketDispatcher>);
+ ~P2PSocketDispatcher() override;
// blink::NetworkListManager interface:
void AddNetworkListObserver(
@@ -68,11 +76,9 @@ class PLATFORM_EXPORT P2PSocketDispatcher
mojo::SharedRemote<network::mojom::blink::P2PSocketManager>
GetP2PSocketManager();
- private:
- friend class base::RefCountedThreadSafe<P2PSocketDispatcher>;
-
- ~P2PSocketDispatcher() override;
+ void Trace(Visitor*) const override;
+ private:
// network::mojom::blink::P2PNetworkNotificationClient interface.
void NetworkListChanged(
const Vector<net::NetworkInterface>& networks,
@@ -103,8 +109,9 @@ class PLATFORM_EXPORT P2PSocketDispatcher
net::IPAddress default_ipv4_local_address_;
net::IPAddress default_ipv6_local_address_;
- mojo::Receiver<network::mojom::blink::P2PNetworkNotificationClient>
- network_notification_client_receiver_{this};
+ HeapMojoReceiver<network::mojom::blink::P2PNetworkNotificationClient,
+ P2PSocketDispatcher>
+ network_notification_client_receiver_;
DISALLOW_COPY_AND_ASSIGN(P2PSocketDispatcher);
};