Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(406)

Unified Diff: content/browser/devtools/protocol/devtools_protocol_client.cc

Issue 1437283003: [DevTools] filter any messages from previous session in DevToolsAgentHostImpl (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/devtools/protocol/devtools_protocol_client.cc
diff --git a/content/browser/devtools/protocol/devtools_protocol_client.cc b/content/browser/devtools/protocol/devtools_protocol_client.cc
index 4b7c25d6fe33a76ef730ea34e7e8b2313c93e11f..9ca03f9d1ab78ada98a01371675f42e979925748 100644
--- a/content/browser/devtools/protocol/devtools_protocol_client.cc
+++ b/content/browser/devtools/protocol/devtools_protocol_client.cc
@@ -6,6 +6,7 @@
#include "base/json/json_writer.h"
#include "base/strings/stringprintf.h"
+#include "content/browser/devtools/protocol/devtools_protocol_delegate.h"
namespace content {
@@ -30,24 +31,24 @@ const int kStatusServerError = -32000;
} // namespace
// static
-const DevToolsCommandId DevToolsProtocolClient::kNoId = -1;
+const int DevToolsCommandId::kNoId = -1;
DevToolsProtocolClient::DevToolsProtocolClient(
- const RawMessageCallback& raw_message_callback)
- : raw_message_callback_(raw_message_callback) {
-}
+ DevToolsProtocolDelegate* notifier)
+ : notifier_(notifier) {}
DevToolsProtocolClient::~DevToolsProtocolClient() {
}
-void DevToolsProtocolClient::SendRawMessage(const std::string& message) {
- raw_message_callback_.Run(message);
+void DevToolsProtocolClient::SendRawNotification(const std::string& message) {
+ notifier_->SendProtocolNotification(message);
}
-void DevToolsProtocolClient::SendMessage(const base::DictionaryValue& message) {
+void DevToolsProtocolClient::SendMessage(int session_id,
+ const base::DictionaryValue& message) {
std::string json_message;
base::JSONWriter::Write(message, &json_message);
- SendRawMessage(json_message);
+ notifier_->SendProtocolResponse(session_id, json_message);
}
void DevToolsProtocolClient::SendNotification(
@@ -58,19 +59,21 @@ void DevToolsProtocolClient::SendNotification(
if (params)
notification.Set(kParamsParam, params.release());
- SendMessage(notification);
+ std::string json_message;
+ base::JSONWriter::Write(notification, &json_message);
+ SendRawNotification(json_message);
}
void DevToolsProtocolClient::SendSuccess(
DevToolsCommandId command_id,
scoped_ptr<base::DictionaryValue> params) {
base::DictionaryValue response;
- response.SetInteger(kIdParam, command_id);
+ response.SetInteger(kIdParam, command_id.call_id);
response.Set(kResultParam,
params ? params.release() : new base::DictionaryValue());
- SendMessage(response);
+ SendMessage(command_id.session_id, response);
}
bool DevToolsProtocolClient::SendError(DevToolsCommandId command_id,
@@ -80,10 +83,10 @@ bool DevToolsProtocolClient::SendError(DevToolsCommandId command_id,
return false;
}
base::DictionaryValue dict;
- if (command_id == kNoId)
+ if (command_id.call_id == DevToolsCommandId::kNoId)
dict.Set(kIdParam, base::Value::CreateNullValue());
else
- dict.SetInteger(kIdParam, command_id);
+ dict.SetInteger(kIdParam, command_id.call_id);
base::DictionaryValue* error_object = new base::DictionaryValue();
error_object->SetInteger(kErrorCodeParam, response.status());
@@ -91,7 +94,7 @@ bool DevToolsProtocolClient::SendError(DevToolsCommandId command_id,
error_object->SetString(kErrorMessageParam, response.message());
dict.Set(kErrorParam, error_object);
- SendMessage(dict);
+ SendMessage(command_id.session_id, dict);
return true;
}

Powered by Google App Engine
This is Rietveld 408576698