Author: angela
Date: Mon Aug 19 16:15:49 2019
New Revision: 1865474

URL: http://svn.apache.org/viewvc?rev=1865474&view=rev
Log:
OAK-8557 : CugPolicyImpl.isValidPrincipal contains unreachable default option

Modified:
    
jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImpl.java
    
jackrabbit/oak/trunk/oak-authorization-cug/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImplTest.java

Modified: 
jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImpl.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImpl.java?rev=1865474&r1=1865473&r2=1865474&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImpl.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImpl.java
 Mon Aug 19 16:15:49 2019
@@ -138,11 +138,6 @@ class CugPolicyImpl implements CugPolicy
 
         boolean isValid = true;
         switch (importBehavior) {
-            case ImportBehavior.ABORT:
-                if (!principalManager.hasPrincipal(name)) {
-                    throw new AccessControlException("Unknown principal " + 
name);
-                }
-                break;
             case ImportBehavior.IGNORE:
                 if (!principalManager.hasPrincipal(name)) {
                     log.debug("Ignoring unknown principal {}", name);
@@ -152,8 +147,10 @@ class CugPolicyImpl implements CugPolicy
             case ImportBehavior.BESTEFFORT:
                 log.debug("Best effort: don't verify existence of 
principals.");
                 break;
-            default:
-                throw new IllegalStateException("Unsupported import behavior " 
+ importBehavior);
+            default: //ImportBehavior.ABORT
+                if (!principalManager.hasPrincipal(name)) {
+                    throw new AccessControlException("Unknown principal " + 
name);
+                }
         }
         return isValid;
     }

Modified: 
jackrabbit/oak/trunk/oak-authorization-cug/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImplTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-authorization-cug/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImplTest.java?rev=1865474&r1=1865473&r2=1865474&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-authorization-cug/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImplTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-authorization-cug/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImplTest.java
 Mon Aug 19 16:15:49 2019
@@ -27,7 +27,6 @@ import org.apache.jackrabbit.oak.namepat
 import org.apache.jackrabbit.oak.namepath.impl.NamePathMapperImpl;
 import org.apache.jackrabbit.oak.spi.security.authorization.cug.CugExclude;
 import org.apache.jackrabbit.oak.spi.security.authorization.cug.CugPolicy;
-import org.apache.jackrabbit.oak.spi.security.principal.AdminPrincipal;
 import org.apache.jackrabbit.oak.spi.security.principal.EveryonePrincipal;
 import org.apache.jackrabbit.oak.spi.security.principal.PrincipalImpl;
 import org.apache.jackrabbit.oak.spi.security.principal.SystemUserPrincipal;
@@ -41,7 +40,10 @@ import java.util.Collections;
 import java.util.Iterator;
 import java.util.Set;
 
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotSame;
+import static org.junit.Assert.assertTrue;
 
 public class CugPolicyImplTest extends AbstractSecurityTest {
 
@@ -76,13 +78,9 @@ public class CugPolicyImplTest extends A
     }
 
     private Principal getExcludedPrincipal() {
-        return new SystemUserPrincipal() {
-            @Override
-            public String getName() {
-                return "excluded";
-            }
-        };
+        return (SystemUserPrincipal) () -> "excluded";
     }
+    
     @Test
     public void testPrincipalSetPolicy() {
         assertTrue(createCugPolicy(principals) instanceof PrincipalSetPolicy);


Reply via email to