You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2014/01/17 08:50:19 UTC
svn commit: r1559040 -
/sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/tree/ResourceProviderEntry.java
Author: cziegeler
Date: Fri Jan 17 07:50:19 2014
New Revision: 1559040
URL: http://svn.apache.org/r1559040
Log:
SLING-2698 - resource access security service for resource providers. Some javadocs
Modified:
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/tree/ResourceProviderEntry.java
Modified: sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/tree/ResourceProviderEntry.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/tree/ResourceProviderEntry.java?rev=1559040&r1=1559039&r2=1559040&view=diff
==============================================================================
--- sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/tree/ResourceProviderEntry.java (original)
+++ sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/tree/ResourceProviderEntry.java Fri Jan 17 07:50:19 2014
@@ -402,6 +402,11 @@ public class ResourceProviderEntry imple
return fallbackResource;
}
+ /**
+ * Internal method getting the provider handler containing a modifying resource provider
+ * for the given path
+ * @return The provider handler if such a provider exists or <code>null</code>
+ */
private ProviderHandler getModifyingProviderHandler(final ResourceResolverContext ctx,
final ResourceResolver resourceResolver,
final String fullPath) {
@@ -431,6 +436,12 @@ public class ResourceProviderEntry imple
return null;
}
+ /**
+ * Delete the resource
+ * @throws NullPointerException if resource is null
+ * @throws UnsupportedOperationException If deletion is not allowed/possible
+ * @throws PersistenceException If deletion fails
+ */
public void delete(final ResourceResolverContext ctx,
final ResourceResolver resourceResolver,
final Resource resource) throws PersistenceException {
@@ -443,13 +454,19 @@ public class ResourceProviderEntry imple
mrp.delete(resourceResolver, fullPath);
}
+ /**
+ * Create a resource
+ * @throws UnsupportedOperationException If creation is not allowed/possible
+ * @throws PersistenceException If creation fails
+ * @return The new resource
+ */
public Resource create(final ResourceResolverContext ctx,
final ResourceResolver resourceResolver,
final String fullPath,
final Map<String, Object> properties) throws PersistenceException {
final ProviderHandler handler = this.getModifyingProviderHandler(ctx, resourceResolver, fullPath);
if ( handler == null || !handler.canCreate(ctx, resourceResolver, fullPath) ) {
- throw new UnsupportedOperationException("Create '" + ResourceUtil.getName(fullPath) + "' at " + ResourceUtil.getParent(fullPath));
+ throw new UnsupportedOperationException("create '" + ResourceUtil.getName(fullPath) + "' at " + ResourceUtil.getParent(fullPath));
}
final ModifyingResourceProvider mrp = (ModifyingResourceProvider) handler.getResourceProvider(ctx);
return mrp.create(resourceResolver, fullPath, properties);