| OLD | NEW |
| 1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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 "services/resource_coordinator/coordination_unit/coordination_unit_prov
ider_impl.h" | 5 #include "services/resource_coordinator/coordination_unit/coordination_unit_prov
ider_impl.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 #include <utility> | 8 #include <utility> |
| 9 | 9 |
| 10 #include "base/macros.h" | 10 #include "base/macros.h" |
| (...skipping 21 matching lines...) Expand all Loading... |
| 32 const CoordinationUnitID& id) { | 32 const CoordinationUnitID& id) { |
| 33 std::unique_ptr<CoordinationUnitImpl> coordination_unit = | 33 std::unique_ptr<CoordinationUnitImpl> coordination_unit = |
| 34 coordination_unit_factory::CreateCoordinationUnit( | 34 coordination_unit_factory::CreateCoordinationUnit( |
| 35 id, service_ref_factory_->CreateRef()); | 35 id, service_ref_factory_->CreateRef()); |
| 36 | 36 |
| 37 CoordinationUnitImpl* coordination_unit_impl = coordination_unit.get(); | 37 CoordinationUnitImpl* coordination_unit_impl = coordination_unit.get(); |
| 38 | 38 |
| 39 auto coordination_unit_binding = | 39 auto coordination_unit_binding = |
| 40 mojo::MakeStrongBinding(std::move(coordination_unit), std::move(request)); | 40 mojo::MakeStrongBinding(std::move(coordination_unit), std::move(request)); |
| 41 | 41 |
| 42 coordination_unit_manager_->NotifyObserversCoordinationUnitCreated( | 42 coordination_unit_manager_->OnCoordinationUnitCreated(coordination_unit_impl); |
| 43 coordination_unit_impl); | |
| 44 | 43 |
| 45 coordination_unit_binding->set_connection_error_handler(base::Bind( | 44 coordination_unit_binding->set_connection_error_handler( |
| 46 &CoordinationUnitManager::NotifyObserversCoordinationUnitWillBeDestroyed, | 45 base::Bind(&CoordinationUnitManager::OnCoordinationUnitWillBeDestroyed, |
| 47 base::Unretained(coordination_unit_manager_), | 46 base::Unretained(coordination_unit_manager_), |
| 48 base::Unretained(coordination_unit_impl))); | 47 base::Unretained(coordination_unit_impl))); |
| 49 } | 48 } |
| 50 | 49 |
| 51 // static | 50 // static |
| 52 void CoordinationUnitProviderImpl::Create( | 51 void CoordinationUnitProviderImpl::Create( |
| 53 service_manager::ServiceContextRefFactory* service_ref_factory, | 52 service_manager::ServiceContextRefFactory* service_ref_factory, |
| 54 CoordinationUnitManager* coordination_unit_manager, | 53 CoordinationUnitManager* coordination_unit_manager, |
| 55 const service_manager::BindSourceInfo& source_info, | 54 const service_manager::BindSourceInfo& source_info, |
| 56 resource_coordinator::mojom::CoordinationUnitProviderRequest request) { | 55 resource_coordinator::mojom::CoordinationUnitProviderRequest request) { |
| 57 mojo::MakeStrongBinding(base::MakeUnique<CoordinationUnitProviderImpl>( | 56 mojo::MakeStrongBinding(base::MakeUnique<CoordinationUnitProviderImpl>( |
| 58 service_ref_factory, coordination_unit_manager), | 57 service_ref_factory, coordination_unit_manager), |
| 59 std::move(request)); | 58 std::move(request)); |
| 60 } | 59 } |
| 61 | 60 |
| 62 } // namespace resource_coordinator | 61 } // namespace resource_coordinator |
| OLD | NEW |