I've found that Felix appears to have an extension to the OSGi R6/DS
1.3 specification regarding configuration of components.

In that @Active, @Deactivate, and @Modified methods can by configured
by an interface in addition to an annotation.
per at least [0] & [1]

However, bnd itself does not seem to be rather happy with this, and
when using maven-bundle-plugin 3.0.1, the build will fail due to this.
Though using bnd directly seems to be treating this more as a warning,
as it still writes the activate, deactivate, and modified attributes
as normal.
(That or the ability to still write the XML as expected may be an
artifact of using a newer bnd that what the maven-bundle-plugin
utilizes)

Also, The felix extension point indicator is in the component
definition XML (which is normally generated by bnd when using the OSGi
R6 annotations).
Is there actually any expectation that bnd is able to support the
felix specific extension point here?
I'm currently seeing this as having to forego the annotations and
write the XML manually for at least these particular "violating"
components, which would be a decent cause for tedium and confusion
later.


This restriction to only allowing the use of annotation types in the
component lifecycle methods seems a bit contrary.
@ObjectClassDefinition explicitly states that it can specified on
interfaces (and handling interface hierarchy), but if interfaces can
not be used as part of the component lifecycle method signatures, then
this feels like the use of metatyping interfaces is rather
non-beneficial.

This currently seems like a lack of friendliness in the specification,
which is why the Felix project created the enhancement point...
But I'm not actually all that familiar with the specification to be
confident in this viewpoint.

Any clarity/feedback that could be provided on the matter here would
be greatly appreciated.

Thanks,
Steven

[0] - 
http://svn.apache.org/viewvc/felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/xml/XmlHandler.java?revision=1744737&view=markup#l296
[1] - 
http://svn.apache.org/viewvc/felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/inject/ActivateMethod.java?revision=1744740&view=markup#l246

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@felix.apache.org
For additional commands, e-mail: users-h...@felix.apache.org

Reply via email to