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

Side by Side Diff: services/device/device_service.cc

Issue 2603553002: Ports VRService to be hosted in the device service.
Patch Set: Ports VRService to be hosted in the device service. Created 3 years, 8 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
« no previous file with comments | « services/device/device_service.h ('k') | services/device/manifest.json » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "services/device/device_service.h" 5 #include "services/device/device_service.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/feature_list.h" 10 #include "base/feature_list.h"
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
102 #if defined(OS_ANDROID) 102 #if defined(OS_ANDROID)
103 registry_.AddInterface(GetJavaInterfaceProvider() 103 registry_.AddInterface(GetJavaInterfaceProvider()
104 ->CreateInterfaceFactory<mojom::BatteryMonitor>()); 104 ->CreateInterfaceFactory<mojom::BatteryMonitor>());
105 registry_.AddInterface( 105 registry_.AddInterface(
106 GetJavaInterfaceProvider() 106 GetJavaInterfaceProvider()
107 ->CreateInterfaceFactory<mojom::VibrationManager>()); 107 ->CreateInterfaceFactory<mojom::VibrationManager>());
108 #else 108 #else
109 registry_.AddInterface<mojom::BatteryMonitor>(this); 109 registry_.AddInterface<mojom::BatteryMonitor>(this);
110 registry_.AddInterface<mojom::VibrationManager>(this); 110 registry_.AddInterface<mojom::VibrationManager>(this);
111 #endif 111 #endif
112
113 #if BUILDFLAG(ENABLE_VR)
114 registry_.AddInterface<mojom::VRService>(this);
115 #endif
112 } 116 }
113 117
114 void DeviceService::OnBindInterface( 118 void DeviceService::OnBindInterface(
115 const service_manager::ServiceInfo& source_info, 119 const service_manager::ServiceInfo& source_info,
116 const std::string& interface_name, 120 const std::string& interface_name,
117 mojo::ScopedMessagePipeHandle interface_pipe) { 121 mojo::ScopedMessagePipeHandle interface_pipe) {
118 registry_.BindInterface(source_info.identity, interface_name, 122 registry_.BindInterface(source_info.identity, interface_name,
119 std::move(interface_pipe)); 123 std::move(interface_pipe));
120 } 124 }
121 125
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
232 } 236 }
233 237
234 void DeviceService::Create(const service_manager::Identity& remote_identity, 238 void DeviceService::Create(const service_manager::Identity& remote_identity,
235 mojom::TimeZoneMonitorRequest request) { 239 mojom::TimeZoneMonitorRequest request) {
236 if (!time_zone_monitor_) 240 if (!time_zone_monitor_)
237 time_zone_monitor_ = TimeZoneMonitor::Create(file_task_runner_); 241 time_zone_monitor_ = TimeZoneMonitor::Create(file_task_runner_);
238 time_zone_monitor_->Bind(std::move(request)); 242 time_zone_monitor_->Bind(std::move(request));
239 } 243 }
240 244
241 void DeviceService::Create(const service_manager::Identity& remote_identity, 245 void DeviceService::Create(const service_manager::Identity& remote_identity,
246 mojom::VRServiceRequest request) {
247 #if BUILDFLAG(ENABLE_VR)
248 device::VRServiceImpl::Create(std::move(request));
249 #endif
250 }
251
252 void DeviceService::Create(const service_manager::Identity& remote_identity,
242 mojom::WakeLockContextProviderRequest request) { 253 mojom::WakeLockContextProviderRequest request) {
243 WakeLockContextProvider::Create(std::move(request), file_task_runner_, 254 WakeLockContextProvider::Create(std::move(request), file_task_runner_,
244 wake_lock_context_callback_); 255 wake_lock_context_callback_);
245 } 256 }
246 257
247 #if defined(OS_ANDROID) 258 #if defined(OS_ANDROID)
248 service_manager::InterfaceProvider* DeviceService::GetJavaInterfaceProvider() { 259 service_manager::InterfaceProvider* DeviceService::GetJavaInterfaceProvider() {
249 if (!java_interface_provider_initialized_) { 260 if (!java_interface_provider_initialized_) {
250 service_manager::mojom::InterfaceProviderPtr provider; 261 service_manager::mojom::InterfaceProviderPtr provider;
251 JNIEnv* env = base::android::AttachCurrentThread(); 262 JNIEnv* env = base::android::AttachCurrentThread();
252 Java_InterfaceRegistrar_createInterfaceRegistryForContext( 263 Java_InterfaceRegistrar_createInterfaceRegistryForContext(
253 env, mojo::MakeRequest(&provider).PassMessagePipe().release().value(), 264 env, mojo::MakeRequest(&provider).PassMessagePipe().release().value(),
254 base::android::GetApplicationContext()); 265 base::android::GetApplicationContext());
255 java_interface_provider_.Bind(std::move(provider)); 266 java_interface_provider_.Bind(std::move(provider));
256 267
257 java_interface_provider_initialized_ = true; 268 java_interface_provider_initialized_ = true;
258 } 269 }
259 270
260 return &java_interface_provider_; 271 return &java_interface_provider_;
261 } 272 }
262 #endif 273 #endif
263 274
264 } // namespace device 275 } // namespace device
OLDNEW
« no previous file with comments | « services/device/device_service.h ('k') | services/device/manifest.json » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698