OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef REMOTING_HOST_DAEMON_PROCESS_H_ | 5 #ifndef REMOTING_HOST_DAEMON_PROCESS_H_ |
6 #define REMOTING_HOST_DAEMON_PROCESS_H_ | 6 #define REMOTING_HOST_DAEMON_PROCESS_H_ |
7 | 7 |
8 #include <list> | 8 #include <list> |
9 #include <string> | 9 #include <string> |
10 | 10 |
11 #include "base/basictypes.h" | 11 #include "base/basictypes.h" |
12 #include "base/compiler_specific.h" | 12 #include "base/compiler_specific.h" |
13 #include "base/memory/ref_counted.h" | 13 #include "base/memory/ref_counted.h" |
14 #include "base/memory/scoped_ptr.h" | 14 #include "base/memory/scoped_ptr.h" |
15 #include "base/memory/weak_ptr.h" | 15 #include "base/memory/weak_ptr.h" |
16 #include "base/observer_list.h" | 16 #include "base/observer_list.h" |
17 #include "base/process/process.h" | 17 #include "base/process/process.h" |
18 #include "ipc/ipc_channel.h" | 18 #include "ipc/ipc_channel.h" |
19 #include "ipc/ipc_channel_proxy.h" | 19 #include "ipc/ipc_channel_proxy.h" |
20 #include "ipc/ipc_platform_file.h" | 20 #include "ipc/ipc_platform_file.h" |
21 #include "remoting/host/config_watcher.h" | 21 #include "remoting/host/config_watcher.h" |
| 22 #include "remoting/host/host_exit_codes.h" |
22 #include "remoting/host/host_status_monitor.h" | 23 #include "remoting/host/host_status_monitor.h" |
23 #include "remoting/host/worker_process_ipc_delegate.h" | 24 #include "remoting/host/worker_process_ipc_delegate.h" |
24 | 25 |
25 struct SerializedTransportRoute; | 26 struct SerializedTransportRoute; |
26 | 27 |
27 namespace tracked_objects { | 28 namespace tracked_objects { |
28 class Location; | 29 class Location; |
29 } // namespace tracked_objects | 30 } // namespace tracked_objects |
30 | 31 |
31 namespace remoting { | 32 namespace remoting { |
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
116 // Handlers for the host status notifications received from the network | 117 // Handlers for the host status notifications received from the network |
117 // process. | 118 // process. |
118 void OnAccessDenied(const std::string& jid); | 119 void OnAccessDenied(const std::string& jid); |
119 void OnClientAuthenticated(const std::string& jid); | 120 void OnClientAuthenticated(const std::string& jid); |
120 void OnClientConnected(const std::string& jid); | 121 void OnClientConnected(const std::string& jid); |
121 void OnClientDisconnected(const std::string& jid); | 122 void OnClientDisconnected(const std::string& jid); |
122 void OnClientRouteChange(const std::string& jid, | 123 void OnClientRouteChange(const std::string& jid, |
123 const std::string& channel_name, | 124 const std::string& channel_name, |
124 const SerializedTransportRoute& route); | 125 const SerializedTransportRoute& route); |
125 void OnHostStarted(const std::string& xmpp_login); | 126 void OnHostStarted(const std::string& xmpp_login); |
126 void OnHostShutdown(); | 127 void OnHostShutdown(int exit_code); |
127 | 128 |
128 // Creates a platform-specific desktop session and assigns a unique ID to it. | 129 // Creates a platform-specific desktop session and assigns a unique ID to it. |
129 // An implementation should validate |params| as they are received via IPC. | 130 // An implementation should validate |params| as they are received via IPC. |
130 virtual scoped_ptr<DesktopSession> DoCreateDesktopSession( | 131 virtual scoped_ptr<DesktopSession> DoCreateDesktopSession( |
131 int terminal_id, | 132 int terminal_id, |
132 const ScreenResolution& resolution, | 133 const ScreenResolution& resolution, |
133 bool virtual_terminal) = 0; | 134 bool virtual_terminal) = 0; |
134 | 135 |
135 // Requests the network process to crash. | 136 // Requests the network process to crash. |
136 virtual void DoCrashNetworkProcess( | 137 virtual void DoCrashNetworkProcess( |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
184 scoped_ptr<HostEventLogger> host_event_logger_; | 185 scoped_ptr<HostEventLogger> host_event_logger_; |
185 | 186 |
186 base::WeakPtrFactory<DaemonProcess> weak_factory_; | 187 base::WeakPtrFactory<DaemonProcess> weak_factory_; |
187 | 188 |
188 DISALLOW_COPY_AND_ASSIGN(DaemonProcess); | 189 DISALLOW_COPY_AND_ASSIGN(DaemonProcess); |
189 }; | 190 }; |
190 | 191 |
191 } // namespace remoting | 192 } // namespace remoting |
192 | 193 |
193 #endif // REMOTING_HOST_DAEMON_PROCESS_H_ | 194 #endif // REMOTING_HOST_DAEMON_PROCESS_H_ |
OLD | NEW |