[
https://issues.apache.org/jira/browse/FELIX-4116?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=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