package com.baidu.disconf.client.addons.properties;
import java.util.ArrayList;
import java.util.List;
/**
* 线程方式的reload
*/
public class ReloadConfiguration implements Runnable {
List<ReconfigurableBean> reconfigurableBeans;
public void setReconfigurableBeans(List reconfigurableBeans) {
// early type check, and avoid aliassing
this.reconfigurableBeans = new ArrayList<ReconfigurableBean>();
for (Object o : reconfigurableBeans) {
this.reconfigurableBeans.add((ReconfigurableBean) o);
}
}
public void run() {
for (ReconfigurableBean bean : reconfigurableBeans) {
try {
bean.reloadConfiguration();
} catch (Exception e) {
throw new RuntimeException("while reloading configuration of " + bean, e);
}
}
}
}