You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by st...@apache.org on 2013/05/23 11:43:36 UTC
svn commit: r1485631 -
/sling/trunk/bundles/extensions/discovery/impl/src/main/java/org/apache/sling/discovery/impl/common/resource/ResourceHelper.java
Author: stefanegli
Date: Thu May 23 09:43:36 2013
New Revision: 1485631
URL: http://svn.apache.org/r1485631
Log:
SLING-2879 : use ResourceUtil.getOrCreateResource instead of doing it yet again
Modified:
sling/trunk/bundles/extensions/discovery/impl/src/main/java/org/apache/sling/discovery/impl/common/resource/ResourceHelper.java
Modified: sling/trunk/bundles/extensions/discovery/impl/src/main/java/org/apache/sling/discovery/impl/common/resource/ResourceHelper.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/discovery/impl/src/main/java/org/apache/sling/discovery/impl/common/resource/ResourceHelper.java?rev=1485631&r1=1485630&r2=1485631&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/discovery/impl/src/main/java/org/apache/sling/discovery/impl/common/resource/ResourceHelper.java (original)
+++ sling/trunk/bundles/extensions/discovery/impl/src/main/java/org/apache/sling/discovery/impl/common/resource/ResourceHelper.java Thu May 23 09:43:36 2013
@@ -18,12 +18,9 @@
*/
package org.apache.sling.discovery.impl.common.resource;
-import java.util.HashMap;
import java.util.Iterator;
-import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
-import java.util.StringTokenizer;
import javax.jcr.Node;
import javax.jcr.RepositoryException;
@@ -32,6 +29,7 @@ import javax.jcr.Session;
import org.apache.sling.api.resource.PersistenceException;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.api.resource.ResourceResolver;
+import org.apache.sling.api.resource.ResourceUtil;
import org.apache.sling.api.resource.ValueMap;
/**
@@ -42,29 +40,16 @@ public class ResourceHelper {
public static Resource getOrCreateResource(
final ResourceResolver resourceResolver, final String path)
throws PersistenceException {
- Resource resource = resourceResolver.getResource(path);
- if (resource == null) {
- resource = createResource(resourceResolver, path);
- }
- return resource;
+ return ResourceUtil.getOrCreateResource(resourceResolver, path,
+ (String)null, null, true);
}
+ /**
+ * @deprecated use {@link #getOrCreateResource(ResourceResolver, String)} instead
+ */
public static Resource createResource(final ResourceResolver resourceResolver,
final String path) throws PersistenceException {
- final StringTokenizer st = new StringTokenizer(path, "/");
- Resource resource = resourceResolver.getResource("/");
- while (st.hasMoreTokens()) {
- String elem = st.nextToken();
- Resource child = resource.getChild(elem);
- if (child==null) {
- Map<String, Object> properties = new HashMap<String, Object>();
- properties.put("jcr:primaryType", "nt:unstructured");
- child = resourceResolver.create(resource, elem, properties);
- }
- resource = child;
- }
- resourceResolver.commit();
- return resourceResolver.getResource(path);
+ return getOrCreateResource(resourceResolver, path);
}
/** Compile a stringbuffer containing the properties of a resource - used for logging **/