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

Side by Side Diff: mojo/services/public/cpp/view_manager/lib/view_manager_client_impl.cc

Issue 380413003: Mojo: Use InterfaceFactory<Interface> for service registration (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: convert everything over, remove ApplicationConnection::AddService Created 6 years, 5 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
1 // Copyright 2014 The Chromium Authors. All rights reserved. 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 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 "mojo/services/public/cpp/view_manager/lib/view_manager_client_impl.h" 5 #include "mojo/services/public/cpp/view_manager/lib/view_manager_client_impl.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/message_loop/message_loop.h" 8 #include "base/message_loop/message_loop.h"
9 #include "mojo/public/cpp/application/application_connection.h" 9 #include "mojo/public/cpp/application/application_connection.h"
10 #include "mojo/public/cpp/application/connect.h" 10 #include "mojo/public/cpp/application/connect.h"
(...skipping 520 matching lines...) Expand 10 before | Expand all | Expand 10 after
531 virtual void DoActionCompleted(bool success) OVERRIDE { 531 virtual void DoActionCompleted(bool success) OVERRIDE {
532 // TODO(beng): recovery? 532 // TODO(beng): recovery?
533 } 533 }
534 534
535 const Id node_id_; 535 const Id node_id_;
536 const bool visible_; 536 const bool visible_;
537 537
538 DISALLOW_COPY_AND_ASSIGN(SetVisibleTransaction); 538 DISALLOW_COPY_AND_ASSIGN(SetVisibleTransaction);
539 }; 539 };
540 540
541 ViewManagerClientImpl::ViewManagerClientImpl(ApplicationConnection* connection, 541 ViewManagerClientImpl::ViewManagerClientImpl(ViewManagerDelegate* delegate)
542 ViewManagerDelegate* delegate)
543 : connected_(false), 542 : connected_(false),
544 connection_id_(0), 543 connection_id_(0),
545 next_id_(1), 544 next_id_(1),
546 next_server_change_id_(0), 545 next_server_change_id_(0),
547 delegate_(delegate), 546 delegate_(delegate),
548 dispatcher_(NULL) {} 547 dispatcher_(NULL) {
548 }
549 549
550 ViewManagerClientImpl::~ViewManagerClientImpl() { 550 ViewManagerClientImpl::~ViewManagerClientImpl() {
551 delegate_->OnViewManagerDisconnected(this); 551 delegate_->OnViewManagerDisconnected(this);
552 while (!nodes_.empty()) { 552 while (!nodes_.empty()) {
553 IdToNodeMap::iterator it = nodes_.begin(); 553 IdToNodeMap::iterator it = nodes_.begin();
554 if (OwnsNode(it->second->id())) 554 if (OwnsNode(it->second->id()))
555 it->second->Destroy(); 555 it->second->Destroy();
556 else 556 else
557 nodes_.erase(it); 557 nodes_.erase(it);
558 } 558 }
(...skipping 339 matching lines...) Expand 10 before | Expand all | Expand 10 after
898 delegate_->OnRootAdded(this, root); 898 delegate_->OnRootAdded(this, root);
899 } 899 }
900 900
901 void ViewManagerClientImpl::RemoveRoot(Node* root) { 901 void ViewManagerClientImpl::RemoveRoot(Node* root) {
902 std::vector<Node*>::iterator it = 902 std::vector<Node*>::iterator it =
903 std::find(roots_.begin(), roots_.end(), root); 903 std::find(roots_.begin(), roots_.end(), root);
904 if (it != roots_.end()) 904 if (it != roots_.end())
905 roots_.erase(it); 905 roots_.erase(it);
906 } 906 }
907 907
908 ////////////////////////////////////////////////////////////////////////////////
909 // ViewManager, public:
910
911 // static
912 void ViewManager::ConfigureIncomingConnection(
913 ApplicationConnection* connection,
914 ViewManagerDelegate* delegate) {
915 connection->AddService<ViewManagerClientImpl>(delegate);
916 }
917
918 } // namespace view_manager 908 } // namespace view_manager
919 } // namespace mojo 909 } // namespace mojo
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698