| Index: chrome/test/automation/proxy_launcher.h
|
| diff --git a/chrome/test/automation/proxy_launcher.h b/chrome/test/automation/proxy_launcher.h
|
| index d306a334fd87ba5fbbb3fbd77de186dcb789df1f..e2a273a164494cd714ee2bb915102d427e1e3b39 100644
|
| --- a/chrome/test/automation/proxy_launcher.h
|
| +++ b/chrome/test/automation/proxy_launcher.h
|
| @@ -65,8 +65,10 @@ class ProxyLauncher {
|
| virtual ~ProxyLauncher();
|
|
|
| // Launches the browser if needed and establishes a connection with it.
|
| - virtual void InitializeConnection(const LaunchState& state,
|
| - bool wait_for_initial_loads) = 0;
|
| + // Returns true on success.
|
| + virtual bool InitializeConnection(
|
| + const LaunchState& state,
|
| + bool wait_for_initial_loads) WARN_UNUSED_RESULT = 0;
|
|
|
| // Shuts down the browser if needed and destroys any
|
| // connections established by InitalizeConnection.
|
| @@ -282,21 +284,35 @@ class ProxyLauncher {
|
| // The channel id of the proxy is a constant specified by kInterfacePath.
|
| class NamedProxyLauncher : public ProxyLauncher {
|
| public:
|
| - // If launch_browser is true, launches Chrome with named interface enabled.
|
| - // Otherwise, there should be an existing instance the proxy can connect to.
|
| + struct InitParams {
|
| + // True if the browser should be launched. If false, this will connect
|
| + // to an already started Chrome.
|
| + bool launch_browser;
|
| +
|
| + // True if we should disconnect on an IPC failure.
|
| + bool disconnect_on_failure;
|
| +
|
| + // True if we should wait for Chrome's server channel to be initialized
|
| + // and listening. Only set to false if it is guaranteed the server channel
|
| + // is already listening.
|
| + bool wait_for_server_channel;
|
| + };
|
| +
|
| NamedProxyLauncher(const std::string& channel_id,
|
| - bool launch_browser, bool disconnect_on_failure);
|
| + const InitParams& params);
|
|
|
| virtual AutomationProxy* CreateAutomationProxy(int execution_timeout);
|
| - virtual void InitializeConnection(const LaunchState& state,
|
| - bool wait_for_initial_loads);
|
| + virtual bool InitializeConnection(
|
| + const LaunchState& state,
|
| + bool wait_for_initial_loads) OVERRIDE WARN_UNUSED_RESULT;
|
| virtual void TerminateConnection();
|
| virtual std::string PrefixedChannelID() const;
|
|
|
| protected:
|
| - std::string channel_id_; // Channel id of automation proxy.
|
| - bool launch_browser_; // True if we should launch the browser too.
|
| - bool disconnect_on_failure_; // True if we disconnect on IPC channel failure.
|
| + std::string channel_id_; // Channel id of automation proxy.
|
| + bool launch_browser_; // True if we should launch the browser too.
|
| + bool disconnect_on_failure_; // True if we disconnect on channel failure.
|
| + bool wait_for_server_channel_; // True if we should wait for server channel.
|
|
|
| private:
|
| DISALLOW_COPY_AND_ASSIGN(NamedProxyLauncher);
|
| @@ -307,8 +323,9 @@ class AnonymousProxyLauncher : public ProxyLauncher {
|
| public:
|
| explicit AnonymousProxyLauncher(bool disconnect_on_failure);
|
| virtual AutomationProxy* CreateAutomationProxy(int execution_timeout);
|
| - virtual void InitializeConnection(const LaunchState& state,
|
| - bool wait_for_initial_loads);
|
| + virtual bool InitializeConnection(
|
| + const LaunchState& state,
|
| + bool wait_for_initial_loads) OVERRIDE WARN_UNUSED_RESULT;
|
| virtual void TerminateConnection();
|
| virtual std::string PrefixedChannelID() const;
|
|
|
|
|