Index: chrome/common/worker_messages.h |
=================================================================== |
--- chrome/common/worker_messages.h (revision 46627) |
+++ chrome/common/worker_messages.h (working copy) |
@@ -14,6 +14,7 @@ |
#include "base/basictypes.h" |
#include "chrome/common/common_param_traits.h" |
#include "ipc/ipc_message_utils.h" |
+#include "googleurl/src/gurl.h" |
typedef std::pair<string16, std::vector<int> > QueuedMessage; |
@@ -30,6 +31,17 @@ |
string16 source_url; |
}; |
+// Parameter structure for WorkerProcessMsg_CreateWorker. |
+struct WorkerProcessMsg_CreateWorker_Params { |
+ GURL url; |
+ bool is_shared; |
+ string16 name; |
+ int route_id; |
+ int creator_process_id; |
+ int creator_appcache_host_id; // Only valid for dedicated workers. |
+ int64 shared_worker_appcache_id; // Only valid for shared workers. |
+}; |
+ |
namespace IPC { |
// Traits for WorkerHostMsg_PostConsoleMessageToWorkerObject_Params structure |
@@ -71,6 +83,48 @@ |
} |
}; |
+// Traits for WorkerProcessMsg_CreateWorker_Params. |
+template <> |
+struct ParamTraits<WorkerProcessMsg_CreateWorker_Params> { |
+ typedef WorkerProcessMsg_CreateWorker_Params param_type; |
+ static void Write(Message* m, const param_type& p) { |
+ WriteParam(m, p.url); |
+ WriteParam(m, p.is_shared); |
+ WriteParam(m, p.name); |
+ WriteParam(m, p.route_id); |
+ WriteParam(m, p.creator_process_id); |
+ WriteParam(m, p.creator_appcache_host_id); |
+ WriteParam(m, p.shared_worker_appcache_id); |
+ } |
+ static bool Read(const Message* m, void** iter, param_type* p) { |
+ return |
+ ReadParam(m, iter, &p->url) && |
+ ReadParam(m, iter, &p->is_shared) && |
+ ReadParam(m, iter, &p->name) && |
+ ReadParam(m, iter, &p->route_id) && |
+ ReadParam(m, iter, &p->creator_process_id) && |
+ ReadParam(m, iter, &p->creator_appcache_host_id) && |
+ ReadParam(m, iter, &p->shared_worker_appcache_id); |
+ } |
+ static void Log(const param_type& p, std::wstring* l) { |
+ l->append(L"("); |
+ LogParam(p.url, l); |
+ l->append(L", "); |
+ LogParam(p.is_shared, l); |
+ l->append(L", "); |
+ LogParam(p.name, l); |
+ l->append(L", "); |
+ LogParam(p.route_id, l); |
+ l->append(L", "); |
+ LogParam(p.creator_process_id, l); |
+ l->append(L", "); |
+ LogParam(p.creator_appcache_host_id, l); |
+ l->append(L", "); |
+ LogParam(p.shared_worker_appcache_id, l); |
+ l->append(L")"); |
+ } |
+}; |
+ |
} // namespace IPC |
#define MESSAGES_INTERNAL_FILE "chrome/common/worker_messages_internal.h" |