mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 19:27:35 +00:00
Userland: Get rid of the OwnPtr<...> boilerplate code for IPC handlers
This commit is contained in:
parent
1a015dc379
commit
7cf2839a26
33 changed files with 389 additions and 385 deletions
|
@ -48,13 +48,18 @@ public:
|
|||
}
|
||||
|
||||
void post_message(const Message& message)
|
||||
{
|
||||
post_message(message.encode());
|
||||
}
|
||||
|
||||
// FIXME: unnecessary copy
|
||||
void post_message(MessageBuffer buffer)
|
||||
{
|
||||
// NOTE: If this connection is being shut down, but has not yet been destroyed,
|
||||
// the socket will be closed. Don't try to send more messages.
|
||||
if (!m_socket->is_open())
|
||||
return;
|
||||
|
||||
auto buffer = message.encode();
|
||||
// Prepend the message size.
|
||||
uint32_t message_size = buffer.data.size();
|
||||
buffer.data.prepend(reinterpret_cast<const u8*>(&message_size), sizeof(message_size));
|
||||
|
|
|
@ -16,6 +16,7 @@ class BufferStream;
|
|||
namespace IPC {
|
||||
|
||||
class Message;
|
||||
class MessageBuffer;
|
||||
|
||||
class Endpoint {
|
||||
public:
|
||||
|
@ -23,7 +24,7 @@ public:
|
|||
|
||||
virtual u32 magic() const = 0;
|
||||
virtual String name() const = 0;
|
||||
virtual OwnPtr<Message> handle(const Message&) = 0;
|
||||
virtual OwnPtr<MessageBuffer> handle(const Message&) = 0;
|
||||
|
||||
protected:
|
||||
Endpoint();
|
||||
|
|
|
@ -83,13 +83,13 @@ void RequestClient::handle(const Messages::RequestClient::HeadersBecameAvailable
|
|||
}
|
||||
}
|
||||
|
||||
OwnPtr<Messages::RequestClient::CertificateRequestedResponse> RequestClient::handle(const Messages::RequestClient::CertificateRequested& message)
|
||||
Messages::RequestClient::CertificateRequestedResponse RequestClient::handle(const Messages::RequestClient::CertificateRequested& message)
|
||||
{
|
||||
if (auto request = const_cast<Request*>(m_requests.get(message.request_id()).value_or(nullptr))) {
|
||||
request->did_request_certificates({});
|
||||
}
|
||||
|
||||
return make<Messages::RequestClient::CertificateRequestedResponse>();
|
||||
return {};
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -35,7 +35,7 @@ private:
|
|||
|
||||
virtual void handle(const Messages::RequestClient::RequestProgress&) override;
|
||||
virtual void handle(const Messages::RequestClient::RequestFinished&) override;
|
||||
virtual OwnPtr<Messages::RequestClient::CertificateRequestedResponse> handle(const Messages::RequestClient::CertificateRequested&) override;
|
||||
virtual Messages::RequestClient::CertificateRequestedResponse handle(const Messages::RequestClient::CertificateRequested&) override;
|
||||
virtual void handle(const Messages::RequestClient::HeadersBecameAvailable&) override;
|
||||
|
||||
HashMap<i32, RefPtr<Request>> m_requests;
|
||||
|
|
|
@ -147,22 +147,20 @@ void WebContentClient::handle(const Messages::WebContentClient::DidJSConsoleOutp
|
|||
m_view.notify_server_did_js_console_output(message.method(), message.line());
|
||||
}
|
||||
|
||||
OwnPtr<Messages::WebContentClient::DidRequestAlertResponse> WebContentClient::handle(const Messages::WebContentClient::DidRequestAlert& message)
|
||||
Messages::WebContentClient::DidRequestAlertResponse WebContentClient::handle(const Messages::WebContentClient::DidRequestAlert& message)
|
||||
{
|
||||
m_view.notify_server_did_request_alert({}, message.message());
|
||||
return make<Messages::WebContentClient::DidRequestAlertResponse>();
|
||||
return {};
|
||||
}
|
||||
|
||||
OwnPtr<Messages::WebContentClient::DidRequestConfirmResponse> WebContentClient::handle(const Messages::WebContentClient::DidRequestConfirm& message)
|
||||
Messages::WebContentClient::DidRequestConfirmResponse WebContentClient::handle(const Messages::WebContentClient::DidRequestConfirm& message)
|
||||
{
|
||||
auto result = m_view.notify_server_did_request_confirm({}, message.message());
|
||||
return make<Messages::WebContentClient::DidRequestConfirmResponse>(result);
|
||||
return m_view.notify_server_did_request_confirm({}, message.message());
|
||||
}
|
||||
|
||||
OwnPtr<Messages::WebContentClient::DidRequestPromptResponse> WebContentClient::handle(const Messages::WebContentClient::DidRequestPrompt& message)
|
||||
Messages::WebContentClient::DidRequestPromptResponse WebContentClient::handle(const Messages::WebContentClient::DidRequestPrompt& message)
|
||||
{
|
||||
auto result = m_view.notify_server_did_request_prompt({}, message.message(), message.default_());
|
||||
return make<Messages::WebContentClient::DidRequestPromptResponse>(result);
|
||||
return m_view.notify_server_did_request_prompt({}, message.message(), message.default_());
|
||||
}
|
||||
|
||||
void WebContentClient::handle(const Messages::WebContentClient::DidChangeFavicon& message)
|
||||
|
@ -174,10 +172,9 @@ void WebContentClient::handle(const Messages::WebContentClient::DidChangeFavicon
|
|||
m_view.notify_server_did_change_favicon(*message.favicon().bitmap());
|
||||
}
|
||||
|
||||
OwnPtr<Messages::WebContentClient::DidRequestCookieResponse> WebContentClient::handle(const Messages::WebContentClient::DidRequestCookie& message)
|
||||
Messages::WebContentClient::DidRequestCookieResponse WebContentClient::handle(const Messages::WebContentClient::DidRequestCookie& message)
|
||||
{
|
||||
auto result = m_view.notify_server_did_request_cookie({}, message.url(), static_cast<Cookie::Source>(message.source()));
|
||||
return make<Messages::WebContentClient::DidRequestCookieResponse>(result);
|
||||
return m_view.notify_server_did_request_cookie({}, message.url(), static_cast<Cookie::Source>(message.source()));
|
||||
}
|
||||
|
||||
void WebContentClient::handle(const Messages::WebContentClient::DidSetCookie& message)
|
||||
|
|
|
@ -53,10 +53,10 @@ private:
|
|||
virtual void handle(const Messages::WebContentClient::DidGetSource&) override;
|
||||
virtual void handle(const Messages::WebContentClient::DidJSConsoleOutput&) override;
|
||||
virtual void handle(const Messages::WebContentClient::DidChangeFavicon&) override;
|
||||
virtual OwnPtr<Messages::WebContentClient::DidRequestAlertResponse> handle(const Messages::WebContentClient::DidRequestAlert&) override;
|
||||
virtual OwnPtr<Messages::WebContentClient::DidRequestConfirmResponse> handle(const Messages::WebContentClient::DidRequestConfirm&) override;
|
||||
virtual OwnPtr<Messages::WebContentClient::DidRequestPromptResponse> handle(const Messages::WebContentClient::DidRequestPrompt&) override;
|
||||
virtual OwnPtr<Messages::WebContentClient::DidRequestCookieResponse> handle(const Messages::WebContentClient::DidRequestCookie&) override;
|
||||
virtual Messages::WebContentClient::DidRequestAlertResponse handle(const Messages::WebContentClient::DidRequestAlert&) override;
|
||||
virtual Messages::WebContentClient::DidRequestConfirmResponse handle(const Messages::WebContentClient::DidRequestConfirm&) override;
|
||||
virtual Messages::WebContentClient::DidRequestPromptResponse handle(const Messages::WebContentClient::DidRequestPrompt&) override;
|
||||
virtual Messages::WebContentClient::DidRequestCookieResponse handle(const Messages::WebContentClient::DidRequestCookie&) override;
|
||||
virtual void handle(const Messages::WebContentClient::DidSetCookie&) override;
|
||||
|
||||
OutOfProcessWebView& m_view;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue