| 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/service_manager/embedder/main.h" | 5 #include "services/service_manager/embedder/main.h" |
| 6 | 6 |
| 7 #include "base/allocator/features.h" | 7 #include "base/allocator/features.h" |
| 8 #include "base/at_exit.h" | 8 #include "base/at_exit.h" |
| 9 #include "base/base_switches.h" | 9 #include "base/base_switches.h" |
| 10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
| (...skipping 12 matching lines...) Expand all Loading... |
| 23 #include "base/threading/sequenced_worker_pool.h" | 23 #include "base/threading/sequenced_worker_pool.h" |
| 24 #include "base/threading/thread.h" | 24 #include "base/threading/thread.h" |
| 25 #include "base/trace_event/trace_config.h" | 25 #include "base/trace_event/trace_config.h" |
| 26 #include "base/trace_event/trace_log.h" | 26 #include "base/trace_event/trace_log.h" |
| 27 #include "build/build_config.h" | 27 #include "build/build_config.h" |
| 28 #include "components/tracing/common/trace_to_console.h" | 28 #include "components/tracing/common/trace_to_console.h" |
| 29 #include "components/tracing/common/tracing_switches.h" | 29 #include "components/tracing/common/tracing_switches.h" |
| 30 #include "mojo/edk/embedder/configuration.h" | 30 #include "mojo/edk/embedder/configuration.h" |
| 31 #include "mojo/edk/embedder/embedder.h" | 31 #include "mojo/edk/embedder/embedder.h" |
| 32 #include "mojo/edk/embedder/scoped_ipc_support.h" | 32 #include "mojo/edk/embedder/scoped_ipc_support.h" |
| 33 #include "services/resource_coordinator/public/cpp/tracing/chrome_agent.h" |
| 33 #include "services/service_manager/embedder/main_delegate.h" | 34 #include "services/service_manager/embedder/main_delegate.h" |
| 34 #include "services/service_manager/embedder/process_type.h" | 35 #include "services/service_manager/embedder/process_type.h" |
| 35 #include "services/service_manager/embedder/set_process_title.h" | 36 #include "services/service_manager/embedder/set_process_title.h" |
| 36 #include "services/service_manager/embedder/shared_file_util.h" | 37 #include "services/service_manager/embedder/shared_file_util.h" |
| 37 #include "services/service_manager/embedder/switches.h" | 38 #include "services/service_manager/embedder/switches.h" |
| 38 #include "services/service_manager/public/cpp/service.h" | 39 #include "services/service_manager/public/cpp/service.h" |
| 39 #include "services/service_manager/public/cpp/service_context.h" | 40 #include "services/service_manager/public/cpp/service_context.h" |
| 40 #include "services/service_manager/public/cpp/standalone_service/standalone_serv
ice.h" | 41 #include "services/service_manager/public/cpp/standalone_service/standalone_serv
ice.h" |
| 41 #include "services/service_manager/runner/common/client_util.h" | 42 #include "services/service_manager/runner/common/client_util.h" |
| 42 #include "services/service_manager/runner/common/switches.h" | 43 #include "services/service_manager/runner/common/switches.h" |
| (...skipping 267 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 310 std::unique_ptr<Service> service = | 311 std::unique_ptr<Service> service = |
| 311 delegate->CreateEmbeddedService(service_name); | 312 delegate->CreateEmbeddedService(service_name); |
| 312 if (!service) { | 313 if (!service) { |
| 313 LOG(ERROR) << "Failed to start embedded service: " << service_name; | 314 LOG(ERROR) << "Failed to start embedded service: " << service_name; |
| 314 *exit_code = 1; | 315 *exit_code = 1; |
| 315 return; | 316 return; |
| 316 } | 317 } |
| 317 | 318 |
| 318 ServiceContext context(std::move(service), std::move(request)); | 319 ServiceContext context(std::move(service), std::move(request)); |
| 319 context.SetQuitClosure(run_loop.QuitClosure()); | 320 context.SetQuitClosure(run_loop.QuitClosure()); |
| 321 |
| 322 resource_coordinator::tracing::mojom::AgentSetPtr agent_set; |
| 323 context.connector()->BindInterface("tracing", |
| 324 mojo::MakeRequest(&agent_set)); |
| 325 resource_coordinator::tracing::ChromeAgent::InitializeIfNeeded( |
| 326 std::move(agent_set)); |
| 327 |
| 320 run_loop.Run(); | 328 run_loop.Run(); |
| 321 }, | 329 }, |
| 322 delegate, &exit_code)); | 330 delegate, &exit_code)); |
| 323 | 331 |
| 324 return exit_code; | 332 return exit_code; |
| 325 } | 333 } |
| 326 | 334 |
| 327 } // namespace | 335 } // namespace |
| 328 | 336 |
| 329 MainParams::MainParams(MainDelegate* delegate) : delegate(delegate) {} | 337 MainParams::MainParams(MainDelegate* delegate) : delegate(delegate) {} |
| (...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 471 autorelease_pool.reset(); | 479 autorelease_pool.reset(); |
| 472 #endif | 480 #endif |
| 473 | 481 |
| 474 if (process_type == ProcessType::kEmbedder) | 482 if (process_type == ProcessType::kEmbedder) |
| 475 delegate->ShutDownEmbedderProcess(); | 483 delegate->ShutDownEmbedderProcess(); |
| 476 | 484 |
| 477 return exit_code; | 485 return exit_code; |
| 478 } | 486 } |
| 479 | 487 |
| 480 } // namespace service_manager | 488 } // namespace service_manager |
| OLD | NEW |