You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Pierre Bourret (JIRA)" <ji...@apache.org> on 2013/06/12 15:53:20 UTC
[jira] [Commented] (FELIX-4116) Ability to listen for component
service dependencies, providings, configuration properties, ...
[ https://issues.apache.org/jira/browse/FELIX-4116?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13681228#comment-13681228 ]
Pierre Bourret commented on FELIX-4116:
---------------------------------------
Work started here : https://github.com/bourretp/felix/tree/feature/component-listeners
Already got listeners for provided services and configuration.
For configuration, listeners are called when an _external_ reconfiguration_ occurs. Notifying listeners each time the POJO change a field value would dramatically slow down the component and expose inconsistent intermediate state to the listeners.
Listeners on service dependencies are ongoing...
> Ability to listen for component service dependencies, providings, configuration properties, ...
> -----------------------------------------------------------------------------------------------
>
> Key: FELIX-4116
> URL: https://issues.apache.org/jira/browse/FELIX-4116
> Project: Felix
> Issue Type: New Feature
> Components: iPOJO
> Environment: N/A
> Reporter: Pierre Bourret
>
> iPOJO offers the ability to be notified when a service arrives/is modified/leaves a dependency. However this notifications happens _inside_ the component, via dependency callbacks (@Bind, @Unbind, @Modified).
> What would be cool is to listen to this events _externally_, with listeners on the DependencyModel.
> Is is possible right now to do this with a hack of the DependencyCallbacks (lots of reflection, ugly code).
> So what just lacks is the API to register/unregister listeners + the listener interface.
> Same thing for service providings : we should be able to be notified when a component start/stop to provide a service. It is possible to listen to all services with the good "instance.name", but this is not really elegant, and there might be issues with isolated ServiceContext (composite). Registering a listener on the ProvidedService seems a better approach IMO.
> Same point for configuration, like the @Updated callback, but external.
> For sure there are lots of other component things to listen to... ;)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira