Interface DriverSelector


public interface DriverSelector
When the device manager detects a new Device service, it calls all registered Driver services to determine if anyone matches the Device service. If at least one Driver service matches, the device manager must choose one. If there is a Driver Selector service registered with the Framework, the device manager will ask it to make the selection. If there is no Driver Selector service, or if it returns an invalid result, or throws an Exception, the device manager uses the default selection strategy.
Since:
1.1
"ThreadSafe"
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    Return value from DriverSelector.select, if no Driver service should be attached to the Device service.
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    select(ServiceReference<?> reference, Match[] matches)
    Select one of the matching Driver services.
  • Field Details

    • SELECT_NONE

      static final int SELECT_NONE
      Return value from DriverSelector.select, if no Driver service should be attached to the Device service. The value is -1.
      See Also:
  • Method Details

    • select

      int select(ServiceReference<?> reference, Match[] matches)
      Select one of the matching Driver services. The device manager calls this method if there is at least one driver bidding for a device. Only Driver services that have responded with nonzero (not Device.MATCH_NONE) match values will be included in the list.
      Parameters:
      reference - the ServiceReference object of the Device service.
      matches - the array of all non-zero matches.
      Returns:
      index into the array of Match objects, or SELECT_NONE if no Driver service should be attached