[jboss-cvs] Picketbox SVN: r446 - trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/auth/message/config.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Sep 4 09:48:24 EDT 2013


Author: sguilhen at redhat.com
Date: 2013-09-04 09:48:24 -0400 (Wed, 04 Sep 2013)
New Revision: 446

Modified:
   trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/auth/message/config/JBossAuthConfigFactory.java
Log:
Allow null value for AuthConfigProvider in the register methods to comply with the spec

Modified: trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/auth/message/config/JBossAuthConfigFactory.java
===================================================================
--- trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/auth/message/config/JBossAuthConfigFactory.java	2013-09-04 13:47:42 UTC (rev 445)
+++ trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/auth/message/config/JBossAuthConfigFactory.java	2013-09-04 13:48:24 UTC (rev 446)
@@ -155,7 +155,7 @@
             key = allContext;
          if (i == 3)
             key = general;
-         acp = (AuthConfigProvider) keyProviderMap.get(key);
+         acp = keyProviderMap.get(key);
       }
       
       if (acp != null && listener != null)
@@ -241,23 +241,22 @@
    public String registerConfigProvider(String className, Map properties, String layer, String appContext,
          String description)
    {
-      if (className == null || className.length() == 0)
-         throw PicketBoxMessages.MESSAGES.invalidNullArgument("className");
-
       // Instantiate the provider
       AuthConfigProvider acp = null;
-      try
-      {
-         // An AuthConfigProvider must have a two-argument constructor (Map properties, AuthConfigFactory factory). 
-         Class<?> provClass = SecurityActions.getContextClassLoader().loadClass(className);
-         Constructor<?> ctr = provClass.getConstructor(new Class[] {Map.class, AuthConfigFactory.class});
-         acp = (AuthConfigProvider) ctr.newInstance(new Object[] {properties, null});
-      }
-      catch (Exception e)
-      {
-         throw PicketBoxMessages.MESSAGES.failedToRegisterAuthConfigProvider(className, e);
-      }
 
+      if (className != null) {
+         try
+         {
+            // An AuthConfigProvider must have a two-argument constructor (Map properties, AuthConfigFactory factory).
+            Class<?> provClass = SecurityActions.getContextClassLoader().loadClass(className);
+            Constructor<?> ctr = provClass.getConstructor(new Class[] {Map.class, AuthConfigFactory.class});
+            acp = (AuthConfigProvider) ctr.newInstance(new Object[] {properties, null});
+         }
+         catch (Exception e)
+         {
+            throw PicketBoxMessages.MESSAGES.failedToRegisterAuthConfigProvider(className, e);
+         }
+      }
       return this.registerConfigProvider(acp, layer, appContext, description);
    }
 
@@ -267,9 +266,6 @@
     */
    public String registerConfigProvider(AuthConfigProvider provider, String layer, String appContext, String description)
    {
-      if (provider == null)
-         throw PicketBoxMessages.MESSAGES.invalidNullArgument("provider");
-
       StringBuilder key = new StringBuilder();
       key.append(layer == null ? "null" : layer);
       key.append("^");



More information about the jboss-cvs-commits mailing list