You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@marmotta.apache.org by ss...@apache.org on 2013/07/05 13:32:12 UTC

git commit: check whether configuration options have already been set, helps reducing the number of events thrown

Updated Branches:
  refs/heads/develop 50534993b -> 8c076e4f9


check whether configuration options have already been set, helps reducing the number of events thrown


Project: http://git-wip-us.apache.org/repos/asf/incubator-marmotta/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-marmotta/commit/8c076e4f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-marmotta/tree/8c076e4f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-marmotta/diff/8c076e4f

Branch: refs/heads/develop
Commit: 8c076e4f9b696f813ae5dd93747d38290d623dee
Parents: 5053499
Author: Sebastian Schaffert <ss...@apache.org>
Authored: Fri Jul 5 13:32:06 2013 +0200
Committer: Sebastian Schaffert <ss...@apache.org>
Committed: Fri Jul 5 13:32:06 2013 +0200

----------------------------------------------------------------------
 .../config/ConfigurationServiceImpl.java        | 173 ++++++++++---------
 1 file changed, 96 insertions(+), 77 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/8c076e4f/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/services/config/ConfigurationServiceImpl.java
----------------------------------------------------------------------
diff --git a/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/services/config/ConfigurationServiceImpl.java b/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/services/config/ConfigurationServiceImpl.java
index 12c0302..f6b38dc 100644
--- a/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/services/config/ConfigurationServiceImpl.java
+++ b/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/services/config/ConfigurationServiceImpl.java
@@ -49,6 +49,7 @@ import org.apache.commons.configuration.Configuration;
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.commons.configuration.MapConfiguration;
 import org.apache.commons.configuration.PropertiesConfiguration;
+import org.apache.commons.lang3.ObjectUtils;
 import org.apache.marmotta.platform.core.api.config.ConfigurationService;
 import org.apache.marmotta.platform.core.events.ConfigurationChangedEvent;
 import org.apache.marmotta.platform.core.events.ConfigurationServiceInitEvent;
