Hmmm this behavior described below is only true if i
start/stop the bridge driver (which exports the devices)
and the base driver already has some devices exported to
the registry.
If the bridge driver is running and i start/stop the
basedriver (which removes/registers the devices which should get exported)
everything works fine.
Kind regards,
Daniel
Von:
equinox-dev-bounces@xxxxxxxxxxx [mailto:equinox-dev-bounces@xxxxxxxxxxx] Im
Auftrag von Daniel Felsing
Gesendet: Freitag, 27. Juni 2008 11:59
An: equinox-dev@xxxxxxxxxxx
Betreff: [equinox-dev] regarding OSGI Device Access (Problem with
Drivers)
Dear All,
I really need help :-(
Let us say, I have a Base Driver, which creates Motion Sensor and Simple Light
Devices (OSGI Devices).. and I have another bundle
which acts as a motion sensor/ simple light bridging driver. The
driver will create new UPnP devices which use my motion sensor / simple light
devices as model (e.g. creates a new upnplightdevice for each simple light
found).
When the bridge driver bundle is installed/started in the framework, it
registers itsself (OSGI Driver service).
The basedriver registering the motion sensor / simple light devices gets
started and registers the found devices in the registry
Now the OSGI DeviceManager look for all "Drivers" and calls the
match method of my upnpbridge driver…
In best case my bundle is successful and registers the upnp device
implementations to the registry which lets the upnp base driver (from niche)
export them successfully.
Now my question….
I tried to test the behavior of my base and bridge driver by
starting and stopping them in random order while the framework is running.
Most of the time all runs fine…and attach and match methods get
called on my driver
so my bridge driver says:
- Motionsensor1
successfully exported
- Light1
successfully exported
BUT SOMETIMES SOMEHOW…(i cannot explain why…)
The bridgedrivers (which should export the devices) match method
is only called for one of the devices (this behavior is random) and the other
device’s „noDriverFound()“ method gets called immediately…?
Thats a strange behavior…since the match method of the driver
should be called…..and sometimes it doesnt!
I use eclipse equinox version 3.2 and already tried the device
bundle from 3.4 – but no success either.
Kind regards,
Daniel