OSGi™ Service Platform
Release 4 Version 4.2

org.osgi.service.device
Interface DriverLocator


public interface DriverLocator

A Driver Locator service can find and load device driver bundles given a property set. Each driver is represented by a unique DRIVER_ID.

Driver Locator services provide the mechanism for dynamically downloading new device driver bundles into an OSGi environment. They are supplied by providers and encapsulate all provider-specific details related to the location and acquisition of driver bundles.

See Also:
Driver
ThreadSafe

Method Summary
 java.lang.String[] findDrivers(java.util.Dictionary props)
          Returns an array of DRIVER_ID strings of drivers capable of attaching to a device with the given properties.
 java.io.InputStream loadDriver(java.lang.String id)
          Get an InputStream from which the driver bundle providing a driver with the giving DRIVER_ID can be installed.
 

Method Detail

findDrivers

java.lang.String[] findDrivers(java.util.Dictionary props)
Returns an array of DRIVER_ID strings of drivers capable of attaching to a device with the given properties.

The property keys in the specified Dictionary objects are case-insensitive.

Parameters:
props - the properties of the device for which a driver is sought
Returns:
array of driver DRIVER_ID strings of drivers capable of attaching to a Device service with the given properties, or null if this Driver Locator service does not know of any such drivers

loadDriver

java.io.InputStream loadDriver(java.lang.String id)
                               throws java.io.IOException
Get an InputStream from which the driver bundle providing a driver with the giving DRIVER_ID can be installed.

Parameters:
id - the DRIVER_ID of the driver that needs to be installed.
Returns:
An InputStream object from which the driver bundle can be installed or null if the driver with the given ID cannot be located
Throws:
java.io.IOException - the input stream for the bundle cannot be created

OSGi™ Service Platform
Release 4 Version 4.2

Copyright © OSGi Alliance (2000, 2010). All Rights Reserved. Licensed under the OSGi Specification License, Version 1.0