From 8c69eb6abb4528da68cc211dc6ee0e9a7bead5f8 Mon Sep 17 00:00:00 2001 From: Ben Alex Date: Fri, 2 Apr 2004 11:56:00 +0000 Subject: [PATCH] Modified to support changes to interface. --- .../sample/contact/ContactSecurityVoter.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/samples/contacts/src/main/java/sample/contact/ContactSecurityVoter.java b/samples/contacts/src/main/java/sample/contact/ContactSecurityVoter.java index 59cc856a98..98cc029834 100644 --- a/samples/contacts/src/main/java/sample/contact/ContactSecurityVoter.java +++ b/samples/contacts/src/main/java/sample/contact/ContactSecurityVoter.java @@ -55,8 +55,23 @@ public class ContactSecurityVoter implements AccessDecisionVoter { } } - public int vote(Authentication authentication, MethodInvocation invocation, + public boolean supports(Class clazz) { + if (MethodInvocation.class.isAssignableFrom(clazz)) { + return true; + } else { + return false; + } + } + + public int vote(Authentication authentication, Object object, ConfigAttributeDefinition config) { + if ((object == null) || !this.supports(object.getClass())) { + throw new IllegalArgumentException( + "Does not support the presented Object type"); + } + + MethodInvocation invocation = (MethodInvocation) object; + int result = ACCESS_ABSTAIN; Iterator iter = config.getConfigAttributes();