Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(717)

Unified Diff: remoting/host/win/wts_session_process_delegate.h

Issue 15077010: [Chromoting] Refactored worker process launching code and speeded up the desktop process launch. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: - Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: remoting/host/win/wts_session_process_delegate.h
diff --git a/remoting/host/win/wts_session_process_delegate.h b/remoting/host/win/wts_session_process_delegate.h
index 7529c88bf6f1c45d23ab8c64876fef185b6eee07..a9532097d2c04c30d076089983d4661cf15d01fc 100644
--- a/remoting/host/win/wts_session_process_delegate.h
+++ b/remoting/host/win/wts_session_process_delegate.h
@@ -9,17 +9,16 @@
#include "base/compiler_specific.h"
#include "base/memory/ref_counted.h"
#include "base/memory/scoped_ptr.h"
+#include "base/threading/non_thread_safe.h"
#include "remoting/host/win/worker_process_launcher.h"
class CommandLine;
namespace base {
-class FilePath;
class SingleThreadTaskRunner;
} // namespace base
namespace IPC {
-class Listener;
class Message;
} // namespace base
@@ -28,28 +27,24 @@ namespace remoting {
// Implements logic for launching and monitoring a worker process in a different
// session.
class WtsSessionProcessDelegate
- : public WorkerProcessLauncher::Delegate {
+ : public base::NonThreadSafe,
+ public WorkerProcessLauncher::Delegate {
public:
WtsSessionProcessDelegate(
- scoped_refptr<base::SingleThreadTaskRunner> main_task_runner,
scoped_refptr<base::SingleThreadTaskRunner> io_task_runner,
scoped_ptr<CommandLine> target,
- uint32 session_id,
bool launch_elevated,
const std::string& channel_security);
~WtsSessionProcessDelegate();
- // IPC::Sender implementation.
- virtual bool Send(IPC::Message* message) OVERRIDE;
+ // Initializes the object returning true on success.
+ bool Initialize(uint32 session_id);
// WorkerProcessLauncher::Delegate implementation.
+ virtual void LaunchProcess(WorkerProcessLauncher* event_handler) OVERRIDE;
+ virtual void Send(IPC::Message* message) OVERRIDE;
virtual void CloseChannel() OVERRIDE;
- virtual DWORD GetProcessId() const OVERRIDE;
- virtual bool IsPermanentError(int failure_count) const OVERRIDE;
- virtual void KillProcess(DWORD exit_code) OVERRIDE;
- virtual bool LaunchProcess(
- IPC::Listener* delegate,
- base::win::ScopedHandle* process_exit_event_out) OVERRIDE;
+ virtual void KillProcess() OVERRIDE;
private:
// The actual implementation resides in WtsSessionProcessDelegate::Core class.

Powered by Google App Engine
This is Rietveld 408576698