You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@felix.apache.org by jamie campbell <ja...@parit.ca> on 2011/03/15 00:19:50 UTC

configuration management agents : approaches?

I've written a configuration management agent which registers two 
trackers (one for ManagedService and one for ManagedServiceFactory) as 
well as being a configuration listener.  I've hit a timing problem where 
all configurations associated with a ManagedServiceFactory are "not yet 
available" when the tracker gives service added notification.  The 
configuration listener also isn't triggered later (which is not a 
surprise because the configuration being loaded is neither a deletion 
nor an update, which are the two events configuration listening 
supports).  The tracker also doesn't get a modified service triggered.  
I've also looked at the dependency manager, but 
http://felix.apache.org/site/apache-felix-dependency-manager-getting-started.html 
says "only required configuration dependencies are supported" and my 
management agent needs to support zero, 1, or n configurations and 
doesn't know ahead of time what the situation will be.

I also looked at EventAdmin and established the management agent to 
listen to "everything", in the hopes that maybe there's some low level 
event that has the info I need.  It gets 
org/osgi/framework/ServiceEvent/REGISTERED , 
org/osgi/service/log/LogEntry/LOG_DEBUG , 
org/osgi/framework/BundleEvent/STARTED , and 
org/osgi/framework/BundleEvent/RESOLVED, none of which correlate to what 
I need to listen on.

The obvious sort of kludgy approach is to create a timer/polling thread 
in the bundle that keeps refreshing to support configuration operations 
that take place outside of tracker and config listener operations, but 
I'm hoping there's a better approach.. some other listener or tracker 
type I don't know about?

-Jamie

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