Description[Mojo Video Capture] Fix VideoCaptureManager exposing implementation details to clients
This CL is supposed to be a pure refactoring. There should be no changes to
existing behavior.
This is part of a series of CLs with the goal of separating the class
VideoCaptureManager from knowledge of things that are going to be private
implementation details of the video capture service. The end goal is to have
VideoCaptureManager talk to an abstraction that can be implemented by either the
video capture Mojo service or the existing (legacy) in-process implementation.
Changes in this CL:
* In VideoCaptureManager, remove getters/setters that expose implementation
details.
* In MediaStreamManager, expose a set of static factory methods that allow
creating of custom-configured instances as needed by clients (as was
previously done post-construction using getters and setters).
* Update usage sites
* Split class VideoCaptureSystem into interface VideoCaptureSystem and
implementation VideoCaptureSystemImpl. This is to enable testing
(MediaStreamDispatcherHostTest) to use a mock implementation instead of
requiring the existance of a VideoCaptureDeviceFactory.
This CL is part of the Mojo Video Capture work. For the bigger picture,
see [1] CL19.
BUG=584797
TEST=
capture_unittests --gtest_filter="*Video*"
content_unittests --gtest_filter="*Video*"
content_unittests --gtest_filter="*Media*"
content_unittests --gtest_filter="*Audio*"
content_browsertests --gtest_filter="VideoCaptureBrowserTest.*"
[1] https://docs.google.com/a/chromium.org/document/d/1Qw7rw1AJy0QHXjha36jZNiEuxsxWslJ_X-zpOhijvI8/edit?usp=sharing
Review-Url: https://codereview.chromium.org/2787703004
Cr-Commit-Position: refs/heads/master@{#463080}
Committed: https://chromium.googlesource.com/chromium/src/+/76a5bd00357df1a3a0274658a43dabfe277e0382
Patch Set 1 #Patch Set 2 : Rebase to March 30 #Patch Set 3 : Merge branch '18b' into 19b #Patch Set 4 : Pull changes from upstream #
Total comments: 18
Patch Set 5 : Pull more changes from upstream #Patch Set 6 : Incorporate suggestions from PatchSet 4 #Patch Set 7 : Rebase to April 5 #Depends on Patchset: Dependent Patchsets: Messages
Total messages: 35 (26 generated)
|