| Index: chrome/browser/remoting/setup_flow.h | 
| diff --git a/chrome/browser/remoting/setup_flow.h b/chrome/browser/remoting/setup_flow.h | 
| deleted file mode 100644 | 
| index c952bd68b3de5902ed5d17dfeafd96c6b94e127b..0000000000000000000000000000000000000000 | 
| --- a/chrome/browser/remoting/setup_flow.h | 
| +++ /dev/null | 
| @@ -1,220 +0,0 @@ | 
| -// Copyright (c) 2011 The Chromium Authors. All rights reserved. | 
| -// Use of this source code is governed by a BSD-style license that can be | 
| -// found in the LICENSE file. | 
| - | 
| -#ifndef CHROME_BROWSER_REMOTING_SETUP_FLOW_H_ | 
| -#define CHROME_BROWSER_REMOTING_SETUP_FLOW_H_ | 
| - | 
| -#include "base/callback.h" | 
| -#include "base/memory/scoped_ptr.h" | 
| -#include "chrome/browser/ui/webui/html_dialog_ui.h" | 
| -#include "chrome/common/remoting/chromoting_host_info.h" | 
| -#include "content/browser/webui/web_ui.h" | 
| - | 
| -class ListValue; | 
| -class ServiceProcessControl; | 
| - | 
| -namespace remoting { | 
| - | 
| -class SetupFlow; | 
| - | 
| -// SetupFlowStep represents a single step for SetupFlow, e.g. login or | 
| -// host registration. When a step is finished, GetNextStep() is called | 
| -// to get the step that must follow. | 
| -class SetupFlowStep { | 
| - public: | 
| -  typedef Callback0::Type DoneCallback; | 
| - | 
| -  SetupFlowStep(); | 
| -  virtual ~SetupFlowStep(); | 
| - | 
| -  // Start the step. Ownership of |done_callback| is given to the | 
| -  // function. |done_callback| is called when the step is finished, | 
| -  // The callback must be called on the same thread as Start(). | 
| -  virtual void Start(SetupFlow* flow, DoneCallback* done_callback) = 0; | 
| - | 
| -  // Called to handle |message| received from UI. |args| may be set to | 
| -  // NULL. | 
| -  virtual void HandleMessage(const std::string& message, const Value* arg) = 0; | 
| - | 
| -  // Called if user closes the dialog. | 
| -  virtual void Cancel() = 0; | 
| - | 
| -  // Returns SetupFlowStep object that corresponds to the next | 
| -  // step. Must never return NULL. | 
| -  virtual SetupFlowStep* GetNextStep() = 0; | 
| - | 
| - private: | 
| -  DISALLOW_COPY_AND_ASSIGN(SetupFlowStep); | 
| -}; | 
| - | 
| -// SetupFlowStepBase implements base functions common for all | 
| -// SetupFlowStep implementations. | 
| -class SetupFlowStepBase : public SetupFlowStep { | 
| - public: | 
| -  SetupFlowStepBase(); | 
| -  ~SetupFlowStepBase(); | 
| - | 
| -  // SetupFlowStep implementation. | 
| -  virtual void Start(SetupFlow* flow, DoneCallback* done_callback); | 
| -  virtual SetupFlowStep* GetNextStep(); | 
| - | 
| - protected: | 
| -  SetupFlow* flow() { return flow_; } | 
| - | 
| -  void ExecuteJavascriptInIFrame(const std::wstring& iframe_xpath, | 
| -                                 const std::wstring& js); | 
| - | 
| -  // Finish current step. Calls |done_callback| specified in Start(). | 
| -  // GetNextStep() will return the specified |next_step|. | 
| -  void FinishStep(SetupFlowStep* next_step); | 
| - | 
| -  // Called from Start(). Child classes must override this method | 
| -  // instead of Start(). | 
| -  virtual void DoStart() = 0; | 
| - | 
| - private: | 
| -  SetupFlow* flow_; | 
| -  scoped_ptr<DoneCallback> done_callback_; | 
| -  bool done_; | 
| - | 
| -  // Next step stored between Done() and GetNextStep(); | 
| -  SetupFlowStep* next_step_; | 
| - | 
| -  DISALLOW_COPY_AND_ASSIGN(SetupFlowStepBase); | 
| -}; | 
| - | 
| -// Base class for error steps. It shows the error message returned by | 
| -// GetErrorMessage() and Retry button. | 
| -class SetupFlowErrorStepBase : public SetupFlowStepBase { | 
| - public: | 
| -  SetupFlowErrorStepBase(); | 
| -  virtual ~SetupFlowErrorStepBase(); | 
| - | 
| -  // SetupFlowStep implementation. | 
| -  virtual void HandleMessage(const std::string& message, const Value* arg); | 
| -  virtual void Cancel(); | 
| - | 
| - protected: | 
| -  virtual void DoStart(); | 
| - | 
| -  // Returns error message that is shown to the user. | 
| -  virtual string16 GetErrorMessage() = 0; | 
| - | 
| -  // Called when user clicks Retry button. Normally this methoud just | 
| -  // calls FinishStep() with an appropriate next step. | 
| -  virtual void Retry() = 0; | 
| - | 
| - private: | 
| -  DISALLOW_COPY_AND_ASSIGN(SetupFlowErrorStepBase); | 
| -}; | 
| - | 
| -// The last step in the setup flow. This step never finishes, user is | 
| -// expected to close dialog after that. | 
| -class SetupFlowDoneStep : public SetupFlowStepBase { | 
| - public: | 
| -  SetupFlowDoneStep(); | 
| -  explicit SetupFlowDoneStep(const string16& message); | 
| -  virtual ~SetupFlowDoneStep(); | 
| - | 
| -  // SetupFlowStep implementation. | 
| -  virtual void HandleMessage(const std::string& message, const Value* arg); | 
| -  virtual void Cancel(); | 
| - | 
| - protected: | 
| -  virtual void DoStart(); | 
| - | 
| - private: | 
| -  string16 message_; | 
| - | 
| -  DISALLOW_COPY_AND_ASSIGN(SetupFlowDoneStep); | 
| -}; | 
| - | 
| -// SetupFlowContext stores data that needs to be passed between | 
| -// different setup flow steps. | 
| -struct SetupFlowContext { | 
| -  SetupFlowContext(); | 
| -  ~SetupFlowContext(); | 
| - | 
| -  std::string login; | 
| -  std::string remoting_token; | 
| -  std::string talk_token; | 
| - | 
| -  ChromotingHostInfo host_info; | 
| -}; | 
| - | 
| -// This class is responsible for showing a remoting setup dialog and | 
| -// perform operations to fill the content of the dialog and handle | 
| -// user actions in the dialog. | 
| -// | 
| -// Each page in the setup flow may send message to the current | 
| -// step. In order to do that it must use send a RemotingSetup message | 
| -// and specify message name as the first value in the argument | 
| -// list. For example the following code sends Retry message to the | 
| -// current step: | 
| -// | 
| -//     chrome.send("RemotingSetup", ["Retry"]) | 
| -// | 
| -// Assitional message parameters may be provided via send value in the | 
| -// arguments list, e.g.: | 
| -// | 
| -//     chrome.send("RemotingSetup", ["SubmitAuth", auth_data]) | 
| -// | 
| -// In this case auth_data would be passed in | 
| -// SetupFlowStep::HandleMessage(). | 
| -class SetupFlow : public WebUIMessageHandler, | 
| -                  public HtmlDialogUIDelegate { | 
| - public: | 
| -  virtual ~SetupFlow(); | 
| - | 
| -  static SetupFlow* OpenSetupDialog(Profile* profile); | 
| - | 
| -  WebUI* web_ui() { return web_ui_; } | 
| -  Profile* profile() { return profile_; } | 
| -  SetupFlowContext* context() { return &context_; } | 
| - | 
| - private: | 
| -  explicit SetupFlow(const std::string& args, Profile* profile, | 
| -                     SetupFlowStep* first_step); | 
| - | 
| -  // HtmlDialogUIDelegate implementation. | 
| -  virtual GURL GetDialogContentURL() const; | 
| -  virtual void GetWebUIMessageHandlers( | 
| -      std::vector<WebUIMessageHandler*>* handlers) const; | 
| -  virtual void GetDialogSize(gfx::Size* size) const; | 
| -  virtual std::string GetDialogArgs() const; | 
| -  virtual void OnDialogClosed(const std::string& json_retval); | 
| -  virtual void OnCloseContents(TabContents* source, bool* out_close_dialog); | 
| -  virtual std::wstring GetDialogTitle() const; | 
| -  virtual bool IsDialogModal() const; | 
| -  virtual bool ShouldShowDialogTitle() const; | 
| - | 
| -  // WebUIMessageHandler implementation. | 
| -  virtual WebUIMessageHandler* Attach(WebUI* web_ui); | 
| -  virtual void RegisterMessages(); | 
| - | 
| -  // Message handlers for the messages we receive from UI. | 
| -  void HandleSubmitAuth(const ListValue* args); | 
| -  void HandleUIMessage(const ListValue* args); | 
| - | 
| -  void StartCurrentStep(); | 
| -  void OnStepDone(); | 
| - | 
| -  // Pointer to the Web UI. This is provided by RemotingSetupMessageHandler | 
| -  // when attached. | 
| -  WebUI* web_ui_; | 
| - | 
| -  // The args to pass to the initial page. | 
| -  std::string dialog_start_args_; | 
| -  Profile* profile_; | 
| - | 
| -  SetupFlowContext context_; | 
| - | 
| -  scoped_ptr<SetupFlowStep> current_step_; | 
| - | 
| -  DISALLOW_COPY_AND_ASSIGN(SetupFlow); | 
| -}; | 
| - | 
| -}  // namespace remoting | 
| - | 
| -#endif  // CHROME_BROWSER_REMOTING_SETUP_FLOW_H_ | 
|  |