1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // Message definition file, included multiple times, hence no include guard.
9 #include "ipc/ipc_message.h"
10 #include "ipc/ipc_message_macros.h"
11 #include "ipc/ipc_param_traits.h"
14 #undef IPC_MESSAGE_EXPORT
15 #define IPC_MESSAGE_EXPORT CONTENT_EXPORT
17 #define IPC_MESSAGE_START EmbeddedWorkerMsgStart
19 // Parameters structure for EmbeddedWorkerMsg_StartWorker.
20 IPC_STRUCT_BEGIN(EmbeddedWorkerMsg_StartWorker_Params
)
21 IPC_STRUCT_MEMBER(int, embedded_worker_id
)
22 IPC_STRUCT_MEMBER(int64
, service_worker_version_id
)
23 IPC_STRUCT_MEMBER(GURL
, scope
)
24 IPC_STRUCT_MEMBER(GURL
, script_url
)
25 IPC_STRUCT_MEMBER(int, worker_devtools_agent_route_id
)
28 // Parameters structure for EmbeddedWorkerHostMsg_ReportConsoleMessage.
29 // The data members directly correspond to parameters of
30 // WorkerMessagingProxy::reportConsoleMessage()
31 IPC_STRUCT_BEGIN(EmbeddedWorkerHostMsg_ReportConsoleMessage_Params
)
32 IPC_STRUCT_MEMBER(int, source_identifier
)
33 IPC_STRUCT_MEMBER(int, message_level
)
34 IPC_STRUCT_MEMBER(base::string16
, message
)
35 IPC_STRUCT_MEMBER(int, line_number
)
36 IPC_STRUCT_MEMBER(GURL
, source_url
)
39 // Browser -> Renderer message to create a new embedded worker context.
40 IPC_MESSAGE_CONTROL1(EmbeddedWorkerMsg_StartWorker
,
41 EmbeddedWorkerMsg_StartWorker_Params
/* params */)
43 // Browser -> Renderer message to stop (terminate) the embedded worker.
44 IPC_MESSAGE_CONTROL1(EmbeddedWorkerMsg_StopWorker
,
45 int /* embedded_worker_id */)
47 // Renderer -> Browser message to indicate that the worker has loadedd the
49 IPC_MESSAGE_CONTROL1(EmbeddedWorkerHostMsg_WorkerScriptLoaded
,
50 int /* embedded_worker_id */)
52 // Renderer -> Browser message to indicate that the worker has failed to load
54 IPC_MESSAGE_CONTROL1(EmbeddedWorkerHostMsg_WorkerScriptLoadFailed
,
55 int /* embedded_worker_id */)
57 // Renderer -> Browser message to indicate that the worker is started.
58 IPC_MESSAGE_CONTROL2(EmbeddedWorkerHostMsg_WorkerStarted
,
60 int /* embedded_worker_id */)
62 // Renderer -> Browser message to indicate that the worker is stopped.
63 IPC_MESSAGE_CONTROL1(EmbeddedWorkerHostMsg_WorkerStopped
,
64 int /* embedded_worker_id */)
66 // Renderer -> Browser message to report an exception.
67 IPC_MESSAGE_CONTROL5(EmbeddedWorkerHostMsg_ReportException
,
68 int /* embedded_worker_id */,
69 base::string16
/* error_message */,
70 int /* line_number */,
71 int /* column_number */,
72 GURL
/* source_url */)
74 // Renderer -> Browser message to report console message.
76 EmbeddedWorkerHostMsg_ReportConsoleMessage
,
77 int /* embedded_worker_id */,
78 EmbeddedWorkerHostMsg_ReportConsoleMessage_Params
/* params */)
80 // ---------------------------------------------------------------------------
81 // For EmbeddedWorkerContext related messages, which are directly sent from
82 // browser to the worker thread in the child process. We use a new message class
83 // for this for easier cross-thread message dispatching.
85 #undef IPC_MESSAGE_START
86 #define IPC_MESSAGE_START EmbeddedWorkerContextMsgStart
88 // Browser -> Renderer message to send message.
89 IPC_MESSAGE_CONTROL3(EmbeddedWorkerContextMsg_MessageToWorker
,
91 int /* embedded_worker_id */,
92 IPC::Message
/* message */)