Java Archaius的属性更改侦听器

Java Archaius的属性更改侦听器,java,apache-commons-config,netflix-archaius,Java,Apache Commons Config,Netflix Archaius,我正在使用以使托管我的应用程序的所有服务器之间的系统属性保持一致。我可以看到所有属性getter都可以在属性更改时调用回调(例如,请参见),但我希望侦听任何属性更改。是否有一些接口我可以在某处实现并注册为侦听器?我在任何Archaius How to文档中都没有找到答案,但Apache Commons配置在他们的文档中提供了一个解决方案(Archaius与之完全兼容) 我通过实现org.apache.commons.configuration.event.ConfigurationListene

我正在使用以使托管我的应用程序的所有服务器之间的系统属性保持一致。我可以看到所有属性getter都可以在属性更改时调用回调(例如,请参见),但我希望侦听任何属性更改。是否有一些接口我可以在某处实现并注册为侦听器?

我在任何Archaius How to文档中都没有找到答案,但Apache Commons配置在他们的文档中提供了一个解决方案(Archaius与之完全兼容)

我通过实现
org.apache.commons.configuration.event.ConfigurationListener
创建了一个侦听器,它定义了一个名为
configurationChanged()
的方法,并接受一个
ConfigurationEvent
参数。此方法在属性实际更改之前和之后调用一次,在
事件
参数上使用
beforeUpdate
布尔值指示每次调用的时间

创建侦听器后,我向Archaius configuration manager注册了它:

ConfigurationManager.getConfigInstance().addConfigurationListener(new MyCustomConfigurationListener());

现在我可以看到
MyCustomConfigurationListener.configurationChanged()
在每次属性更改时被调用两次(一次在之前,一次在之后)。

这非常有用!谢谢卡梅隆!