Набор для разработки драйверов (DDK)
SberMobile Server Driver Development Kit (DDK, набор инструментальных средств для разработки драйверов) -- это часть часть комплекта разработчика SberMobile, который позволяет создавать драйвера устройств SberMobile Serverа на языке программирования Java.
Плагины драйверов устройства
Драйвер Устройства SberMobile Server -- это особый тип плагина SberMobile Server. Технически драйвер включает в себя два обязательных компонента:
Driver Java class, который реализует интерфейс
DeviceDriver
. Большинство реализаций расширяет классAbstractDeviceDriver,
чтобы избежать ипользования неподходящих методов и сохранения их функциональности по умолчанию.Дескриптор плагина драйвера, который определяет свойства плагина и его место в иерархии плагинов SberMobile Server.
Комплект разработчика устройства Device Server включает пример с открытыми исходными текстами для реализации Драйвера Устройства SberMobile Server, именуемого Demo Device Driver. Он находится в пакете
Чтобы испытать драйвер:
|
Создание экземпляра драйвера устройства
Разработчики драйверов устройств должны знать политику, которую SberMobile Server использует для создания драйверов, т.е. экземпляры класса Java, наследуемые из AbstractDeviceDriver
:
При запуске сервера создается один экземпляр класса драйвера. Этот экземпляр отвечает за инициализацию/деинициализацию плагина глобального уровня или уровня каждого пользователя. Таким образом, сервер вызывает следующие методы этого экземпляра:
globalInit()
,globalDeinit()
,globalStart()
,globalStop()
. Он также вызывает несколько методов, один раз на учетную запись каждого пользователя в системе:userInit()
,userDeinit()
.На каждую учетную запись устройства, которая использует этот тип драйвера, создается один экземпляр класса драйвера. Этот экземпляр проводит непосредственную коммуникацию с аппаратными устройствами и источниками данных и взаимодействует с определенным
DeviceContext
.Также экземпляры класса драйвера могут создаваться во время подключения нового устройства (на этапе спецификации свойств подключения устройства). Единственный метод, который будет вызываться из этих экземпляров - это
createConnectionPropertiesFormat()
.