*/
@Override
public boolean hasPermission(Authentication authentication, Serializable targetId, String targetType, Object permissionString) {
// find the appropriate ModelPermissionEvaluator from the map based on
// the targetType and invoke the hasPermission function
Permission permission = Permission.fromString((String) permissionString);
if (permission == Permission.CREATE_OR_UPDATE) {
throw new IllegalArgumentException("CREATE_OR_UPDATE not supported in this context.");
}
return getEvaluator(targetType).hasPermission(authentication, targetId, targetType, permission);
}