0

[Fuchsia] Remove uses of ServiceDirectoryClient::ForCurrentProcess

In the migration away from base::fuchsia::ServiceDirectoryClient, remove
uses of the method ForCurrentProcess() and replace with
ComponentContextForCurrentProcess().

Test: All existing tests still pass.

Bug: 974072
Change-Id: If0cace8dc31699016988ddf1ec9f3d6c4239edf2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1795313
Reviewed-by: Sergey Ulanov <sergeyu@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Matt Menke <mmenke@chromium.org>
Reviewed-by: Xiaohan Wang <xhwang@chromium.org>
Commit-Queue: Sharon Yang <yangsharon@chromium.org>
Cr-Commit-Position: refs/heads/master@{#698098}
This commit is contained in:
Sharon Yang
2019-09-19 17:22:23 +00:00
committed by Commit Bot
parent 74ef7f02a4
commit a7939256a0
19 changed files with 93 additions and 50 deletions

@ -40,6 +40,7 @@
#include <fuchsia/logger/cpp/fidl.h>
#include <fuchsia/logger/cpp/fidl_test_base.h>
#include <lib/fidl/cpp/binding.h>
#include <lib/sys/cpp/component_context.h>
#include <lib/zx/channel.h>
#include <lib/zx/event.h>
#include <lib/zx/exception.h>
@ -51,8 +52,8 @@
#include <zircon/syscalls/exception.h>
#include <zircon/types.h>
#include "base/fuchsia/default_context.h"
#include "base/fuchsia/fuchsia_logging.h"
#include "base/fuchsia/service_directory_client.h"
#endif // OS_FUCHSIA
namespace logging {
@ -1008,8 +1009,9 @@ TEST_F(LoggingTest, FuchsiaSystemLogging) {
std::make_unique<fuchsia::logger::LogFilterOptions>();
options->tags = {"base_unittests__exec"};
fuchsia::logger::LogPtr logger =
base::fuchsia::ServiceDirectoryClient::ForCurrentProcess()
->ConnectToService<fuchsia::logger::Log>();
base::fuchsia::ComponentContextForCurrentProcess()
->svc()
->Connect<fuchsia::logger::Log>();
logger->DumpLogs(binding.NewBinding(), std::move(options));
listener.RunUntilDone();
} while (!listener.DidReceiveString(kLogMessage, &logged_message));

@ -26,8 +26,9 @@
#if defined(OS_FUCHSIA)
#include <fuchsia/deprecatedtimezone/cpp/fidl.h>
#include <lib/sys/cpp/component_context.h>
#include "base/fuchsia/default_context.h"
#include "base/fuchsia/fuchsia_logging.h"
#include "base/fuchsia/service_directory_client.h"
#include "base/no_destructor.h"
#include "base/numerics/clamped_math.h"
#endif
@ -72,11 +73,16 @@ void SysTimeToTimeStruct(SysTime t, struct tm* timestruct, bool is_local) {
#elif defined(OS_FUCHSIA)
typedef time_t SysTime;
fuchsia::deprecatedtimezone::TimezoneSyncPtr ConnectTimeZoneServiceSync() {
fuchsia::deprecatedtimezone::TimezoneSyncPtr timezone;
base::fuchsia::ComponentContextForCurrentProcess()->svc()->Connect(
timezone.NewRequest());
return timezone;
}
SysTime GetTimezoneOffset(SysTime utc_time) {
static base::NoDestructor<fuchsia::deprecatedtimezone::TimezoneSyncPtr>
timezone(
base::fuchsia::ServiceDirectoryClient::ForCurrentProcess()
->ConnectToServiceSync<fuchsia::deprecatedtimezone::Timezone>());
timezone(ConnectTimeZoneServiceSync());
int64_t milliseconds_since_epoch =
base::ClampMul(utc_time, base::Time::kMillisecondsPerSecond);

@ -41,6 +41,7 @@ cast_source_set("cma_backend_support") {
"//chromecast/public/media",
"//media",
"//third_party/fuchsia-sdk/sdk:media",
"//third_party/fuchsia-sdk/sdk:sys_cpp",
]
}

@ -5,10 +5,11 @@
#include "chromecast/media/cma/backend/fuchsia/mixer_output_stream_fuchsia.h"
#include <fuchsia/media/cpp/fidl.h>
#include <lib/sys/cpp/component_context.h>
#include <zircon/syscalls.h>
#include "base/command_line.h"
#include "base/fuchsia/service_directory_client.h"
#include "base/fuchsia/default_context.h"
#include "base/memory/writable_shared_memory_region.h"
#include "base/time/time.h"
#include "chromecast/base/chromecast_switches.h"
@ -53,8 +54,9 @@ bool MixerOutputStreamFuchsia::Start(int requested_sample_rate, int channels) {
// Connect |audio_renderer_|.
fuchsia::media::AudioPtr audio_server =
base::fuchsia::ServiceDirectoryClient::ForCurrentProcess()
->ConnectToService<fuchsia::media::Audio>();
base::fuchsia::ComponentContextForCurrentProcess()
->svc()
->Connect<fuchsia::media::Audio>();
audio_server->CreateAudioRenderer(audio_renderer_.NewRequest());
audio_renderer_.set_error_handler(
[this](zx_status_t status) { this->OnRendererError(status); });

@ -295,7 +295,10 @@ source_set("audio") {
"fuchsia/audio_output_stream_fuchsia.cc",
"fuchsia/audio_output_stream_fuchsia.h",
]
deps += [ "//third_party/fuchsia-sdk/sdk:media" ]
deps += [
"//third_party/fuchsia-sdk/sdk:media",
"//third_party/fuchsia-sdk/sdk:sys_cpp",
]
}
configs += [ "//build/config/compiler:no_size_t_to_int_warning" ]

@ -4,10 +4,11 @@
#include "media/audio/fuchsia/audio_output_stream_fuchsia.h"
#include <lib/sys/cpp/component_context.h>
#include <zircon/syscalls.h>
#include "base/bind.h"
#include "base/fuchsia/service_directory_client.h"
#include "base/fuchsia/default_context.h"
#include "base/memory/writable_shared_memory_region.h"
#include "media/audio/fuchsia/audio_manager_fuchsia.h"
#include "media/base/audio_sample_types.h"
@ -37,8 +38,9 @@ bool AudioOutputStreamFuchsia::Open() {
// Connect |audio_renderer_| to the audio service.
fuchsia::media::AudioPtr audio_server =
base::fuchsia::ServiceDirectoryClient::ForCurrentProcess()
->ConnectToService<fuchsia::media::Audio>();
base::fuchsia::ComponentContextForCurrentProcess()
->svc()
->Connect<fuchsia::media::Audio>();
audio_server->CreateAudioRenderer(audio_renderer_.NewRequest());
audio_renderer_.set_error_handler(
fit::bind_member(this, &AudioOutputStreamFuchsia::OnRendererError));

@ -2325,6 +2325,7 @@ source_set("net_deps") {
public_deps += [
"//third_party/fuchsia-sdk/sdk:hardware_ethernet",
"//third_party/fuchsia-sdk/sdk:netstack",
"//third_party/fuchsia-sdk/sdk:sys_cpp",
]
}

@ -4,14 +4,15 @@
#include "net/base/network_change_notifier_fuchsia.h"
#include <lib/sys/cpp/component_context.h>
#include <algorithm>
#include <string>
#include <utility>
#include <vector>
#include "base/bind.h"
#include "base/fuchsia/default_context.h"
#include "base/fuchsia/fuchsia_logging.h"
#include "base/fuchsia/service_directory_client.h"
#include "base/optional.h"
#include "base/run_loop.h"
#include "net/base/network_interfaces.h"
@ -22,8 +23,9 @@ namespace net {
NetworkChangeNotifierFuchsia::NetworkChangeNotifierFuchsia(
uint32_t required_features)
: NetworkChangeNotifierFuchsia(
base::fuchsia::ServiceDirectoryClient::ForCurrentProcess()
->ConnectToService<fuchsia::netstack::Netstack>(),
base::fuchsia::ComponentContextForCurrentProcess()
->svc()
->Connect<fuchsia::netstack::Netstack>(),
required_features) {}
NetworkChangeNotifierFuchsia::NetworkChangeNotifierFuchsia(

@ -7,13 +7,14 @@
#include <fuchsia/hardware/ethernet/cpp/fidl.h>
#include <fuchsia/net/cpp/fidl.h>
#include <fuchsia/netstack/cpp/fidl.h>
#include <lib/sys/cpp/component_context.h>
#include <string>
#include <utility>
#include "base/format_macros.h"
#include "base/fuchsia/default_context.h"
#include "base/fuchsia/fuchsia_logging.h"
#include "base/fuchsia/service_directory_client.h"
#include "base/strings/stringprintf.h"
#include "net/base/ip_endpoint.h"
#include "net/base/network_interfaces.h"
@ -102,9 +103,9 @@ std::vector<NetworkInterface> NetInterfaceToNetworkInterfaces(
bool GetNetworkList(NetworkInterfaceList* networks, int policy) {
DCHECK(networks);
fuchsia::netstack::NetstackSyncPtr netstack =
base::fuchsia::ServiceDirectoryClient::ForCurrentProcess()
->ConnectToServiceSync<fuchsia::netstack::Netstack>();
fuchsia::netstack::NetstackSyncPtr netstack;
base::fuchsia::ComponentContextForCurrentProcess()->svc()->Connect(
netstack.NewRequest());
// TODO(kmarshall): Use NetworkChangeNotifier's cached interface list.
std::vector<fuchsia::netstack::NetInterface> interfaces;

@ -436,6 +436,7 @@ component("skia") {
"//third_party/fuchsia-sdk/sdk:fonts",
"//third_party/fuchsia-sdk/sdk:io",
"//third_party/fuchsia-sdk/sdk:sys",
"//third_party/fuchsia-sdk/sdk:sys_cpp",
"//third_party/fuchsia-sdk/sdk:zx",
"//third_party/icu:icuuc",
]
@ -836,6 +837,7 @@ source_set("test_fonts") {
"//third_party/fuchsia-sdk/sdk:fonts",
"//third_party/fuchsia-sdk/sdk:io",
"//third_party/fuchsia-sdk/sdk:sys",
"//third_party/fuchsia-sdk/sdk:sys_cpp",
]
}
if (is_linux) {

@ -5,17 +5,19 @@
#include "skia/ext/fontmgr_default.h"
#include <fuchsia/fonts/cpp/fidl.h>
#include <lib/sys/cpp/component_context.h>
#include "base/fuchsia/service_directory_client.h"
#include "base/fuchsia/default_context.h"
#include "third_party/skia/include/core/SkFontMgr.h"
#include "third_party/skia/include/ports/SkFontMgr_fuchsia.h"
namespace skia {
SK_API sk_sp<SkFontMgr> CreateDefaultSkFontMgr() {
return SkFontMgr_New_Fuchsia(
base::fuchsia::ServiceDirectoryClient::ForCurrentProcess()
->ConnectToServiceSync<fuchsia::fonts::Provider>());
fuchsia::fonts::ProviderSyncPtr provider;
base::fuchsia::ComponentContextForCurrentProcess()->svc()->Connect(
provider.NewRequest());
return SkFontMgr_New_Fuchsia(std::move(provider));
}
} // namespace skia

@ -8,9 +8,10 @@
#include <fuchsia/io/cpp/fidl.h>
#include <fuchsia/sys/cpp/fidl.h>
#include <lib/fidl/cpp/interface_handle.h>
#include <lib/sys/cpp/component_context.h>
#include "base/fuchsia/default_context.h"
#include "base/fuchsia/file_utils.h"
#include "base/fuchsia/service_directory_client.h"
#include "base/no_destructor.h"
#include "base/path_service.h"
#include "skia/ext/fontmgr_default.h"
@ -43,17 +44,18 @@ fuchsia::fonts::ProviderSyncPtr RunTestProviderWithTestFonts(
launch_info.directory_request =
font_provider_services_dir.NewRequest().TakeChannel();
fuchsia::sys::LauncherSyncPtr launcher =
base::fuchsia::ServiceDirectoryClient::ForCurrentProcess()
->ConnectToServiceSync<fuchsia::sys::Launcher>();
fuchsia::sys::LauncherSyncPtr launcher;
base::fuchsia::ComponentContextForCurrentProcess()->svc()->Connect(
launcher.NewRequest());
launcher->CreateComponent(std::move(launch_info),
controller_out->NewRequest());
base::fuchsia::ServiceDirectoryClient font_provider_services_client(
sys::ServiceDirectory font_provider_services_client(
std::move(font_provider_services_dir));
return font_provider_services_client
.ConnectToServiceSync<fuchsia::fonts::Provider>();
fuchsia::fonts::ProviderSyncPtr provider;
font_provider_services_client.Connect(provider.NewRequest());
return provider;
}
void ConfigureTestFont() {

@ -19,6 +19,7 @@ jumbo_component("fuchsia") {
defines = [ "IS_UI_BASE_IME_FUCHSIA_IMPL" ]
public_deps = [
"//third_party/fuchsia-sdk/sdk:sys_cpp",
"//third_party/fuchsia-sdk/sdk:ui_input",
"//ui/base/ime",
"//ui/events",

@ -5,10 +5,11 @@
#include "ui/base/ime/fuchsia/input_method_fuchsia.h"
#include <fuchsia/ui/input/cpp/fidl.h>
#include <lib/sys/cpp/component_context.h>
#include <memory>
#include <utility>
#include "base/fuchsia/service_directory_client.h"
#include "base/fuchsia/default_context.h"
#include "ui/base/ime/text_input_client.h"
#include "ui/events/base_event_utils.h"
#include "ui/events/keycodes/dom/dom_code.h"
@ -20,8 +21,9 @@ InputMethodFuchsia::InputMethodFuchsia(internal::InputMethodDelegate* delegate)
: InputMethodBase(delegate),
event_converter_(this),
ime_client_binding_(this),
ime_service_(base::fuchsia::ServiceDirectoryClient::ForCurrentProcess()
->ConnectToService<fuchsia::ui::input::ImeService>()),
ime_service_(base::fuchsia::ComponentContextForCurrentProcess()
->svc()
->Connect<fuchsia::ui::input::ImeService>()),
virtual_keyboard_controller_(ime_service_.get()) {}
InputMethodFuchsia::~InputMethodFuchsia() {}

@ -4,10 +4,11 @@
#include "ui/base/ime/fuchsia/input_method_keyboard_controller_fuchsia.h"
#include <lib/sys/cpp/component_context.h>
#include <utility>
#include "base/fuchsia/default_context.h"
#include "base/fuchsia/fuchsia_logging.h"
#include "base/fuchsia/service_directory_client.h"
#include "base/logging.h"
namespace ui {
@ -16,8 +17,9 @@ InputMethodKeyboardControllerFuchsia::InputMethodKeyboardControllerFuchsia(
fuchsia::ui::input::ImeService* ime_service)
: ime_service_(ime_service),
ime_visibility_(
base::fuchsia::ServiceDirectoryClient::ForCurrentProcess()
->ConnectToService<fuchsia::ui::input::ImeVisibilityService>()) {
base::fuchsia::ComponentContextForCurrentProcess()
->svc()
->Connect<fuchsia::ui::input::ImeVisibilityService>()) {
DCHECK(ime_service_);
ime_visibility_.set_error_handler([](zx_status_t status) {

@ -4,12 +4,13 @@
#include "ui/ozone/platform/scenic/scenic_surface_factory.h"
#include <lib/sys/cpp/component_context.h>
#include <lib/zx/event.h>
#include <memory>
#include "base/bind.h"
#include "base/fuchsia/default_context.h"
#include "base/fuchsia/fuchsia_logging.h"
#include "base/fuchsia/service_directory_client.h"
#include "base/macros.h"
#include "base/memory/ptr_util.h"
#include "ui/gfx/native_pixmap.h"
@ -64,14 +65,19 @@ class GLOzoneEGLScenic : public GLOzoneEGL {
DISALLOW_COPY_AND_ASSIGN(GLOzoneEGLScenic);
};
fuchsia::sysmem::AllocatorSyncPtr ConnectSysmemAllocator() {
fuchsia::sysmem::AllocatorSyncPtr allocator;
base::fuchsia::ComponentContextForCurrentProcess()->svc()->Connect(
allocator.NewRequest());
return allocator;
}
} // namespace
ScenicSurfaceFactory::ScenicSurfaceFactory(mojom::ScenicGpuHost* gpu_host)
: gpu_host_(gpu_host),
egl_implementation_(std::make_unique<GLOzoneEGLScenic>()),
sysmem_buffer_manager_(
base::fuchsia::ServiceDirectoryClient::ForCurrentProcess()
->ConnectToServiceSync<fuchsia::sysmem::Allocator>()),
sysmem_buffer_manager_(ConnectSysmemAllocator()),
weak_ptr_factory_(this) {
// TODO(spang, crbug.com/923445): Add message loop to GPU tests.
if (base::ThreadTaskRunnerHandle::IsSet())
@ -213,8 +219,9 @@ void ScenicSurfaceFactory::CreateScenicSessionOnMainThread(
fidl::InterfaceHandle<fuchsia::ui::scenic::SessionListener> listener) {
DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
if (!scenic_) {
scenic_ = base::fuchsia::ServiceDirectoryClient::ForCurrentProcess()
->ConnectToService<fuchsia::ui::scenic::Scenic>();
scenic_ = base::fuchsia::ComponentContextForCurrentProcess()
->svc()
->Connect<fuchsia::ui::scenic::Scenic>();
scenic_.set_error_handler([](zx_status_t status) {
ZX_LOG(FATAL, status) << "Scenic connection failed";
});

@ -4,10 +4,11 @@
#include "ui/ozone/platform/scenic/scenic_window_manager.h"
#include <lib/sys/cpp/component_context.h>
#include <memory>
#include "base/fuchsia/default_context.h"
#include "base/fuchsia/fuchsia_logging.h"
#include "base/fuchsia/service_directory_client.h"
#include "ui/ozone/platform/scenic/ozone_platform_scenic.h"
namespace ui {
@ -24,8 +25,9 @@ std::unique_ptr<PlatformScreen> ScenicWindowManager::CreateScreen() {
fuchsia::ui::scenic::Scenic* ScenicWindowManager::GetScenic() {
if (!scenic_) {
scenic_ = base::fuchsia::ServiceDirectoryClient::ForCurrentProcess()
->ConnectToService<fuchsia::ui::scenic::Scenic>();
scenic_ = base::fuchsia::ComponentContextForCurrentProcess()
->svc()
->Connect<fuchsia::ui::scenic::Scenic>();
scenic_.set_error_handler(
[](zx_status_t status) { ZX_LOG(FATAL, status) << " Scenic lost."; });
}

@ -29,6 +29,7 @@ source_set("platform_window") {
public_deps = [
"//third_party/fuchsia-sdk/sdk:scenic_cpp",
"//third_party/fuchsia-sdk/sdk:sys_cpp",
"//third_party/fuchsia-sdk/sdk:ui_policy",
"//third_party/fuchsia-sdk/sdk:ui_views",
]

@ -6,11 +6,12 @@
#include <fuchsia/ui/policy/cpp/fidl.h>
#include <fuchsia/ui/views/cpp/fidl.h>
#include <lib/sys/cpp/component_context.h>
#include <lib/ui/scenic/cpp/view_ref_pair.h>
#include <lib/ui/scenic/cpp/view_token_pair.h>
#include "base/fuchsia/default_context.h"
#include "base/fuchsia/fuchsia_logging.h"
#include "base/fuchsia/service_directory_client.h"
namespace ui {
namespace fuchsia {
@ -28,8 +29,9 @@ void InitializeViewTokenAndPresentView(
window_properties_out->view_ref_pair = scenic::ViewRefPair::New();
// Request Presenter to show the view full-screen.
auto presenter = base::fuchsia::ServiceDirectoryClient::ForCurrentProcess()
->ConnectToService<::fuchsia::ui::policy::Presenter>();
auto presenter = base::fuchsia::ComponentContextForCurrentProcess()
->svc()
->Connect<::fuchsia::ui::policy::Presenter>();
presenter->PresentView(std::move(view_holder_token), nullptr);
}