You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tamaya.apache.org by an...@apache.org on 2017/09/24 20:12:26 UTC
incubator-tamaya-extensions git commit: TAMAYA-310: Fixed events emit
for changes.
Repository: incubator-tamaya-extensions
Updated Branches:
refs/heads/java8 6bd7d1d87 -> bcede48d2
TAMAYA-310: Fixed events emit for changes.
Project: http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/commit/bcede48d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/tree/bcede48d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/diff/bcede48d
Branch: refs/heads/java8
Commit: bcede48d2e8ec5d41172fb9e44e19fb5bae8136f
Parents: 6bd7d1d
Author: anatole <an...@apache.org>
Authored: Sun Sep 24 21:34:40 2017 +0200
Committer: anatole <an...@apache.org>
Committed: Sun Sep 24 21:34:40 2017 +0200
----------------------------------------------------------------------
.../events/ConfigurationChangeBuilder.java | 26 +++++++++-----------
.../internal/DefaultConfigChangeObserver.java | 15 +++++------
2 files changed, 18 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/bcede48d/modules/events/src/main/java/org/apache/tamaya/events/ConfigurationChangeBuilder.java
----------------------------------------------------------------------
diff --git a/modules/events/src/main/java/org/apache/tamaya/events/ConfigurationChangeBuilder.java b/modules/events/src/main/java/org/apache/tamaya/events/ConfigurationChangeBuilder.java
index 651a80d..7379e72 100644
--- a/modules/events/src/main/java/org/apache/tamaya/events/ConfigurationChangeBuilder.java
+++ b/modules/events/src/main/java/org/apache/tamaya/events/ConfigurationChangeBuilder.java
@@ -103,12 +103,10 @@ public final class ConfigurationChangeBuilder {
String key = en.getKey();
String previousValue = en.getValue();
String currentValue = current.get(en.getKey());
-
- if (currentValue == null) {
- PropertyChangeEvent event = new PropertyChangeEvent(previous, key, previousValue, null);
- events.put(key, event);
- } else if (!Objects.equals(current, previous)) {
- PropertyChangeEvent event = new PropertyChangeEvent(previous, key, currentValue, previousValue);
+ if(Objects.equals(currentValue, previousValue)){
+ continue;
+ }else {
+ PropertyChangeEvent event = new PropertyChangeEvent(previous, key, previousValue, currentValue);
events.put(key, event);
}
}
@@ -117,16 +115,16 @@ public final class ConfigurationChangeBuilder {
String key = en.getKey();
String previousValue = previous.get(en.getKey());
String currentValue = en.getValue();
-
- if (previousValue == null) {
- PropertyChangeEvent event = new PropertyChangeEvent(current, key, null, currentValue);
- events.put(key, event);
- } else if (!(Objects.equals(previousValue, currentValue) && events.containsKey(key))) {
- PropertyChangeEvent event = new PropertyChangeEvent(current, en.getKey(), previousValue, en.getValue());
- events.put(key, event);
+ if(Objects.equals(currentValue, previousValue)){
+ continue;
+ }else{
+ if (previousValue == null) {
+ PropertyChangeEvent event = new PropertyChangeEvent(current, key, null, currentValue);
+ events.put(key, event);
+ }
+ // the other cases were already covered by the previous loop.
}
}
-
return events.values();
}
http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/bcede48d/modules/events/src/main/java/org/apache/tamaya/events/internal/DefaultConfigChangeObserver.java
----------------------------------------------------------------------
diff --git a/modules/events/src/main/java/org/apache/tamaya/events/internal/DefaultConfigChangeObserver.java b/modules/events/src/main/java/org/apache/tamaya/events/internal/DefaultConfigChangeObserver.java
index 9d4169c..51951de 100644
--- a/modules/events/src/main/java/org/apache/tamaya/events/internal/DefaultConfigChangeObserver.java
+++ b/modules/events/src/main/java/org/apache/tamaya/events/internal/DefaultConfigChangeObserver.java
@@ -64,20 +64,17 @@ public class DefaultConfigChangeObserver {
FrozenConfiguration frozenConfig = FrozenConfiguration.of(ConfigurationProvider.getConfiguration());
ConfigurationChange changes;
- if (getLastConfig() == null) {
- changes = ConfigurationChangeBuilder.of().putAll(frozenConfig.getProperties())
- .build();
- } else {
+ if (getLastConfig() != null) {
changes = ConfigurationChangeBuilder.of(getLastConfig()).addChanges(frozenConfig)
.build();
+ if(!changes.isEmpty()) {
+ LOG.info("Identified configuration changes, publishing changes:\n" + changes);
+ ConfigEventManager.fireEvent(changes);
+ }
}
-
setLastConfig(frozenConfig);
- if(!changes.isEmpty()) {
- LOG.info("Identified configuration changes, publishing changes:\n" + changes);
- ConfigEventManager.fireEvent(changes);
- }
+
}
protected FrozenConfiguration getLastConfig() {