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

Side by Side Diff: chrome/browser/local_discovery/privetv3_setup_flow.cc

Issue 873103002: Removed unused native code related to wifi bootstrapping. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Sun 01/25/2015 21:44:58.31 Created 5 years, 11 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
OLDNEW
(Empty)
1 // Copyright 2014 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/local_discovery/privetv3_setup_flow.h"
6
7 #include "base/logging.h"
8 #include "chrome/browser/local_discovery/gcd_registration_ticket_request.h"
9
10 namespace local_discovery {
11
12 namespace {
13
14 const char kTicketJsonKeyName[] = "registration.ticketID";
15 const char kUserJsonKeyName[] = "registration.user";
16
17 } // namespace
18
19 PrivetV3SetupFlow::Delegate::~Delegate() {
20 }
21
22 PrivetV3SetupFlow::PrivetV3SetupFlow(Delegate* delegate)
23 : delegate_(delegate), weak_ptr_factory_(this) {
24 }
25
26 PrivetV3SetupFlow::~PrivetV3SetupFlow() {
27 }
28
29 void PrivetV3SetupFlow::Register(const std::string& service_name) {
30 service_name_ = service_name;
31 ticket_request_ = delegate_->CreateApiFlow();
32 if (!ticket_request_) {
33 OnSetupError();
34 return;
35 }
36 scoped_ptr<GCDApiFlow::Request> ticket_request(
37 new GCDRegistrationTicketRequest(
38 base::Bind(&PrivetV3SetupFlow::OnTicketCreated,
39 weak_ptr_factory_.GetWeakPtr())));
40 ticket_request_->Start(ticket_request.Pass());
41 }
42
43 #if defined(ENABLE_WIFI_BOOTSTRAPPING)
44 void PrivetV3SetupFlow::SetupWifiAndRegister(const std::string& device_ssid) {
45 NOTIMPLEMENTED();
46 }
47 #endif // ENABLE_WIFI_BOOTSTRAPPING
48
49 void PrivetV3SetupFlow::OnSetupError() {
50 delegate_->OnSetupError();
51 }
52
53 void PrivetV3SetupFlow::OnTicketCreated(const std::string& ticket_id,
54 const std::string& device_id) {
55 if (ticket_id.empty() || device_id.empty()) {
56 OnSetupError();
57 return;
58 }
59 // TODO(vitalybuka): Implement success check by polling status of device_id_.
60 device_id_ = device_id;
61 ticket_id_ = ticket_id;
62 delegate_->CreatePrivetV3Client(
63 service_name_,
64 base::Bind(&PrivetV3SetupFlow::OnPrivetClientCreated,
65 weak_ptr_factory_.GetWeakPtr()));
66 }
67
68 void PrivetV3SetupFlow::OnPrivetClientCreated(
69 scoped_ptr<PrivetHTTPClient> privet_http_client) {
70 if (!privet_http_client) {
71 OnSetupError();
72 return;
73 }
74 session_.reset(new PrivetV3Session(privet_http_client.Pass()));
75 session_->Init(base::Bind(&PrivetV3SetupFlow::OnSessionInitialized,
76 weak_ptr_factory_.GetWeakPtr()));
77 }
78
79 void PrivetV3SetupFlow::OnCodeConfirmed(bool success) {
80 if (!success)
81 return OnSetupError();
82 session_->ConfirmCode("1234", base::Bind(&PrivetV3SetupFlow::OnPairingDone,
83 weak_ptr_factory_.GetWeakPtr()));
84 }
85
86 void PrivetV3SetupFlow::OnSessionInitialized(
87 PrivetV3Session::Result result,
88 const std::vector<PrivetV3Session::PairingType>& types) {
89 if (result != PrivetV3Session::Result::STATUS_SUCCESS)
90 return OnSetupError();
91 session_->StartPairing(PrivetV3Session::PairingType::PAIRING_TYPE_PINCODE,
92 base::Bind(&PrivetV3SetupFlow::OnPairingStarted,
93 weak_ptr_factory_.GetWeakPtr()));
94 }
95
96 void PrivetV3SetupFlow::OnPairingStarted(PrivetV3Session::Result result) {
97 if (result != PrivetV3Session::Result::STATUS_SUCCESS)
98 return OnSetupError();
99 delegate_->ConfirmSecurityCode(base::Bind(&PrivetV3SetupFlow::OnCodeConfirmed,
100 weak_ptr_factory_.GetWeakPtr()));
101 }
102
103 void PrivetV3SetupFlow::OnPairingDone(PrivetV3Session::Result result) {
104 if (result != PrivetV3Session::Result::STATUS_SUCCESS)
105 return OnSetupError();
106 base::DictionaryValue message;
107 message.SetString(kTicketJsonKeyName, ticket_id_);
108 message.SetString(kUserJsonKeyName, "me");
109 session_->SendMessage("/privet/v3/setup/start", message,
110 base::Bind(&PrivetV3SetupFlow::OnSetupMessageSent,
111 weak_ptr_factory_.GetWeakPtr()));
112 }
113
114 void PrivetV3SetupFlow::OnSetupMessageSent(
115 PrivetV3Session::Result result,
116 const base::DictionaryValue& response) {
117 if (result != PrivetV3Session::Result::STATUS_SUCCESS)
118 return OnSetupError();
119 delegate_->OnSetupDone();
120 }
121
122 } // namespace local_discovery
OLDNEW
« no previous file with comments | « chrome/browser/local_discovery/privetv3_setup_flow.h ('k') | chrome/browser/local_discovery/privetv3_setup_flow_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698