Device
Date: 2016-06-25

org.osgi.service.device

## Interface Device

-     public interface Device

  Interface for identifying device services.

  A service must implement this interface or use the `Constants.DEVICE_CATEGORY` registration property to indicate that it is a device. Any services implementing this interface or registered with the `DEVICE_CATEGORY` property will be discovered by the device manager.

  Device services implementing this interface give the device manager the opportunity to indicate to the device that no drivers were found that could (further) refine it. In this case, the device manager calls the `noDriverFound()` method on the `Device` object.

  Specialized device implementations will extend this interface by adding methods appropriate to their device category to it.

  See Also:
    `Driver`

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `MATCH_NONE` Return value from `Driver.match(ServiceReference)` indicating that the driver cannot refine the device presented to it by the device manager.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `noDriverFound()` Indicates to this `Device` object that the device manager has failed to attach any drivers to it.

- - ### Field Detail

    - #### MATCH_NONE

          static final int MATCH_NONE

      Return value from `Driver.match(ServiceReference)` indicating that the driver cannot refine the device presented to it by the device manager. The value is zero.
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### noDriverFound

          void noDriverFound()

      Indicates to this `Device` object that the device manager has failed to attach any drivers to it.

      If this `Device` object can be configured differently, the driver that registered this `Device` object may unregister it and register a different Device service instead.