Chromium Code Reviews| Index: services/video_capture/video_capture_service.cc |
| diff --git a/services/video_capture/video_capture_service.cc b/services/video_capture/video_capture_service.cc |
| index e025b6b4903cf177e072c8f99e100bba4d06b9ac..229659b1d0db50112a2b74fdc88bdcbdfa396424 100644 |
| --- a/services/video_capture/video_capture_service.cc |
| +++ b/services/video_capture/video_capture_service.cc |
| @@ -4,22 +4,52 @@ |
| #include "services/video_capture/video_capture_service.h" |
| +#include "services/video_capture/video_capture_device_factory_impl.h" |
| + |
| +namespace { |
| +static const char kFakeDeviceDisplayName[] = "Fake Video Capture Device"; |
| +static const char kFakeDeviceId[] = "FakeDeviceId"; |
| +static const char kFakeModelId[] = "FakeModelId"; |
| +} |
| + |
| namespace video_capture { |
| -VideoCaptureService::VideoCaptureService() = default; |
| +VideoCaptureService::VideoCaptureService() |
| + : device_factory_(base::MakeUnique<VideoCaptureDeviceFactoryImpl>()), |
| + fake_device_factory_(base::MakeUnique<VideoCaptureDeviceFactoryImpl>()) { |
| + auto fake_device_descriptor = mojom::VideoCaptureDeviceDescriptor::New(); |
| + fake_device_descriptor->display_name = kFakeDeviceDisplayName; |
| + fake_device_descriptor->device_id = kFakeDeviceId; |
| + fake_device_descriptor->model_id = kFakeModelId; |
| + fake_device_descriptor->capture_api = mojom::VideoCaptureApi::UNKNOWN; |
| + fake_device_descriptor->transport_type = |
| + mojom::VideoCaptureTransportType::OTHER_TRANSPORT; |
| + fake_device_factory_->AddDevice(std::move(fake_device_descriptor), |
| + base::MakeUnique<VideoCaptureDeviceImpl>()); |
|
mcasas
2016/08/18 21:11:22
Consider moving l.20-28 to ConnectToFakeDeviceFact
chfremer
2016/08/19 16:10:19
Excellent point.
Done.
|
| +} |
| VideoCaptureService::~VideoCaptureService() = default; |
| bool VideoCaptureService::OnConnect(const shell::Identity& remote_identity, |
| shell::InterfaceRegistry* registry) { |
| - registry->AddInterface<mojom::VideoCaptureDeviceFactory>(this); |
| + registry->AddInterface<mojom::VideoCaptureService>(this); |
| return true; |
| } |
| -void VideoCaptureService::Create( |
| - const shell::Identity& remote_identity, |
| +void VideoCaptureService::Create(const shell::Identity& remote_identity, |
| + mojom::VideoCaptureServiceRequest request) { |
| + bindings_.AddBinding(this, std::move(request)); |
| +} |
| + |
| +void VideoCaptureService::ConnectToDeviceFactory( |
| + mojom::VideoCaptureDeviceFactoryRequest request) { |
| + factory_bindings_.AddBinding(device_factory_.get(), std::move(request)); |
| +} |
| + |
| +void VideoCaptureService::ConnectToFakeDeviceFactory( |
| mojom::VideoCaptureDeviceFactoryRequest request) { |
| - bindings_.AddBinding(&device_factory_, std::move(request)); |
| + fake_factory_bindings_.AddBinding(fake_device_factory_.get(), |
| + std::move(request)); |
| } |
| } // namespace video_capture |