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 "chrome/common/cloud_print/cloud_print_proxy_info.h"
10 #include "ipc/ipc_channel_handle.h"
11 #include "ipc/ipc_message_macros.h"
13 #define IPC_MESSAGE_START ServiceMsgStart
15 IPC_STRUCT_TRAITS_BEGIN(cloud_print::CloudPrintProxyInfo
)
16 IPC_STRUCT_TRAITS_MEMBER(enabled
)
17 IPC_STRUCT_TRAITS_MEMBER(email
)
18 IPC_STRUCT_TRAITS_MEMBER(proxy_id
)
19 IPC_STRUCT_TRAITS_END()
21 //-----------------------------------------------------------------------------
22 // Service process messages:
23 // These are messages from the browser to the service process.
24 // Tell the service process to enable the cloud proxy passing in the lsid
25 // of the account to be used.
26 IPC_MESSAGE_CONTROL1(ServiceMsg_EnableCloudPrintProxy
,
27 std::string
/* lsid */)
29 // Tell the service process to enable the cloud proxy passing in the OAuth2
30 // auth code of a robot account.
31 IPC_MESSAGE_CONTROL5(ServiceMsg_EnableCloudPrintProxyWithRobot
,
32 std::string
/* robot_auth_code */,
33 std::string
/* robot_email */,
34 std::string
/* user_email */,
35 bool /* connect_new_printers */,
36 std::vector
<std::string
> /* printer_blacklist */)
38 // Tell the service process to disable the cloud proxy.
39 IPC_MESSAGE_CONTROL0(ServiceMsg_DisableCloudPrintProxy
)
41 // Requests a message back on the current status of the cloud print proxy
42 // (whether it is enabled, the email address and the proxy id).
43 IPC_MESSAGE_CONTROL0(ServiceMsg_GetCloudPrintProxyInfo
)
45 // Tell the service process to shutdown.
46 IPC_MESSAGE_CONTROL0(ServiceMsg_Shutdown
)
48 // Tell the service process that an update is available.
49 IPC_MESSAGE_CONTROL0(ServiceMsg_UpdateAvailable
)
51 //-----------------------------------------------------------------------------
52 // Service process host messages:
53 // These are messages from the service process to the browser.
54 // Sent when the cloud print proxy has an authentication error.
55 IPC_MESSAGE_CONTROL0(ServiceHostMsg_CloudPrintProxy_AuthError
)
57 // Sent as a response to a request for cloud print proxy info
58 IPC_MESSAGE_CONTROL1(ServiceHostMsg_CloudPrintProxy_Info
,
59 cloud_print::CloudPrintProxyInfo
/* proxy info */)