@@ -0,0 +1,988 @@
+package org.springframework.security.expression;%0A%0Aimport org.springframework.security.Authentication;%0A%0A/**%0A * Strategy used in expression evaluation to determine whether a user has a permission or permissions%0A * for a given domain object.%0A *%0A *%0A * @author Luke Taylor%0A * @version $Id$%0A * @since 2.5%0A */%0Apublic interface PermissionEvaluator %7B%0A    /**%0A     *%0A     * @param authentication represents the user in question. Should not be null.%0A     * @param targetDomainObject the domain object for which permissions should be checked. May be null%0A     *          in which case implementations should return false, as the null condition can be checked explicitly%0A     *          in the expression.%0A     * @param permission a representation of the permission object as supplied by the expression system. Not null.%0A     * @return true if the permission is granted, false otherwise%0A     */%0A    boolean hasPermission(Authentication authentication, Object targetDomainObject, Object permission);%0A%7D%0A

Add hasPermission() support to SecurityExpressionRoot http://jira.springframework.org/browse/SEC-1023. PermissionEvaluator interface for use by expressions when evaluating hasPermisson() expressions.