@@ -585,16 +586,18 @@ public class ConfigurationServiceImpl implements ConfigurationService {
         Preconditions.checkNotNull(key);
         Preconditions.checkState(initialised,"ConfigurationService not yet initialised; call initialise() manually");
 
-        lock.writeLock().lock();
-        try {
-            config.setProperty(key, value);
-            save();
-        } finally {
-            lock.writeLock().unlock();
-        }
+        if(!config.containsKey(key) || !ObjectUtils.equals(value,config.getProperty(key))) {
+            lock.writeLock().lock();
+            try {
+                config.setProperty(key, value);
+                save();
+            } finally {
+                lock.writeLock().unlock();
+            }
 
-        if (!initialising) {
-            configurationEvent.fire(new ConfigurationChangedEvent(key));
+            if (!initialising) {
+                configurationEvent.fire(new ConfigurationChangedEvent(key));
+            }
         }
     }
 
@@ -718,16 +721,18 @@ public class ConfigurationServiceImpl implements ConfigurationService {
         Preconditions.checkNotNull(key);
         Preconditions.checkState(initialised,"ConfigurationService not yet initialised; call initialise() manually");
 
-        lock.writeLock().lock();
-        try {
-            config.setProperty(key, value);
-            save();
-        } finally {
-            lock.writeLock().unlock();
-        }
+        if(!config.containsKey(key) || !ObjectUtils.equals(value,config.getDouble(key))) {
+            lock.writeLock().lock();
+            try {
+                config.setProperty(key, value);
+                save();
+            } finally {
+                lock.writeLock().unlock();
+            }
 
-        if (!initialising) {
-            configurationEvent.fire(new ConfigurationChangedEvent(key));
+            if (!initialising) {
+                configurationEvent.fire(new ConfigurationChangedEvent(key));
+            }
         }
     }
 
@@ -767,16 +772,18 @@ public class ConfigurationServiceImpl implements ConfigurationService {
         Preconditions.checkNotNull(key);
         Preconditions.checkState(initialised,"ConfigurationService not yet initialised; call initialise() manually");
 
-        lock.writeLock().lock();
-        try {
-            config.setProperty(key, value);
-            save();
-        } finally {
-            lock.writeLock().unlock();
-        }
+        if(!config.containsKey(key) || !ObjectUtils.equals(value,config.getInt(key))) {
+            lock.writeLock().lock();
+            try {
+                config.setProperty(key, value);
+                save();
+            } finally {
+                lock.writeLock().unlock();
+            }
 
-        if (!initialising) {
-            configurationEvent.fire(new ConfigurationChangedEvent(key));
+            if (!initialising) {
+                configurationEvent.fire(new ConfigurationChangedEvent(key));
+            }
         }
     }
 
@@ -832,16 +839,18 @@ public class ConfigurationServiceImpl implements ConfigurationService {
         Preconditions.checkNotNull(key);
         Preconditions.checkState(initialised,"ConfigurationService not yet initialised; call initialise() manually");
 
-        lock.writeLock().lock();
-        try {
-            config.setProperty(key, value);
-            save();
-        } finally {
-            lock.writeLock().unlock();
-        }
+        if(!config.containsKey(key) || !ObjectUtils.equals(value,config.getLong(key))) {
+            lock.writeLock().lock();
+            try {
+                config.setProperty(key, value);
+                save();
+            } finally {
+                lock.writeLock().unlock();
+            }
 
-        if (!initialising) {
-            configurationEvent.fire(new ConfigurationChangedEvent(key));
+            if (!initialising) {
+                configurationEvent.fire(new ConfigurationChangedEvent(key));
+            }
         }
     }
 
@@ -883,17 +892,20 @@ public class ConfigurationServiceImpl implements ConfigurationService {
         Preconditions.checkNotNull(key);
         Preconditions.checkState(initialised,"ConfigurationService not yet initialised; call initialise() manually");
 
-        lock.writeLock().lock();
-        try {
-            config.setProperty(key, value);
-            save();
-        } finally {
-            lock.writeLock().unlock();
-        }
+        if(!config.containsKey(key) || value != config.getBoolean(key)) {
 
+            lock.writeLock().lock();
+            try {
+                config.setProperty(key, value);
+                save();
+            } finally {
+                lock.writeLock().unlock();
+            }
 
-        if (!initialising) {
-            configurationEvent.fire(new ConfigurationChangedEvent(key));
+
+            if (!initialising) {
+                configurationEvent.fire(new ConfigurationChangedEvent(key));
+            }
         }
     }
 
@@ -976,17 +988,19 @@ public class ConfigurationServiceImpl implements ConfigurationService {
         Preconditions.checkNotNull(key);
         Preconditions.checkState(initialised,"ConfigurationService not yet initialised; call initialise() manually");
 
-        lock.writeLock().lock();
-        try {
-            config.setProperty(key, value);
-            save();
-        } finally {
-            lock.writeLock().unlock();
-        }
+        if(!config.containsKey(key) || !ObjectUtils.equals(value,config.getList(key))) {
+            lock.writeLock().lock();
+            try {
+                config.setProperty(key, value);
+                save();
+            } finally {
+                lock.writeLock().unlock();
+            }
 
 
-        if (!initialising) {
-            configurationEvent.fire(new ConfigurationChangedEvent(key));
+            if (!initialising) {
+                configurationEvent.fire(new ConfigurationChangedEvent(key));
+            }
         }
     }
 
@@ -1011,23 +1025,26 @@ public class ConfigurationServiceImpl implements ConfigurationService {
         Preconditions.checkNotNull(key);
         Preconditions.checkState(initialised,"ConfigurationService not yet initialised; call initialise() manually");
 
-        lock.writeLock().lock();
-        try {
-            if (config instanceof AbstractConfiguration) {
-                ((AbstractConfiguration) config).setDelimiterParsingDisabled(true);
-            }
-            config.setProperty(key, value);
-            if (config instanceof AbstractConfiguration) {
-                ((AbstractConfiguration) config).setDelimiterParsingDisabled(false);
+        if(!config.containsKey(key) || !ObjectUtils.equals(value,config.getString(key))) {
+
+            lock.writeLock().lock();
+            try {
+                if (config instanceof AbstractConfiguration) {
+                    ((AbstractConfiguration) config).setDelimiterParsingDisabled(true);
+                }
+                config.setProperty(key, value);
+                if (config instanceof AbstractConfiguration) {
+                    ((AbstractConfiguration) config).setDelimiterParsingDisabled(false);
+                }
+                save();
+            } finally {
+                lock.writeLock().unlock();
             }
-            save();
-        } finally {
-            lock.writeLock().unlock();
-        }
 
 
-        if (!initialising) {
-            configurationEvent.fire(new ConfigurationChangedEvent(key));
+            if (!initialising) {
+                configurationEvent.fire(new ConfigurationChangedEvent(key));
+            }
         }
     }
 
@@ -1092,17 +1109,19 @@ public class ConfigurationServiceImpl implements ConfigurationService {
         Preconditions.checkNotNull(key);
         Preconditions.checkState(initialised,"ConfigurationService not yet initialised; call initialise() manually");
 
-        lock.writeLock().lock();
-        try {
-            config.setProperty(key, values);
-            save();
-        } finally {
-            lock.writeLock().unlock();
-        }
+        if(!config.containsKey(key) || !ObjectUtils.equals(values,config.getList(key))) {
+            lock.writeLock().lock();
+            try {
+                config.setProperty(key, values);
+                save();
+            } finally {
+                lock.writeLock().unlock();
+            }
 
 
-        if (!initialising) {
-            configurationEvent.fire(new ConfigurationChangedEvent(key));
+            if (!initialising) {
+                configurationEvent.fire(new ConfigurationChangedEvent(key));
+            }
         }
     }