Hi, On 03.02.2010 18:42, Guillaume Nodet wrote: > I'm not completely intimate with the config admin code, but my > understanding is that configuration updates are done asynchronously. > The spec section 104.7.3.1 says: > > The update method calls in Configuration objects are not executed > synchronously > with the related target service updated method. This method must be > called > asynchronously. The Configuration Admin service, however, must > have updated > the persistent storage before the update method returns. > > However, looking at the CM code, it looks like everything is executed > asynchronously. > I haven't tried, but it looks like if the same thread updates a > configuration and just after that > retrieve the configuration again, it may not see the updated values, > while I think it should > be the case. > > Thoughts ?
Peristing configuration is synchronous: As soon as you call Configuration.update(Dictionary) the configuration is persisted and thus available through the ConfigurationAdmin service. Any notifications and updates -- ConfigurationListener and ManagedService[Factory] -- take place asynchronously. Hope this helps. Regards Felix
