You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ro...@apache.org on 2017/11/07 09:58:11 UTC
[sling-org-apache-sling-resourceaccesssecurity] 08/13: SLING-3929 -
Methods ResourceAccessGate#hasRestrictions are not used by
ResourceAccessSecurity
This is an automated email from the ASF dual-hosted git repository.
rombert pushed a commit to annotated tag org.apache.sling.resourceaccesssecurity-1.0.0
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-resourceaccesssecurity.git
commit 61ab9b4ef3386557e4b671c104154f0069ce18c2
Author: Mike Müller <my...@apache.org>
AuthorDate: Sat Sep 13 18:57:41 2014 +0000
SLING-3929 - Methods ResourceAccessGate#has<opt>Restrictions are not used by ResourceAccessSecurity
git-svn-id: https://svn.apache.org/repos/asf/sling/trunk/bundles/resourceaccesssecurity/core@1624774 13f79535-47bb-0310-9956-ffa450edef68
---
.../impl/ResourceAccessSecurityImpl.java | 27 +++++++++++++++++-----
1 file changed, 21 insertions(+), 6 deletions(-)
diff --git a/src/main/java/org/apache/sling/resourceaccesssecurity/impl/ResourceAccessSecurityImpl.java b/src/main/java/org/apache/sling/resourceaccesssecurity/impl/ResourceAccessSecurityImpl.java
index 53adb79..4504cc1 100644
--- a/src/main/java/org/apache/sling/resourceaccesssecurity/impl/ResourceAccessSecurityImpl.java
+++ b/src/main/java/org/apache/sling/resourceaccesssecurity/impl/ResourceAccessSecurityImpl.java
@@ -119,7 +119,10 @@ public abstract class ResourceAccessSecurityImpl implements ResourceAccessSecuri
noGateMatched = false;
final ResourceAccessGateHandler resourceAccessGateHandler = accessGateHandlers.next();
- final GateResult gateResult = resourceAccessGateHandler.getResourceAccessGate().canRead(resource);
+ final GateResult gateResult = !resourceAccessGateHandler
+ .getResourceAccessGate().hasReadRestrictions(resource.getResourceResolver()) ? GateResult.GRANTED
+ : resourceAccessGateHandler.getResourceAccessGate()
+ .canRead(resource);
if (!canReadAllValues && gateResult == GateResult.GRANTED) {
if (resourceAccessGateHandler.getResourceAccessGate().canReadAllValues(resource)) {
canReadAllValues = true;
@@ -136,7 +139,7 @@ public abstract class ResourceAccessSecurityImpl implements ResourceAccessSecuri
} else if (finalGateResult != GateResult.GRANTED && gateResult != GateResult.CANT_DECIDE) {
finalGateResult = gateResult;
}
- // stop checking if the operation is final and the result not GateResult.DONTCARE
+ // stop checking if the operation is final and the result not GateResult.CANT_DECIDE
if (gateResult != GateResult.CANT_DECIDE && resourceAccessGateHandler.isFinalOperation(ResourceAccessGate.Operation.READ)) {
break;
}
@@ -182,7 +185,10 @@ public abstract class ResourceAccessSecurityImpl implements ResourceAccessSecuri
noGateMatched = false;
final ResourceAccessGateHandler resourceAccessGateHandler = handlers.next();
- final GateResult gateResult = resourceAccessGateHandler.getResourceAccessGate().canCreate(path, resolver);
+ final GateResult gateResult = !resourceAccessGateHandler
+ .getResourceAccessGate().hasCreateRestrictions(resolver) ? GateResult.GRANTED
+ : resourceAccessGateHandler.getResourceAccessGate()
+ .canCreate(path, resolver);
if (finalGateResult == null) {
finalGateResult = gateResult;
} else if (finalGateResult != GateResult.GRANTED && gateResult != GateResult.CANT_DECIDE) {
@@ -219,7 +225,10 @@ public abstract class ResourceAccessSecurityImpl implements ResourceAccessSecuri
noGateMatched = false;
final ResourceAccessGateHandler resourceAccessGateHandler = handlers.next();
- final GateResult gateResult = resourceAccessGateHandler.getResourceAccessGate().canUpdate(resource);
+ final GateResult gateResult = !resourceAccessGateHandler
+ .getResourceAccessGate().hasUpdateRestrictions(resource.getResourceResolver()) ? GateResult.GRANTED
+ : resourceAccessGateHandler.getResourceAccessGate()
+ .canUpdate(resource);
if (finalGateResult == null) {
finalGateResult = gateResult;
} else if (finalGateResult != GateResult.GRANTED && gateResult != GateResult.CANT_DECIDE) {
@@ -256,7 +265,10 @@ public abstract class ResourceAccessSecurityImpl implements ResourceAccessSecuri
noGateMatched = false;
final ResourceAccessGateHandler resourceAccessGateHandler = handlers.next();
- final GateResult gateResult = resourceAccessGateHandler.getResourceAccessGate().canDelete(resource);
+ final GateResult gateResult = !resourceAccessGateHandler
+ .getResourceAccessGate().hasDeleteRestrictions(resource.getResourceResolver()) ? GateResult.GRANTED
+ : resourceAccessGateHandler.getResourceAccessGate()
+ .canDelete(resource);
if (finalGateResult == null) {
finalGateResult = gateResult;
} else if (finalGateResult != GateResult.GRANTED && gateResult != GateResult.CANT_DECIDE) {
@@ -293,7 +305,10 @@ public abstract class ResourceAccessSecurityImpl implements ResourceAccessSecuri
noGateMatched = false;
final ResourceAccessGateHandler resourceAccessGateHandler = handlers.next();
- final GateResult gateResult = resourceAccessGateHandler.getResourceAccessGate().canExecute(resource);
+ final GateResult gateResult = !resourceAccessGateHandler
+ .getResourceAccessGate().hasExecuteRestrictions(resource.getResourceResolver()) ? GateResult.GRANTED
+ : resourceAccessGateHandler.getResourceAccessGate()
+ .canExecute(resource);
if (finalGateResult == null) {
finalGateResult = gateResult;
} else if (finalGateResult != GateResult.GRANTED && gateResult != GateResult.CANT_DECIDE) {
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.