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

Side by Side Diff: chrome/browser/remoting/setup_flow_start_host_step.cc

Issue 6955010: Remove the Remoting Host component from Chrome. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Remove an errant include. Created 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "chrome/browser/remoting/setup_flow_start_host_step.h"
6
7 #include "chrome/browser/remoting/setup_flow_get_status_step.h"
8 #include "chrome/browser/service/service_process_control.h"
9 #include "chrome/browser/service/service_process_control_manager.h"
10 #include "grit/generated_resources.h"
11 #include "ui/base/l10n/l10n_util.h"
12
13 namespace remoting {
14
15 SetupFlowStartHostStep::SetupFlowStartHostStep()
16 : ALLOW_THIS_IN_INITIALIZER_LIST(task_factory_(this)),
17 status_requested_(false) {
18 }
19
20 SetupFlowStartHostStep::~SetupFlowStartHostStep() {
21 if (process_control_)
22 process_control_->RemoveMessageHandler(this);
23 }
24
25 void SetupFlowStartHostStep::HandleMessage(const std::string& message,
26 const Value* arg) {
27 }
28
29 void SetupFlowStartHostStep::Cancel() {
30 if (process_control_)
31 process_control_->RemoveMessageHandler(this);
32 }
33
34 void SetupFlowStartHostStep::OnRemotingHostInfo(
35 const remoting::ChromotingHostInfo& host_info) {
36 if (status_requested_) {
37 status_requested_ = false;
38 if (host_info.enabled) {
39 FinishStep(new SetupFlowDoneStep());
40 } else {
41 FinishStep(new SetupFlowStartHostErrorStep());
42 }
43 }
44 }
45
46 void SetupFlowStartHostStep::DoStart() {
47 flow()->web_ui()->CallJavascriptFunction("showSettingUp");
48
49 process_control_ =
50 ServiceProcessControlManager::GetInstance()->GetProcessControl(
51 flow()->profile());
52 if (!process_control_ || !process_control_->is_connected()) {
53 FinishStep(new SetupFlowStartHostErrorStep());
54 }
55
56 process_control_->SetRemotingHostCredentials(flow()->context()->login,
57 flow()->context()->talk_token);
58 process_control_->EnableRemotingHost();
59 RequestStatus();
60 }
61
62 void SetupFlowStartHostStep::RequestStatus() {
63 DCHECK(!status_requested_);
64
65 if (!process_control_->RequestRemotingHostStatus()) {
66 FinishStep(new SetupFlowStartHostErrorStep());
67 return;
68 }
69
70 status_requested_ = true;
71 process_control_->AddMessageHandler(this);
72 }
73
74 SetupFlowStartHostErrorStep::SetupFlowStartHostErrorStep() { }
75 SetupFlowStartHostErrorStep::~SetupFlowStartHostErrorStep() { }
76
77 string16 SetupFlowStartHostErrorStep::GetErrorMessage() {
78 return l10n_util::GetStringUTF16(IDS_REMOTING_SERVICE_PROCESS_FAILED_MESSAGE);
79 }
80
81 void SetupFlowStartHostErrorStep::Retry() {
82 // When retrying we retry from the GetStatus step because it may be
83 // necessary to start service process.
84 FinishStep(new SetupFlowGetStatusStep());
85 }
86
87 } // namespace remoting
OLDNEW
« no previous file with comments | « chrome/browser/remoting/setup_flow_start_host_step.h ('k') | chrome/browser/resources/options/advanced_options.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698