2
0
Эх сурвалжийг харах

SEC-262: Refactor common method into superclass.

Ben Alex 19 жил өмнө
parent
commit
07e805e342

+ 9 - 0
core/src/main/java/org/acegisecurity/vote/AbstractAccessDecisionManager.java

@@ -19,6 +19,7 @@ import java.util.Iterator;
 import java.util.List;
 
 import org.acegisecurity.AccessDecisionManager;
+import org.acegisecurity.AccessDeniedException;
 import org.acegisecurity.AcegiMessageSource;
 import org.acegisecurity.ConfigAttribute;
 import org.springframework.beans.factory.InitializingBean;
@@ -138,4 +139,12 @@ public abstract class AbstractAccessDecisionManager
 
         return true;
     }
+    
+    protected final void checkAllowIfAllAbstainDecisions() {
+        if (!this.isAllowIfAllAbstainDecisions()) {
+            throw new AccessDeniedException(messages.getMessage(
+                    "AbstractAccessDecisionManager.accessDenied",
+                    "Access is denied"));
+        }
+    } 
 }

+ 1 - 7
core/src/main/java/org/acegisecurity/vote/AffirmativeBased.java

@@ -79,12 +79,6 @@ public class AffirmativeBased extends AbstractAccessDecisionManager {
         }
 
         // To get this far, every AccessDecisionVoter abstained
-        if (this.isAllowIfAllAbstainDecisions()) {
-            return;
-        } else {
-            throw new AccessDeniedException(messages.getMessage(
-                    "AbstractAccessDecisionManager.accessDenied",
-                    "Access is denied"));
-        }
+        checkAllowIfAllAbstainDecisions();
     }
 }

+ 1 - 7
core/src/main/java/org/acegisecurity/vote/ConsensusBased.java

@@ -108,13 +108,7 @@ public class ConsensusBased extends AbstractAccessDecisionManager {
         }
 
         // To get this far, every AccessDecisionVoter abstained
-        if (this.isAllowIfAllAbstainDecisions()) {
-            return;
-        } else {
-            throw new AccessDeniedException(messages.getMessage(
-                    "AbstractAccessDecisionManager.accessDenied",
-                    "Access is denied"));
-        }
+        checkAllowIfAllAbstainDecisions();
     }
 
     public boolean isAllowIfEqualGrantedDeniedDecisions() {

+ 1 - 7
core/src/main/java/org/acegisecurity/vote/UnanimousBased.java

@@ -106,12 +106,6 @@ public class UnanimousBased extends AbstractAccessDecisionManager {
         }
 
         // To get this far, every AccessDecisionVoter abstained
-        if (this.isAllowIfAllAbstainDecisions()) {
-            return;
-        } else {
-            throw new AccessDeniedException(messages.getMessage(
-                    "AbstractAccessDecisionManager.accessDenied",
-                    "Access is denied"));
-        }
+        checkAllowIfAllAbstainDecisions();
     }
 }