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/07/20 13:56:59 UTC
svn commit: r1753517 - in
/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution:
component/impl/ResourceConfigurationManager.java
resources/impl/common/AbstractModifyingResourceProvider.java
Author: tommaso
Date: Wed Jul 20 13:56:59 2016
New Revision: 1753517
URL: http://svn.apache.org/viewvc?rev=1753517&view=rev
Log:
This closes #155
commit 419d686f1ab0828171e0a9eb245a026e5b443875
Author: tmaret <tm...@adobe.com>
Date: 2016-07-20T07:11:58Z
SLING-5875 - Distribution resource configuration manager does update resources
Use the content resource node if it exists already
Fix the infinite recursion of commit calls
Modified:
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/ResourceConfigurationManager.java
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/resources/impl/common/AbstractModifyingResourceProvider.java
Modified: sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/ResourceConfigurationManager.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/ResourceConfigurationManager.java?rev=1753517&r1=1753516&r2=1753517&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/ResourceConfigurationManager.java (original)
+++ sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/ResourceConfigurationManager.java Wed Jul 20 13:56:59 2016
@@ -33,13 +33,14 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
+/**
+ * Manager implementation which represents the distribution configurations as resources.
+ */
public class ResourceConfigurationManager implements DistributionConfigurationManager {
- private final Logger log = LoggerFactory.getLogger(getClass());
-
-
final String CONTENT_NODE = "jcr:content";
final String configRootPath;
+ private final Logger log = LoggerFactory.getLogger(getClass());
private final String[] configProperties;
private final Map<String, String> configDefaults;
@@ -100,7 +101,9 @@ public class ResourceConfigurationManage
}
Resource configResource = configRoot.getChild(config.getName());
- Resource contentResource = null;
+ Resource contentResource = (configResource != null)
+ ? configResource.getChild(CONTENT_NODE)
+ : null ;
try {
if (configResource == null) {
@@ -121,7 +124,6 @@ public class ResourceConfigurationManage
ModifiableValueMap valueMap = contentResource.adaptTo(ModifiableValueMap.class);
valueMap.putAll(properties);
- resolver.commit();
} catch (PersistenceException e) {
log.error("cannot save config {}", config.getName(), e);
}
Modified: sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/resources/impl/common/AbstractModifyingResourceProvider.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/resources/impl/common/AbstractModifyingResourceProvider.java?rev=1753517&r1=1753516&r2=1753517&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/resources/impl/common/AbstractModifyingResourceProvider.java (original)
+++ sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/resources/impl/common/AbstractModifyingResourceProvider.java Wed Jul 20 13:56:59 2016
@@ -96,6 +96,7 @@ public abstract class AbstractModifyingR
saveInternalResources(resolver, changedResources, deletedResources);
reset();
+ resolver.commit();
}
public boolean hasChanges(ResourceResolver resolver) {