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

Unified Diff: content/common/resource_messages.cc

Issue 1966983003: Generate param traits size methods for IPC files in content/ (and traits it depends on). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix owners Created 4 years, 7 months 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
« no previous file with comments | « content/common/resource_messages.h ('k') | content/public/common/OWNERS » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/common/resource_messages.cc
diff --git a/content/common/resource_messages.cc b/content/common/resource_messages.cc
index aa2481267e99e9cb77c419f5a639e76a2cd9eaf1..842952f47ab38b6aac06cef2d8de746bf294cc93 100644
--- a/content/common/resource_messages.cc
+++ b/content/common/resource_messages.cc
@@ -9,6 +9,16 @@
namespace IPC {
+void ParamTraits<scoped_refptr<net::HttpResponseHeaders>>::GetSize(
+ base::PickleSizer* s, const param_type& p) {
+ GetParamSize(s, p.get() != NULL);
+ if (p.get()) {
+ base::Pickle temp;
+ p->Persist(&temp, net::HttpResponseHeaders::PERSIST_SANS_COOKIES);
+ s->AddBytes(temp.payload_size());
+ }
+}
+
void ParamTraits<scoped_refptr<net::HttpResponseHeaders>>::Write(
base::Pickle* m,
const param_type& p) {
@@ -36,6 +46,49 @@ void ParamTraits<scoped_refptr<net::HttpResponseHeaders> >::Log(
l->append("<HttpResponseHeaders>");
}
+void ParamTraits<storage::DataElement>::GetSize(base::PickleSizer* s,
+ const param_type& p) {
+ GetParamSize(s, static_cast<int>(p.type()));
+ switch (p.type()) {
+ case storage::DataElement::TYPE_BYTES: {
+ s->AddData(static_cast<int>(p.length()));
+ break;
+ }
+ case storage::DataElement::TYPE_BYTES_DESCRIPTION: {
+ GetParamSize(s, p.length());
+ break;
+ }
+ case storage::DataElement::TYPE_FILE: {
+ GetParamSize(s, p.path());
+ GetParamSize(s, p.offset());
+ GetParamSize(s, p.length());
+ GetParamSize(s, p.expected_modification_time());
+ break;
+ }
+ case storage::DataElement::TYPE_FILE_FILESYSTEM: {
+ GetParamSize(s, p.filesystem_url());
+ GetParamSize(s, p.offset());
+ GetParamSize(s, p.length());
+ GetParamSize(s, p.expected_modification_time());
+ break;
+ }
+ case storage::DataElement::TYPE_BLOB: {
+ GetParamSize(s, p.blob_uuid());
+ GetParamSize(s, p.offset());
+ GetParamSize(s, p.length());
+ break;
+ }
+ case storage::DataElement::TYPE_DISK_CACHE_ENTRY: {
+ NOTREACHED() << "Can't be sent by IPC.";
+ break;
+ }
+ case storage::DataElement::TYPE_UNKNOWN: {
+ NOTREACHED();
+ break;
+ }
+ }
+}
+
void ParamTraits<storage::DataElement>::Write(base::Pickle* m,
const param_type& p) {
WriteParam(m, static_cast<int>(p.type()));
@@ -162,6 +215,19 @@ void ParamTraits<storage::DataElement>::Log(const param_type& p,
l->append("<storage::DataElement>");
}
+void ParamTraits<scoped_refptr<content::ResourceDevToolsInfo>>::GetSize(
+ base::PickleSizer* s, const param_type& p) {
+ GetParamSize(s, p.get() != NULL);
+ if (p.get()) {
+ GetParamSize(s, p->http_status_code);
+ GetParamSize(s, p->http_status_text);
+ GetParamSize(s, p->request_headers);
+ GetParamSize(s, p->response_headers);
+ GetParamSize(s, p->request_headers_text);
+ GetParamSize(s, p->response_headers_text);
+ }
+}
+
void ParamTraits<scoped_refptr<content::ResourceDevToolsInfo>>::Write(
base::Pickle* m,
const param_type& p) {
@@ -206,6 +272,30 @@ void ParamTraits<scoped_refptr<content::ResourceDevToolsInfo> >::Log(
l->append(")");
}
+void ParamTraits<net::LoadTimingInfo>::GetSize(base::PickleSizer* s,
+ const param_type& p) {
+ GetParamSize(s, p.socket_log_id);
+ GetParamSize(s, p.socket_reused);
+ GetParamSize(s, p.request_start_time.is_null());
+ if (p.request_start_time.is_null())
+ return;
+ GetParamSize(s, p.request_start_time);
+ GetParamSize(s, p.request_start);
+ GetParamSize(s, p.proxy_resolve_start);
+ GetParamSize(s, p.proxy_resolve_end);
+ GetParamSize(s, p.connect_timing.dns_start);
+ GetParamSize(s, p.connect_timing.dns_end);
+ GetParamSize(s, p.connect_timing.connect_start);
+ GetParamSize(s, p.connect_timing.connect_end);
+ GetParamSize(s, p.connect_timing.ssl_start);
+ GetParamSize(s, p.connect_timing.ssl_end);
+ GetParamSize(s, p.send_start);
+ GetParamSize(s, p.send_end);
+ GetParamSize(s, p.receive_headers_end);
+ GetParamSize(s, p.push_start);
+ GetParamSize(s, p.push_end);
+}
+
void ParamTraits<net::LoadTimingInfo>::Write(base::Pickle* m,
const param_type& p) {
WriteParam(m, p.socket_log_id);
@@ -299,6 +389,15 @@ void ParamTraits<net::LoadTimingInfo>::Log(const param_type& p,
l->append(")");
}
+void ParamTraits<scoped_refptr<content::ResourceRequestBody>>::GetSize(
+ base::PickleSizer* s, const param_type& p) {
+ GetParamSize(s, p.get() != NULL);
+ if (p.get()) {
+ GetParamSize(s, *p->elements());
+ GetParamSize(s, p->identifier());
+ }
+}
+
void ParamTraits<scoped_refptr<content::ResourceRequestBody>>::Write(
base::Pickle* m,
const param_type& p) {
« no previous file with comments | « content/common/resource_messages.h ('k') | content/public/common/OWNERS » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698