Author: sseifert Date: Wed Mar 22 20:37:03 2017 New Revision: 1788159 URL: http://svn.apache.org/viewvc?rev=1788159&view=rev Log: SLING-6696 Persistence Strategy: Ensure configName is never null
Modified: sling/trunk/bundles/extensions/caconfig/impl/src/main/java/org/apache/sling/caconfig/management/impl/ConfigurationDataImpl.java sling/trunk/bundles/extensions/caconfig/impl/src/test/java/org/apache/sling/caconfig/management/impl/CustomConfigurationPersistenceStrategy.java sling/trunk/bundles/extensions/caconfig/impl/src/test/java/org/apache/sling/caconfig/management/impl/CustomConfigurationPersistenceStrategy2.java Modified: sling/trunk/bundles/extensions/caconfig/impl/src/main/java/org/apache/sling/caconfig/management/impl/ConfigurationDataImpl.java URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/caconfig/impl/src/main/java/org/apache/sling/caconfig/management/impl/ConfigurationDataImpl.java?rev=1788159&r1=1788158&r2=1788159&view=diff ============================================================================== --- sling/trunk/bundles/extensions/caconfig/impl/src/main/java/org/apache/sling/caconfig/management/impl/ConfigurationDataImpl.java (original) +++ sling/trunk/bundles/extensions/caconfig/impl/src/main/java/org/apache/sling/caconfig/management/impl/ConfigurationDataImpl.java Wed Mar 22 20:37:03 2017 @@ -30,6 +30,7 @@ import java.util.TreeSet; import org.apache.commons.collections.IteratorUtils; import org.apache.commons.lang3.ClassUtils; +import org.apache.commons.lang3.StringUtils; import org.apache.sling.api.resource.Resource; import org.apache.sling.api.resource.ResourceUtil; import org.apache.sling.api.resource.ValueMap; @@ -178,8 +179,9 @@ final class ConfigurationDataImpl implem String relatedConfigPath = resolvedConfigurationResource != null ? resolvedConfigurationResource.getPath() : null; String nestedConfigName; if (configResourceCollection) { + String collectionItemName = StringUtils.defaultString(getCollectionItemName(), "newItem"); nestedConfigName = configurationPersistenceStrategy.getCollectionParentConfigName(configName, relatedConfigPath) - + "/" + configurationPersistenceStrategy.getCollectionItemConfigName(getCollectionItemName(), relatedConfigPath) + + "/" + configurationPersistenceStrategy.getCollectionItemConfigName(collectionItemName, relatedConfigPath) + "/" + nestedConfigMetadata.getName(); } else { Modified: sling/trunk/bundles/extensions/caconfig/impl/src/test/java/org/apache/sling/caconfig/management/impl/CustomConfigurationPersistenceStrategy.java URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/caconfig/impl/src/test/java/org/apache/sling/caconfig/management/impl/CustomConfigurationPersistenceStrategy.java?rev=1788159&r1=1788158&r2=1788159&view=diff ============================================================================== --- sling/trunk/bundles/extensions/caconfig/impl/src/test/java/org/apache/sling/caconfig/management/impl/CustomConfigurationPersistenceStrategy.java (original) +++ sling/trunk/bundles/extensions/caconfig/impl/src/test/java/org/apache/sling/caconfig/management/impl/CustomConfigurationPersistenceStrategy.java Wed Mar 22 20:37:03 2017 @@ -18,6 +18,8 @@ */ package org.apache.sling.caconfig.management.impl; +import static org.junit.Assert.assertNotNull; + import java.util.HashSet; import java.util.Map; @@ -45,46 +47,55 @@ public class CustomConfigurationPersiste @Override public Resource getResource(Resource resource) { + assertNotNull(resource); return resource.getChild(CHILD_NODE_NAME); } @Override public Resource getCollectionParentResource(Resource resource) { + assertNotNull(resource); return resource; } @Override public Resource getCollectionItemResource(Resource resource) { + assertNotNull(resource); return resource.getChild(CHILD_NODE_NAME); } @Override public String getResourcePath(String resourcePath) { + assertNotNull(resourcePath); return resourcePath + "/" + CHILD_NODE_NAME; } @Override public String getCollectionParentResourcePath(String resourcePath) { + assertNotNull(resourcePath); return resourcePath; } @Override public String getCollectionItemResourcePath(String resourcePath) { + assertNotNull(resourcePath); return resourcePath + "/" + CHILD_NODE_NAME; } @Override public String getConfigName(String configName, String relatedConfigPath) { + assertNotNull(configName); return configName + "/" + CHILD_NODE_NAME; } @Override public String getCollectionParentConfigName(String configName, String relatedConfigPath) { + assertNotNull(configName); return configName; } @Override public String getCollectionItemConfigName(String configName, String relatedConfigPath) { + assertNotNull(configName); return configName + "/" + CHILD_NODE_NAME; } Modified: sling/trunk/bundles/extensions/caconfig/impl/src/test/java/org/apache/sling/caconfig/management/impl/CustomConfigurationPersistenceStrategy2.java URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/caconfig/impl/src/test/java/org/apache/sling/caconfig/management/impl/CustomConfigurationPersistenceStrategy2.java?rev=1788159&r1=1788158&r2=1788159&view=diff ============================================================================== --- sling/trunk/bundles/extensions/caconfig/impl/src/test/java/org/apache/sling/caconfig/management/impl/CustomConfigurationPersistenceStrategy2.java (original) +++ sling/trunk/bundles/extensions/caconfig/impl/src/test/java/org/apache/sling/caconfig/management/impl/CustomConfigurationPersistenceStrategy2.java Wed Mar 22 20:37:03 2017 @@ -18,6 +18,8 @@ */ package org.apache.sling.caconfig.management.impl; +import static org.junit.Assert.assertNotNull; + import java.util.HashSet; import java.util.Map; import java.util.regex.Pattern; @@ -51,6 +53,7 @@ public class CustomConfigurationPersiste @Override public Resource getResource(Resource resource) { + assertNotNull(resource); if (containsJcrContent(resource.getPath())) { return resource; } @@ -61,6 +64,7 @@ public class CustomConfigurationPersiste @Override public Resource getCollectionParentResource(Resource resource) { + assertNotNull(resource); if (containsJcrContent(resource.getPath())) { return resource; } @@ -71,11 +75,13 @@ public class CustomConfigurationPersiste @Override public Resource getCollectionItemResource(Resource resource) { + assertNotNull(resource); return resource; } @Override public String getResourcePath(String resourcePath) { + assertNotNull(resourcePath); if (containsJcrContent(resourcePath)) { return resourcePath; } @@ -86,6 +92,7 @@ public class CustomConfigurationPersiste @Override public String getCollectionParentResourcePath(String resourcePath) { + assertNotNull(resourcePath); if (containsJcrContent(resourcePath)) { return resourcePath; } @@ -96,11 +103,13 @@ public class CustomConfigurationPersiste @Override public String getCollectionItemResourcePath(String resourcePath) { + assertNotNull(resourcePath); return resourcePath; } @Override public String getConfigName(String configName, String relatedConfigPath) { + assertNotNull(configName); if (containsJcrContent(configName)) { return configName; } @@ -111,6 +120,7 @@ public class CustomConfigurationPersiste @Override public String getCollectionParentConfigName(String configName, String relatedConfigPath) { + assertNotNull(configName); if (containsJcrContent(configName)) { return configName; } @@ -121,6 +131,7 @@ public class CustomConfigurationPersiste @Override public String getCollectionItemConfigName(String configName, String relatedConfigPath) { + assertNotNull(configName); return configName; }