You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by to...@apache.org on 2016/12/13 09:24:18 UTC

svn commit: r1773934 - /sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/DefaultDistributionConfigurationManager.java

Author: tommaso
Date: Tue Dec 13 09:24:18 2016
New Revision: 1773934

URL: http://svn.apache.org/viewvc?rev=1773934&view=rev
Log:
SLING-6391 - added some javadoc and comments

Modified:
    sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/DefaultDistributionConfigurationManager.java

Modified: sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/DefaultDistributionConfigurationManager.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/DefaultDistributionConfigurationManager.java?rev=1773934&r1=1773933&r2=1773934&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/DefaultDistributionConfigurationManager.java (original)
+++ sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/DefaultDistributionConfigurationManager.java Tue Dec 13 09:24:18 2016
@@ -54,10 +54,10 @@ public class DefaultDistributionConfigur
     @Property(label = "Resource Config Root", description = "The resource config root", value = "/etc/distribution")
     public static final String CONFIG_ROOT = "resource.config.root";
 
-    @Property(label = "Resource Config Properties", description = "The resource config properties", value = { "enabled" } )
-    public static final String CONFIG_PROPERTIES= "resource.config.properties";
+    @Property(label = "Resource Config Properties", description = "The resource config properties", value = {"enabled"})
+    public static final String CONFIG_PROPERTIES = "resource.config.properties";
 
-    @Property(label = "Resource Config Defaults", description = "The default values for resource config properties", value = { "serializationType=distribution" } )
+    @Property(label = "Resource Config Defaults", description = "The default values for resource config properties", value = {"serializationType=distribution"})
     public static final String CONFIG_DEFAULTS = "resource.config.defaults";
 
     @Reference
@@ -209,21 +209,32 @@ public class DefaultDistributionConfigur
         return result;
     }
 
+    /**
+     * Split a {@link DistributionConfiguration} into two configurations, so that properties starting with a certain prefix
+     * go to a separate configuration while the remaining ones will live in a new configuration
+     * @param config a configuration
+     * @param prefix a prefix
+     * @return a {@link Map} of prefix -> configuration
+     */
     static Map<String, DistributionConfiguration> splitConfig(DistributionConfiguration config, String prefix) {
-        Map<String, Object> properties = config.getProperties();
+        Map<String, Object> distributionConfigurationProperties = config.getProperties();
 
+        // properties for OSGi configuration
         Map<String, Object> defaultMap = new HashMap<String, Object>();
-        Map<String, Object> prefixMap = new HashMap<String, Object>();
 
+        // properties for resource configuration
+        Map<String, Object> prefixMap = new HashMap<String, Object>();
 
-        for (String propertyKey : properties.keySet()) {
-            if (propertyKey.startsWith(prefix)) {
-                prefixMap.put(propertyKey.substring(prefix.length()), properties.get(propertyKey));
+        // split the properties of the given configuration between the OSGi config and the persisted config
+        for (String configurationPropertyKey : distributionConfigurationProperties.keySet()) {
+            if (configurationPropertyKey.startsWith(prefix)) {
+                prefixMap.put(configurationPropertyKey.substring(prefix.length()), distributionConfigurationProperties.get(configurationPropertyKey));
             } else {
-                defaultMap.put(propertyKey, properties.get(propertyKey));
+                defaultMap.put(configurationPropertyKey, distributionConfigurationProperties.get(configurationPropertyKey));
             }
         }
 
+        // create an OSGi and a persisted configuration
         Map<String, DistributionConfiguration> result = new HashMap<String, DistributionConfiguration>();
         result.put(OSGI_PREFIX, new DistributionConfiguration(config.getKind(), config.getName(), defaultMap));
         if (prefixMap.size() > 0) {