Use USB mojom interfaces in UsbChooserController.

This CL converted USB requests in UsbChooserController to mojom
interfaces through UsbChooserContext.

Bug: 699790
Change-Id: Ib55b8ab0d9a2e891227886eb68cdc29992779f45
Reviewed-on: https://chromium-review.googlesource.com/1235613
Commit-Queue: Donna Wu <[email protected]>
Reviewed-by: Reilly Grant <[email protected]>
Cr-Commit-Position: refs/heads/master@{#594326}
diff --git a/chrome/browser/usb/usb_chooser_controller.h b/chrome/browser/usb/usb_chooser_controller.h
index 82a820a..7f893c6 100644
--- a/chrome/browser/usb/usb_chooser_controller.h
+++ b/chrome/browser/usb/usb_chooser_controller.h
@@ -14,8 +14,8 @@
 #include "base/memory/weak_ptr.h"
 #include "base/scoped_observer.h"
 #include "chrome/browser/chooser_controller/chooser_controller.h"
+#include "chrome/browser/usb/usb_chooser_context.h"
 #include "device/usb/public/mojom/device.mojom.h"
-#include "device/usb/usb_service.h"
 #include "third_party/blink/public/mojom/usb/web_usb_service.mojom.h"
 #include "url/gurl.h"
 
@@ -24,16 +24,10 @@
 class WebContents;
 }
 
-namespace device {
-class UsbDevice;
-}
-
-class UsbChooserContext;
-
 // UsbChooserController creates a chooser for WebUSB.
 // It is owned by ChooserBubbleDelegate.
 class UsbChooserController : public ChooserController,
-                             public device::UsbService::Observer {
+                             public UsbChooserContext::Observer {
  public:
   UsbChooserController(
       content::RenderFrameHost* render_frame_host,
@@ -52,13 +46,13 @@
   void Close() override;
   void OpenHelpCenterUrl() const override;
 
-  // device::UsbService::Observer:
-  void OnDeviceAdded(scoped_refptr<device::UsbDevice> device) override;
-  void OnDeviceRemoved(scoped_refptr<device::UsbDevice> device) override;
+  // UsbChooserContext::Observer implementation:
+  void OnDeviceAdded(device::mojom::UsbDeviceInfoPtr device_info) override;
+  void OnDeviceRemoved(device::mojom::UsbDeviceInfoPtr device_info) override;
+  void OnDeviceManagerConnectionError() override;
 
  private:
-  void GotUsbDeviceList(
-      const std::vector<scoped_refptr<device::UsbDevice>>& devices);
+  void GotUsbDeviceList(std::vector<device::mojom::UsbDeviceInfoPtr> devices);
   bool DisplayDevice(const device::mojom::UsbDeviceInfo& device) const;
 
   std::vector<device::mojom::UsbDeviceFilterPtr> filters_;
@@ -68,8 +62,7 @@
 
   content::WebContents* const web_contents_;
   base::WeakPtr<UsbChooserContext> chooser_context_;
-  ScopedObserver<device::UsbService, device::UsbService::Observer>
-      usb_service_observer_;
+  ScopedObserver<UsbChooserContext, UsbChooserContext::Observer> observer_;
 
   // Each pair is a (device, device name).
   std::vector<std::pair<device::mojom::UsbDeviceInfoPtr, base::string16>>