1 // Copyright (c) 2011 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 // Multiply-included message file, no traditional include guard.
9 #include "base/values.h"
10 #include "chrome/common/cloud_print/cloud_print_proxy_info.h"
11 #include "ipc/ipc_channel_handle.h"
12 #include "ipc/ipc_message_macros.h"
14 #define IPC_MESSAGE_START ServiceMsgStart
16 IPC_STRUCT_TRAITS_BEGIN(cloud_print::CloudPrintProxyInfo
)
17 IPC_STRUCT_TRAITS_MEMBER(enabled
)
18 IPC_STRUCT_TRAITS_MEMBER(email
)
19 IPC_STRUCT_TRAITS_MEMBER(proxy_id
)
20 IPC_STRUCT_TRAITS_END()
22 // Tell the service process to enable the cloud proxy passing in the OAuth2
23 // auth code of a robot account.
24 IPC_MESSAGE_CONTROL4(ServiceMsg_EnableCloudPrintProxyWithRobot
,
25 std::string
/* robot_auth_code */,
26 std::string
/* robot_email */,
27 std::string
/* user_email */,
28 base::DictionaryValue
/* user_settings */)
30 // Tell the service process to disable the cloud proxy.
31 IPC_MESSAGE_CONTROL0(ServiceMsg_DisableCloudPrintProxy
)
33 // Requests a message back on the current status of the cloud print proxy
34 // (whether it is enabled, the email address and the proxy id).
35 IPC_MESSAGE_CONTROL0(ServiceMsg_GetCloudPrintProxyInfo
)
37 // Requests a message back with serialized UMA histograms.
38 IPC_MESSAGE_CONTROL0(ServiceMsg_GetHistograms
)
40 // Requests a message back with all available printers.
41 IPC_MESSAGE_CONTROL0(ServiceMsg_GetPrinters
)
43 // Tell the service process to shutdown.
44 IPC_MESSAGE_CONTROL0(ServiceMsg_Shutdown
)
46 // Tell the service process that an update is available.
47 IPC_MESSAGE_CONTROL0(ServiceMsg_UpdateAvailable
)
49 //-----------------------------------------------------------------------------
50 // Service process host messages:
51 // These are messages from the service process to the browser.
52 // Sent as a response to a request for cloud print proxy info
53 IPC_MESSAGE_CONTROL1(ServiceHostMsg_CloudPrintProxy_Info
,
54 cloud_print::CloudPrintProxyInfo
/* proxy info */)
56 // Sent as a response to ServiceMsg_GetHistograms.
57 IPC_MESSAGE_CONTROL1(ServiceHostMsg_Histograms
,
58 std::vector
<std::string
> /* pickled_histograms */)
60 // Sent as a response to ServiceMsg_GetPrinters.
61 IPC_MESSAGE_CONTROL1(ServiceHostMsg_Printers
,
62 std::vector
<std::string
> /* printers */)