summaryrefslogtreecommitdiffstats
path: root/chrome/browser/service/service_process_control.h
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/service/service_process_control.h')
-rw-r--r--chrome/browser/service/service_process_control.h25
1 files changed, 19 insertions, 6 deletions
diff --git a/chrome/browser/service/service_process_control.h b/chrome/browser/service/service_process_control.h
index ff22eb3..efbd545 100644
--- a/chrome/browser/service/service_process_control.h
+++ b/chrome/browser/service/service_process_control.h
@@ -20,6 +20,10 @@
class Profile;
+namespace remoting {
+struct ChromotingHostInfo;
+} // namespace remoting
+
// A ServiceProcessControl works as a portal between the service process and
// the browser process.
//
@@ -36,6 +40,8 @@ class ServiceProcessControl : public IPC::Channel::Sender,
public:
typedef IDMap<ServiceProcessControl>::iterator iterator;
typedef std::queue<IPC::Message> MessageQueue;
+ typedef Callback1<const remoting::ChromotingHostInfo&>::Type
+ GetRemotingHostStatusCallback;
// An interface for handling messages received from the service process.
class MessageHandler {
@@ -86,6 +92,7 @@ class ServiceProcessControl : public IPC::Channel::Sender,
// Message handlers
void OnGoodDay();
void OnCloudPrintProxyIsEnabled(bool enabled, std::string email);
+ void OnRemotingHostInfo(remoting::ChromotingHostInfo host_info);
// Send a hello message to the service process for testing purpose.
// Return true if the message was sent.
@@ -96,12 +103,6 @@ class ServiceProcessControl : public IPC::Channel::Sender,
// Return true if the message was sent.
bool Shutdown();
- // Send a message to enable the remoting service in the service process.
- // Return true if the message was sent.
- bool EnableRemotingWithTokens(const std::string& user,
- const std::string& remoting_token,
- const std::string& talk_token);
-
// Send a message to the service process to request a response
// containing the enablement status of the cloud print proxy and the
// registered email address. The callback gets the information when
@@ -109,6 +110,17 @@ class ServiceProcessControl : public IPC::Channel::Sender,
bool GetCloudPrintProxyStatus(
Callback2<bool, std::string>::Type* cloud_print_status_callback);
+ // Send a message to enable the remoting service in the service process.
+ // Return true if the message was sent.
+ bool SetRemotingHostCredentials(const std::string& user,
+ const std::string& auth_token);
+
+ bool EnableRemotingHost();
+ bool DisableRemotingHost();
+
+ bool GetRemotingHostStatus(
+ GetRemotingHostStatusCallback* status_callback);
+
// Set the message handler for receiving messages from the service process.
// TODO(hclam): Allow more than 1 handler.
void SetMessageHandler(MessageHandler* message_handler) {
@@ -149,6 +161,7 @@ class ServiceProcessControl : public IPC::Channel::Sender,
// Callback that gets invoked when a status message is received from
// the cloud print proxy.
scoped_ptr<Callback2<bool, std::string>::Type> cloud_print_status_callback_;
+ scoped_ptr<GetRemotingHostStatusCallback> remoting_host_status_callback_;
// Handler for messages from service process.
MessageHandler* message_handler_;