Polish GlobalMethodSecurityConfiguration

Initialize ExpressionBasedPreInvocationAdvice for
PreInvocationAuthorizationAdviceVoter only when needed.
This commit is contained in:
John Lin 2019-08-16 10:25:47 -07:00 committed by Josh Cummings
parent aa026f8526
commit 9876b66f99
No known key found for this signature in database
GPG Key ID: 49EF60DD7FF83443

View File

@ -242,9 +242,10 @@ public class GlobalMethodSecurityConfiguration
*/
protected AccessDecisionManager accessDecisionManager() {
List<AccessDecisionVoter<?>> decisionVoters = new ArrayList<>();
ExpressionBasedPreInvocationAdvice expressionAdvice = new ExpressionBasedPreInvocationAdvice();
expressionAdvice.setExpressionHandler(getExpressionHandler());
if (prePostEnabled()) {
ExpressionBasedPreInvocationAdvice expressionAdvice =
new ExpressionBasedPreInvocationAdvice();
expressionAdvice.setExpressionHandler(getExpressionHandler());
decisionVoters
.add(new PreInvocationAuthorizationAdviceVoter(expressionAdvice));
}