Richard S. Hall a écrit :
> Clement Escoffier wrote:
>> Hello
>>
>> Felix Meschberger a écrit :
>>> Hi Richard,
>>>
>>> In Felix-277 you propose to "privatize" the ServiceTracker and make the
>>> LogService package a dynamic dependency. I think, this is a good
>>> idea and
>>> will, as noted in the issue, implement this.
>>>
>>> While doing this, there is another Compendium Service dependency in
>>> the scr:
>>> Configuration Admin Service. This is a more complicated dependency
>>> because
>>> scr does not only call into the ConfigurationAdmin service but also
>>> registers a ManagedServiceFactory for factory components. So, if the
>>> OSGi cm
>>> packages are not available, factory components will not work (and
>>> configuration retrieval by other components may fail).
>>>
>>> What do you think of having scr export and re-import the OSGi cm
>>> package ?
>>> This way, the framework would select the cm package to which other
>>> bundles
>>> get wired and scr will have the OSGi cm packages regardless of
>>> whether a CM
>>> implementation exporting it is available.
>> It is what I do for the Log service and the Config Admin in iPOJO. It
>> increase the size of the bundle but I did not find another acceptable
>> solution.
>> The pom file contains folowing BND instructions:
>> <Import-Package>
>> org.osgi.framework; version="1.3",
>> org.osgi.service.cm; version="1.2",
>> org.osgi.service.log; version="1.3"
>> </Import-Package>
>> <Export-Package>
>> org.apache.felix.ipojo; version="0.7.1",
>> ....... (some other iPOJO packages) .....
>> org.osgi.service.cm; version="1.2",
>> org.osgi.service.log; version="1.3"
>> </Export-Package>
>
> Shouldn't BND automatically detect the versions for you from the
> packageinfo files?
BND inserts versions for imported (and re-exported version), but does
not add version for non imported packages (In the previous snippet, BND
can add 1.3 and 1.2 version but cannot discover 0.7.1 version).
Clement
--
Clement Escoffier
Grenoble University
LSR - Bat. C
220, Rue de la Chimie
BP 53
38041 GRENOBLE CEDEX 9
04.76.51.40.24
http://clement.plop-plop.net
|