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

Side by Side Diff: chrome/browser/chromeos/arc/arc_support_host.cc

Issue 2844383006: Turn ArcSupportHost from Observer model to Delegate (Closed)
Patch Set: Created 3 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/chromeos/arc/arc_support_host.h" 5 #include "chrome/browser/chromeos/arc/arc_support_host.h"
6 6
7 #include <string> 7 #include <string>
8 #include <utility> 8 #include <utility>
9 9
10 #include "ash/system/devicetype_utils.h" 10 #include "ash/system/devicetype_utils.h"
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after
174 } 174 }
175 175
176 void ArcSupportHost::RemoveObserver(Observer* observer) { 176 void ArcSupportHost::RemoveObserver(Observer* observer) {
177 observer_list_.RemoveObserver(observer); 177 observer_list_.RemoveObserver(observer);
178 } 178 }
179 179
180 bool ArcSupportHost::HasObserver(Observer* observer) { 180 bool ArcSupportHost::HasObserver(Observer* observer) {
181 return observer_list_.HasObserver(observer); 181 return observer_list_.HasObserver(observer);
182 } 182 }
183 183
184 void ArcSupportHost::SetAuthHandler(AuthHandler* handler) {
185 DCHECK(!auth_handler_);
186 auth_handler_ = handler;
187 }
188
189 void ArcSupportHost::UnsetAuthHandler() {
190 DCHECK(auth_handler_);
191 auth_handler_ = nullptr;
192 }
193
194 void ArcSupportHost::SetTosHandler(TosHandler* handler) {
195 DCHECK(!tos_handler_);
196 tos_handler_ = handler;
197 }
198
199 void ArcSupportHost::UnsetTosHandler() {
200 DCHECK(tos_handler_);
201 tos_handler_ = nullptr;
202 }
203
204 void ArcSupportHost::SetErrorHandler(ErrorHandler* handler) {
205 DCHECK(!error_handler_);
206 error_handler_ = handler;
207 }
208
209 void ArcSupportHost::UnsetErrorHandler() {
210 DCHECK(error_handler_);
211 error_handler_ = nullptr;
212 }
213
184 void ArcSupportHost::SetArcManaged(bool is_arc_managed) { 214 void ArcSupportHost::SetArcManaged(bool is_arc_managed) {
185 DCHECK(!message_host_); 215 DCHECK(!message_host_);
186 is_arc_managed_ = is_arc_managed; 216 is_arc_managed_ = is_arc_managed;
187 } 217 }
188 218
189 void ArcSupportHost::Close() { 219 void ArcSupportHost::Close() {
190 ui_page_ = UIPage::NO_PAGE; 220 ui_page_ = UIPage::NO_PAGE;
191 if (!message_host_) { 221 if (!message_host_) {
192 VLOG(2) << "ArcSupportHost::Close() is called " 222 VLOG(2) << "ArcSupportHost::Close() is called "
193 << "but message_host_ is not available."; 223 << "but message_host_ is not available.";
(...skipping 320 matching lines...) Expand 10 before | Expand all | Expand 10 after
514 } 544 }
515 545
516 void ArcSupportHost::OnMessage(const base::DictionaryValue& message) { 546 void ArcSupportHost::OnMessage(const base::DictionaryValue& message) {
517 std::string event; 547 std::string event;
518 if (!message.GetString(kEvent, &event)) { 548 if (!message.GetString(kEvent, &event)) {
519 NOTREACHED(); 549 NOTREACHED();
520 return; 550 return;
521 } 551 }
522 552
523 if (event == kEventOnWindowClosed) { 553 if (event == kEventOnWindowClosed) {
524 for (auto& observer : observer_list_) 554 if (tos_handler_) {
525 observer.OnWindowClosed(); 555 tos_handler_->OnTermsRejected();
556 } else {
557 //DCHECK(error_handler_);
558 if (error_handler_)
559 error_handler_->OnWindowClosed();
560 }
526 } else if (event == kEventOnAuthSucceeded) { 561 } else if (event == kEventOnAuthSucceeded) {
527 std::string code; 562 std::string code;
528 if (message.GetString(kCode, &code)) { 563 if (message.GetString(kCode, &code)) {
529 for (auto& observer : observer_list_) 564 if (auth_handler_) {
530 observer.OnAuthSucceeded(code); 565 auth_handler_->OnAuthSucceeded(code);
566 } else {
567 LOG(ERROR) << "auth_handler_ is not set";
568 }
531 } else { 569 } else {
532 NOTREACHED(); 570 NOTREACHED();
533 } 571 }
534 } else if (event == kEventOnAuthFailed) { 572 } else if (event == kEventOnAuthFailed) {
535 for (auto& observer : observer_list_) 573 if (auth_handler_) {
536 observer.OnAuthFailed(); 574 auth_handler_->OnAuthFailed();
575 } else {
576 LOG(ERROR) << "auth_handler_ is not set";
577 }
537 } else if (event == kEventOnAgreed) { 578 } else if (event == kEventOnAgreed) {
538 bool is_metrics_enabled; 579 bool is_metrics_enabled;
539 bool is_backup_restore_enabled; 580 bool is_backup_restore_enabled;
540 bool is_location_service_enabled; 581 bool is_location_service_enabled;
541 if (message.GetBoolean(kIsMetricsEnabled, &is_metrics_enabled) && 582 if (message.GetBoolean(kIsMetricsEnabled, &is_metrics_enabled) &&
542 message.GetBoolean(kIsBackupRestoreEnabled, 583 message.GetBoolean(kIsBackupRestoreEnabled,
543 &is_backup_restore_enabled) && 584 &is_backup_restore_enabled) &&
544 message.GetBoolean(kIsLocationServiceEnabled, 585 message.GetBoolean(kIsLocationServiceEnabled,
545 &is_location_service_enabled)) { 586 &is_location_service_enabled)) {
546 for (auto& observer : observer_list_) { 587 if (tos_handler_) {
547 observer.OnTermsAgreed(is_metrics_enabled, is_backup_restore_enabled, 588 tos_handler_->OnTermsAgreed(is_metrics_enabled,
548 is_location_service_enabled); 589 is_backup_restore_enabled,
590 is_location_service_enabled);
591 } else {
592 LOG(ERROR) << "tos_handler_ is not set";
549 } 593 }
550 } else { 594 } else {
551 NOTREACHED(); 595 NOTREACHED();
552 } 596 }
553 } else if (event == kEventOnRetryClicked) { 597 } else if (event == kEventOnRetryClicked) {
554 for (auto& observer : observer_list_) 598 if (!tos_handler_) {
555 observer.OnRetryClicked(); 599 tos_handler_->OnTermsError();
600 } else {
601 if (error_handler_)
602 error_handler_->OnRetryClicked();
603 }
604 //DCHECK(auth_handler_);
605 if (auth_handler_)
606 auth_handler_->OnAuthRetry();
607
556 } else if (event == kEventOnSendFeedbackClicked) { 608 } else if (event == kEventOnSendFeedbackClicked) {
557 for (auto& observer : observer_list_) 609 if (error_handler_) {
558 observer.OnSendFeedbackClicked(); 610 error_handler_->OnSendFeedbackClicked();
611 } else {
612 LOG(ERROR) << "error_handler_ is not set";
613 }
559 } else { 614 } else {
560 LOG(ERROR) << "Unknown message: " << event; 615 LOG(ERROR) << "Unknown message: " << event;
561 NOTREACHED(); 616 NOTREACHED();
562 } 617 }
563 } 618 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698