Class OpenBsdUsbDevice

java.lang.Object
oshi.hardware.common.AbstractUsbDevice
oshi.hardware.platform.unix.openbsd.OpenBsdUsbDevice
All Implemented Interfaces:
Comparable<UsbDevice>, UsbDevice

@Immutable public class OpenBsdUsbDevice extends AbstractUsbDevice
OpenBsd Usb Device
  • Constructor Details

  • Method Details

    • getUsbDevices

      public static List<UsbDevice> getUsbDevices(boolean tree)
      Instantiates a list of UsbDevice objects, representing devices connected via a usb port (including internal devices).

      If the value of tree is true, the top level devices returned from this method are the USB Controllers; connected hubs and devices in its device tree share that controller's bandwidth. If the value of tree is false, USB devices (not controllers) are listed in a single flat list.

      Parameters:
      tree - If true, returns a list of controllers, which requires recursive iteration of connected devices. If false, returns a flat list of devices excluding controllers.
      Returns:
      a list of UsbDevice objects.
    • getUsbDevices

      private static List<UsbDevice> getUsbDevices()
    • addDevicesToList

      private static void addDevicesToList(List<UsbDevice> deviceList, List<UsbDevice> list)
    • getDeviceAndChildren

      private static OpenBsdUsbDevice getDeviceAndChildren(String devPath, String vid, String pid, Map<String,String> nameMap, Map<String,String> vendorMap, Map<String,String> vendorIdMap, Map<String,String> productIdMap, Map<String,String> serialMap, Map<String,List<String>> hubMap)
      Recursively creates OpenBsdUsbDevices by fetching information from maps to populate fields
      Parameters:
      devPath - The device node path.
      vid - The default (parent) vendor ID
      pid - The default (parent) product ID
      nameMap - the map of names
      vendorMap - the map of vendors
      vendorIdMap - the map of vendorIds
      productIdMap - the map of productIds
      serialMap - the map of serial numbers
      hubMap - the map of hubs
      Returns:
      A SolarisUsbDevice corresponding to this device