Author: sseifert
Date: Tue May 2 14:48:33 2017
New Revision: 1793515
URL: http://svn.apache.org/viewvc?rev=1793515&view=rev
Log:
SLING-6821 Context-Aware Config: Management API - Default value for
sling:configCollectionInherit for implicit inheritance
Modified:
sling/trunk/bundles/extensions/caconfig/impl/src/main/java/org/apache/sling/caconfig/management/impl/ConfigurationCollectionDataImpl.java
sling/trunk/bundles/extensions/caconfig/impl/src/main/java/org/apache/sling/caconfig/management/impl/ConfigurationManagerImpl.java
sling/trunk/bundles/extensions/caconfig/impl/src/test/java/org/apache/sling/caconfig/management/impl/ConfigurationCollectionDataImplTest.java
Modified:
sling/trunk/bundles/extensions/caconfig/impl/src/main/java/org/apache/sling/caconfig/management/impl/ConfigurationCollectionDataImpl.java
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/caconfig/impl/src/main/java/org/apache/sling/caconfig/management/impl/ConfigurationCollectionDataImpl.java?rev=1793515&r1=1793514&r2=1793515&view=diff
==============================================================================
---
sling/trunk/bundles/extensions/caconfig/impl/src/main/java/org/apache/sling/caconfig/management/impl/ConfigurationCollectionDataImpl.java
(original)
+++
sling/trunk/bundles/extensions/caconfig/impl/src/main/java/org/apache/sling/caconfig/management/impl/ConfigurationCollectionDataImpl.java
Tue May 2 14:48:33 2017
@@ -25,6 +25,7 @@ import java.util.Map;
import org.apache.sling.caconfig.management.ConfigurationCollectionData;
import org.apache.sling.caconfig.management.ConfigurationData;
import org.apache.sling.caconfig.management.ConfigurationManagementSettings;
+import
org.apache.sling.caconfig.resource.impl.def.ConfigurationResourceNameConstants;
final class ConfigurationCollectionDataImpl implements
ConfigurationCollectionData {
@@ -68,6 +69,9 @@ final class ConfigurationCollectionDataI
filteredPropertiesCache.putAll(properties);
PropertiesFilterUtil.removeIgnoredProperties(filteredPropertiesCache,
configurationManagementSettings);
}
+ else {
+
filteredPropertiesCache.put(ConfigurationResourceNameConstants.PROPERTY_CONFIG_COLLECTION_INHERIT,
true);
+ }
}
return filteredPropertiesCache;
}
Modified:
sling/trunk/bundles/extensions/caconfig/impl/src/main/java/org/apache/sling/caconfig/management/impl/ConfigurationManagerImpl.java
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/caconfig/impl/src/main/java/org/apache/sling/caconfig/management/impl/ConfigurationManagerImpl.java?rev=1793515&r1=1793514&r2=1793515&view=diff
==============================================================================
---
sling/trunk/bundles/extensions/caconfig/impl/src/main/java/org/apache/sling/caconfig/management/impl/ConfigurationManagerImpl.java
(original)
+++
sling/trunk/bundles/extensions/caconfig/impl/src/main/java/org/apache/sling/caconfig/management/impl/ConfigurationManagerImpl.java
Tue May 2 14:48:33 2017
@@ -192,6 +192,15 @@ public class ConfigurationManagerImpl im
}
}
}
+ // fallback for writeback path detection when no configuration
resources does exist yet
+ if (writebackConfigResourceCollectionParentPath == null) {
+ for (String configBucketName :
configurationResourceResolverConfig.configBucketNames()) {
+ writebackConfigResourceCollectionParentPath =
configurationResourceResolvingStrategy.getResourceCollectionParentPath(resource,
configBucketName, configName);
+ if (writebackConfigResourceCollectionParentPath != null) {
+ break;
+ }
+ }
+ }
// get properties of parent resource of the current level
Map<String,Object> resourceCollectionParentProps = null;
Modified:
sling/trunk/bundles/extensions/caconfig/impl/src/test/java/org/apache/sling/caconfig/management/impl/ConfigurationCollectionDataImplTest.java
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/caconfig/impl/src/test/java/org/apache/sling/caconfig/management/impl/ConfigurationCollectionDataImplTest.java?rev=1793515&r1=1793514&r2=1793515&view=diff
==============================================================================
---
sling/trunk/bundles/extensions/caconfig/impl/src/test/java/org/apache/sling/caconfig/management/impl/ConfigurationCollectionDataImplTest.java
(original)
+++
sling/trunk/bundles/extensions/caconfig/impl/src/test/java/org/apache/sling/caconfig/management/impl/ConfigurationCollectionDataImplTest.java
Tue May 2 14:48:33 2017
@@ -28,6 +28,7 @@ import java.util.Map;
import org.apache.sling.caconfig.management.ConfigurationCollectionData;
import org.apache.sling.caconfig.management.ConfigurationData;
import org.apache.sling.caconfig.management.ConfigurationManagementSettings;
+import
org.apache.sling.caconfig.resource.impl.def.ConfigurationResourceNameConstants;
import org.apache.sling.testing.mock.sling.junit.SlingContext;
import org.junit.Before;
import org.junit.Rule;
@@ -72,7 +73,7 @@ public class ConfigurationCollectionData
assertEquals("name1", underTest.getConfigName());
assertTrue(underTest.getItems().isEmpty());
assertEquals("/path1", underTest.getResourcePath());
- assertTrue(underTest.getProperties().isEmpty());
+
assertEquals(ImmutableMap.<String,Object>of(ConfigurationResourceNameConstants.PROPERTY_CONFIG_COLLECTION_INHERIT,
true), underTest.getProperties());
}
}