private ConfigChangeType getChangeType(ConfigChange change) { if (change.getChangeType() == PropertyChangeType.DELETED) { return ConfigChangeType.DELETED; } return ConfigChangeType.MODIFIED; }
private ConfigChangeType getChangeType(ConfigChange change) { if (change.getChangeType() == PropertyChangeType.DELETED) { return ConfigChangeType.DELETED; } return ConfigChangeType.MODIFIED; }
/** * Check whether we should trigger the auto update or not. * <br /> * For added or modified keys, we should trigger auto update if the current value in Spring equals to the new value. * <br /> * For deleted keys, we will trigger auto update anyway. */ private boolean shouldTriggerAutoUpdate(ConfigChangeEvent changeEvent, String changedKey) { ConfigChange configChange = changeEvent.getChange(changedKey); if (configChange.getChangeType() == PropertyChangeType.DELETED) { return true; } return Objects.equals(environment.getProperty(changedKey), configChange.getNewValue()); }
@Override public void onChange(ConfigChangeEvent changeEvent) { logger.info("Changes for namespace {}", changeEvent.getNamespace()); for (String key : changeEvent.changedKeys()) { ConfigChange change = changeEvent.getChange(key); logger.info("Change - key: {}, oldValue: {}, newValue: {}, changeType: {}", change.getPropertyName(), change.getOldValue(), change.getNewValue(), change.getChangeType()); } } };
@Override public void onChange(ConfigChangeEvent changeEvent) { logger.info("Changes for namespace {}", changeEvent.getNamespace()); for (String key : changeEvent.changedKeys()) { ConfigChange change = changeEvent.getChange(key); logger.info("Change - key: {}, oldValue: {}, newValue: {}, changeType: {}", change.getPropertyName(), change.getOldValue(), change.getNewValue(), change.getChangeType()); } } };
switch (change.getChangeType()) { case ADDED: if (Objects.equals(change.getOldValue(), change.getNewValue())) {
private ConfigChangeType getChangeType(ConfigChange change) { if (change.getChangeType() == PropertyChangeType.DELETED) { return ConfigChangeType.DELETED; } return ConfigChangeType.MODIFIED; }
private ConfigChangeType getChangeType(ConfigChange change) { if (change.getChangeType() == PropertyChangeType.DELETED) { return ConfigChangeType.DELETED; } return ConfigChangeType.MODIFIED; }
@Override public void onChange(ConfigChangeEvent changeEvent) { PropertiesProxy conf = appContext.getConf(); for (String key : changeEvent.changedKeys()) { ConfigChange cc = changeEvent.getChange(key); switch (cc.getChangeType()) { case ADDED: conf.put(key, cc.getNewValue()); break; case MODIFIED: conf.put(key, cc.getNewValue()); break; case DELETED: conf.remove(key); break; default: break; } } }