You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@deltaspike.apache.org by jo...@apache.org on 2013/03/25 01:56:10 UTC

git commit: DELTASPIKE-326 Added isScannable to ConfigSource and default implementations. Added logic to filter when pulling back all properties.

Updated Branches:
  refs/heads/master d511f2337 -> 682741460


DELTASPIKE-326 Added isScannable to ConfigSource and default implementations.  Added logic to filter when pulling back all properties.


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

Branch: refs/heads/master
Commit: 6827414602c2a0598b97198351745408947b5870
Parents: d511f23
Author: John D. Ament <jo...@gmail.com>
Authored: Sun Mar 24 20:55:41 2013 -0400
Committer: John D. Ament <jo...@gmail.com>
Committed: Sun Mar 24 20:55:41 2013 -0400

----------------------------------------------------------------------
 .../deltaspike/core/api/config/ConfigResolver.java |    5 ++++-
 .../deltaspike/core/spi/config/ConfigSource.java   |   11 ++++++++++-
 .../test/api/config/TestConfigSource.java          |    5 +++++
 .../test/api/config/TestConfigSourceProvider.java  |   10 ++++++++++
 .../core/impl/config/LocalJndiConfigSource.java    |    6 ++++++
 .../core/impl/config/MapConfigSource.java          |    6 ++++++
 .../core/impl/config/PropertiesConfigSource.java   |    5 +++++
 7 files changed, 46 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/blob/68274146/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/config/ConfigResolver.java
----------------------------------------------------------------------
diff --git a/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/config/ConfigResolver.java b/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/config/ConfigResolver.java
index f939d6a..43bb660 100644
--- a/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/config/ConfigResolver.java
+++ b/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/config/ConfigResolver.java
@@ -183,7 +183,10 @@ public final class ConfigResolver
 
         for (ConfigSource configSource : appConfigSources)
         {
-            result.putAll(configSource.getProperties());
+            if (configSource.isScannable())
+            {
+                result.putAll(configSource.getProperties());
+            }
         }
 
         return Collections.unmodifiableMap(result);

http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/blob/68274146/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/spi/config/ConfigSource.java
----------------------------------------------------------------------
diff --git a/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/spi/config/ConfigSource.java b/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/spi/config/ConfigSource.java
index 52f94bd..4c71b90 100644
--- a/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/spi/config/ConfigSource.java
+++ b/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/spi/config/ConfigSource.java
@@ -93,5 +93,14 @@ public interface ConfigSource
      * @return the 'name' of the configuration source, e.g. 'property-file mylocation/myproperty.properties'
      */
     String getConfigName();
-
+    
+    /**
+     * Determines if this config source should be scanned for its list of properties.
+     * 
+     * Generally, slow ConfigSources should return false here. 
+     * 
+     * @return true if this ConfigSource should be scanned for its list of properties, 
+     * false if it should not be scanned.
+     */
+    boolean isScannable(); 
 }

http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/blob/68274146/deltaspike/core/api/src/test/java/org/apache/deltaspike/test/api/config/TestConfigSource.java
----------------------------------------------------------------------
diff --git a/deltaspike/core/api/src/test/java/org/apache/deltaspike/test/api/config/TestConfigSource.java b/deltaspike/core/api/src/test/java/org/apache/deltaspike/test/api/config/TestConfigSource.java
index 360f8ff..581c837 100644
--- a/deltaspike/core/api/src/test/java/org/apache/deltaspike/test/api/config/TestConfigSource.java
+++ b/deltaspike/core/api/src/test/java/org/apache/deltaspike/test/api/config/TestConfigSource.java
@@ -59,4 +59,9 @@ public class TestConfigSource implements ConfigSource
         return map;
     }
 
+	@Override
+	public boolean isScannable() {
+		return true;
+	}
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/blob/68274146/deltaspike/core/api/src/test/java/org/apache/deltaspike/test/api/config/TestConfigSourceProvider.java
----------------------------------------------------------------------
diff --git a/deltaspike/core/api/src/test/java/org/apache/deltaspike/test/api/config/TestConfigSourceProvider.java b/deltaspike/core/api/src/test/java/org/apache/deltaspike/test/api/config/TestConfigSourceProvider.java
index 15e5d87..098b37b 100644
--- a/deltaspike/core/api/src/test/java/org/apache/deltaspike/test/api/config/TestConfigSourceProvider.java
+++ b/deltaspike/core/api/src/test/java/org/apache/deltaspike/test/api/config/TestConfigSourceProvider.java
@@ -68,6 +68,11 @@ public class TestConfigSourceProvider implements ConfigSourceProvider
         {
             return TestConfigSourceProvider.class.getName();
         }
+
+		@Override
+		public boolean isScannable() {
+			return true;
+		}
     }
 
     private static class TestConfigSource2 implements ConfigSource
@@ -101,5 +106,10 @@ public class TestConfigSourceProvider implements ConfigSourceProvider
         {
             return TestConfigSourceProvider.class.getName();
         }
+
+		@Override
+		public boolean isScannable() {
+			return false;
+		}
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/blob/68274146/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/LocalJndiConfigSource.java
----------------------------------------------------------------------
diff --git a/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/LocalJndiConfigSource.java b/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/LocalJndiConfigSource.java
index 856876f..c847d6b 100644
--- a/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/LocalJndiConfigSource.java
+++ b/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/LocalJndiConfigSource.java
@@ -85,4 +85,10 @@ class LocalJndiConfigSource extends BaseConfigSource
     {
         return BASE_NAME;
     }
+
+    @Override
+    public boolean isScannable()
+    {
+        return true;
+    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/blob/68274146/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/MapConfigSource.java
----------------------------------------------------------------------
diff --git a/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/MapConfigSource.java b/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/MapConfigSource.java
index 9038a53..9cd80ad 100644
--- a/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/MapConfigSource.java
+++ b/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/MapConfigSource.java
@@ -45,4 +45,10 @@ public abstract class MapConfigSource extends BaseConfigSource
         return map.get(key);
     }
 
+    @Override
+    public boolean isScannable()
+    {
+        return true;
+    }
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/blob/68274146/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/PropertiesConfigSource.java
----------------------------------------------------------------------
diff --git a/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/PropertiesConfigSource.java b/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/PropertiesConfigSource.java
index acca053..a2749d8 100644
--- a/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/PropertiesConfigSource.java
+++ b/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/PropertiesConfigSource.java
@@ -59,4 +59,9 @@ public abstract class PropertiesConfigSource extends BaseConfigSource
         return result;
     }
 
+    @Override
+    public boolean isScannable()
+    {
+        return true;
+    }
 }
\ No newline at end of file