Author: cziegeler
Date: Mon Feb 24 19:45:16 2014
New Revision: 1571409

URL: http://svn.apache.org/r1571409
Log:
SLING-3415 : The ResourceAccessGateHandler does not parse correctly multiple 
operations

Modified:
    
sling/trunk/bundles/resourceaccesssecurity/src/main/java/org/apache/sling/resourceaccesssecurity/impl/ResourceAccessGateHandler.java

Modified: 
sling/trunk/bundles/resourceaccesssecurity/src/main/java/org/apache/sling/resourceaccesssecurity/impl/ResourceAccessGateHandler.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/bundles/resourceaccesssecurity/src/main/java/org/apache/sling/resourceaccesssecurity/impl/ResourceAccessGateHandler.java?rev=1571409&r1=1571408&r2=1571409&view=diff
==============================================================================
--- 
sling/trunk/bundles/resourceaccesssecurity/src/main/java/org/apache/sling/resourceaccesssecurity/impl/ResourceAccessGateHandler.java
 (original)
+++ 
sling/trunk/bundles/resourceaccesssecurity/src/main/java/org/apache/sling/resourceaccesssecurity/impl/ResourceAccessGateHandler.java
 Mon Feb 24 19:45:16 2014
@@ -46,7 +46,7 @@ public class ResourceAccessGateHandler i
         resourceAccessGate = (ResourceAccessGate) 
resourceAccessGateRef.getBundle().
                 getBundleContext().getService(resourceAccessGateRef);
         // extract the service property "path"
-        String path = (String) 
resourceAccessGateRef.getProperty(ResourceAccessGate.PATH);
+        final String path = (String) 
resourceAccessGateRef.getProperty(ResourceAccessGate.PATH);
         if ( path != null ) {
             pathPattern = Pattern.compile(path);
         } else {
@@ -54,27 +54,25 @@ public class ResourceAccessGateHandler i
         }
 
         // extract the service property "operations"
-        String ops = (String) 
resourceAccessGateRef.getProperty(ResourceAccessGate.OPERATIONS);
-        if ( ops != null ) {
-            String[] opsArray = PropertiesUtil.toStringArray(ops);
-            for (String opAsString : opsArray) {
-                ResourceAccessGate.Operation operation = 
ResourceAccessGate.Operation.fromString(opAsString);
+        final String[] opsArray = 
PropertiesUtil.toStringArray(resourceAccessGateRef.getProperty(ResourceAccessGate.OPERATIONS));
+        if ( opsArray != null ) {
+            for (final String opAsString : opsArray) {
+                final ResourceAccessGate.Operation operation = 
ResourceAccessGate.Operation.fromString(opAsString);
                 if ( operation != null ) {
                     operations.add(operation);
                 }
             }
         } else {
-           for (ResourceAccessGate.Operation op : 
ResourceAccessGate.Operation.values() ) {
+           for (final ResourceAccessGate.Operation op : 
ResourceAccessGate.Operation.values() ) {
                operations.add(op);
            }
         }
 
         // extract the service property "finaloperations"
-        String finOps = (String) 
resourceAccessGateRef.getProperty(ResourceAccessGate.FINALOPERATIONS);
-        if ( finOps != null ) {
-            String[] finOpsArray = PropertiesUtil.toStringArray(finOps);
-            for (String opAsString : finOpsArray) {
-                ResourceAccessGate.Operation operation = 
ResourceAccessGate.Operation.fromString(opAsString);
+        final String[] finOpsArray = 
PropertiesUtil.toStringArray(resourceAccessGateRef.getProperty(ResourceAccessGate.FINALOPERATIONS));
+        if ( finOpsArray != null ) {
+            for (final String opAsString : finOpsArray) {
+                final ResourceAccessGate.Operation operation = 
ResourceAccessGate.Operation.fromString(opAsString);
                 if ( operation != null ) {
                     finalOperations.add(operation);
                 }


Reply via email to