Commit d4f491c7 authored by Julie Jeongeun Kim's avatar Julie Jeongeun Kim Committed by Commit Bot

Convert KeepAlive in keep_alive.mojom to new Mojo types

This CL converts KeepAlive in keep_alive.mojom using
PendingReceiver, ReceiverSet, and Receiver.

Bug: 955171
Change-Id: I29b195d41000d185a3c7b45193794aac16ad0829
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1846413Reviewed-by: default avatarKen Rockot <rockot@google.com>
Commit-Queue: Julie Kim <jkim@igalia.com>
Cr-Commit-Position: refs/heads/master@{#703675}
parent f29e887d
......@@ -15,21 +15,21 @@ namespace extensions {
// static
void KeepAliveImpl::Create(content::BrowserContext* context,
const Extension* extension,
KeepAliveRequest request,
mojo::PendingReceiver<KeepAlive> receiver,
content::RenderFrameHost* render_frame_host) {
// Owns itself.
new KeepAliveImpl(context, extension, std::move(request));
new KeepAliveImpl(context, extension, std::move(receiver));
}
KeepAliveImpl::KeepAliveImpl(content::BrowserContext* context,
const Extension* extension,
KeepAliveRequest request)
mojo::PendingReceiver<KeepAlive> receiver)
: context_(context),
extension_(extension),
binding_(this, std::move(request)) {
receiver_(this, std::move(receiver)) {
ProcessManager::Get(context_)->IncrementLazyKeepaliveCount(
extension_, Activity::MOJO, std::string());
binding_.set_connection_error_handler(
receiver_.set_disconnect_handler(
base::Bind(&KeepAliveImpl::OnDisconnected, base::Unretained(this)));
extension_registry_observer_.Add(ExtensionRegistry::Get(context_));
}
......
......@@ -11,7 +11,8 @@
#include "extensions/browser/extension_registry.h"
#include "extensions/browser/extension_registry_observer.h"
#include "extensions/common/mojom/keep_alive.mojom.h"
#include "mojo/public/cpp/bindings/binding.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
#include "mojo/public/cpp/bindings/receiver.h"
namespace content {
class BrowserContext;
......@@ -26,16 +27,16 @@ class Extension;
class KeepAliveImpl : public KeepAlive, public ExtensionRegistryObserver {
public:
// Create a keep alive for |extension| running in |context| and connect it to
// |request|. When the requester closes its pipe, the keep alive ends.
// |receiver|. When the receiver closes its pipe, the keep alive ends.
static void Create(content::BrowserContext* browser_context,
const Extension* extension,
KeepAliveRequest request,
mojo::PendingReceiver<KeepAlive> receiver,
content::RenderFrameHost* render_frame_host);
private:
KeepAliveImpl(content::BrowserContext* context,
const Extension* extension,
KeepAliveRequest request);
mojo::PendingReceiver<KeepAlive> receiver);
~KeepAliveImpl() override;
// ExtensionRegistryObserver overrides.
......@@ -51,7 +52,7 @@ class KeepAliveImpl : public KeepAlive, public ExtensionRegistryObserver {
const Extension* extension_;
ScopedObserver<ExtensionRegistry, ExtensionRegistryObserver>
extension_registry_observer_{this};
mojo::Binding<KeepAlive> binding_;
mojo::Receiver<KeepAlive> receiver_;
DISALLOW_COPY_AND_ASSIGN(KeepAliveImpl);
};
......
......@@ -50,9 +50,9 @@ class KeepAliveTest : public ExtensionsTest {
}
}
void CreateKeepAlive(KeepAliveRequest request) {
void CreateKeepAlive(mojo::PendingReceiver<KeepAlive> receiver) {
KeepAliveImpl::Create(browser_context(), extension_.get(),
std::move(request), nullptr);
std::move(receiver), nullptr);
}
const Extension* extension() { return extension_.get(); }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment