From 298491305124a13991f3f3ee2e1f933e15b91885 Mon Sep 17 00:00:00 2001 From: Ben Alex Date: Thu, 16 Nov 2006 02:15:43 +0000 Subject: [PATCH] SEC-393: More elegantly deal with setProviders(List) type safety enforcement. --- .../acegisecurity/providers/ProviderManager.java | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/core/src/main/java/org/acegisecurity/providers/ProviderManager.java b/core/src/main/java/org/acegisecurity/providers/ProviderManager.java index 2f00e730d5..5c29c57b2c 100644 --- a/core/src/main/java/org/acegisecurity/providers/ProviderManager.java +++ b/core/src/main/java/org/acegisecurity/providers/ProviderManager.java @@ -273,17 +273,8 @@ public class ProviderManager extends AbstractAuthenticationManager implements In Iterator iter = newList.iterator(); while (iter.hasNext()) { - Object currentObject = null; - - try { - currentObject = iter.next(); - - //TODO bad idea, should use assignable from or instance of - AuthenticationProvider attemptToCast = (AuthenticationProvider) currentObject; - } catch (ClassCastException cce) { - throw new IllegalArgumentException("AuthenticationProvider " + currentObject.getClass().getName() - + " must implement AuthenticationProvider"); - } + Object currentObject = iter.next(); + Assert.isInstanceOf(AuthenticationProvider.class, currentObject, "Can only provide AuthenticationProvider instances"); } this.providers = newList;