[jboss-cvs] JBossAS SVN: r87654 - projects/bootstrap/trunk/impl-base/src/main/java/org/jboss/bootstrap/impl/base/config.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Apr 22 00:49:52 EDT 2009


Author: ALRubinger
Date: 2009-04-22 00:49:52 -0400 (Wed, 22 Apr 2009)
New Revision: 87654

Modified:
   projects/bootstrap/trunk/impl-base/src/main/java/org/jboss/bootstrap/impl/base/config/AbstractBasicConfigurationInitializer.java
Log:
[JBBOOT-47] Do not recurse into subclasses impls during init()

Modified: projects/bootstrap/trunk/impl-base/src/main/java/org/jboss/bootstrap/impl/base/config/AbstractBasicConfigurationInitializer.java
===================================================================
--- projects/bootstrap/trunk/impl-base/src/main/java/org/jboss/bootstrap/impl/base/config/AbstractBasicConfigurationInitializer.java	2009-04-22 03:48:02 UTC (rev 87653)
+++ projects/bootstrap/trunk/impl-base/src/main/java/org/jboss/bootstrap/impl/base/config/AbstractBasicConfigurationInitializer.java	2009-04-22 04:49:52 UTC (rev 87654)
@@ -31,7 +31,6 @@
 import org.jboss.bootstrap.spi.config.ServerConfig;
 import org.jboss.logging.Logger;
 
-
 /**
  * AbstractBasicConfigurationInitializer
  * 
@@ -62,6 +61,23 @@
    public void initialize(T config) throws InvalidConfigurationException, IllegalArgumentException,
          IllegalStateException
    {
+      // Internally initialize to prevent recursion leaking into subclass implementations
+      this._initialize(config);
+   }
+
+   /**
+    * Internal implementation of initialize so as to not invoke subclass
+    * implementations upon recursion
+    * 
+    * @param config
+    * @throws InvalidConfigurationException
+    * @throws IllegalArgumentException
+    * @throws IllegalStateException
+    * @see org.jboss.bootstrap.spi.config.ConfigurationInitializer#initialize(org.jboss.bootstrap.spi.config.ServerConfig)
+    */
+   private void _initialize(T config) throws InvalidConfigurationException, IllegalArgumentException,
+         IllegalStateException
+   {
       // Log
       if (log.isTraceEnabled())
       {
@@ -162,8 +178,8 @@
       // default other properties if necessary
       if (name == null || name.length() == 0)
       {
-         config.bootstrapName(ConfigurationInitializer.DEFAULT_NAME);
-         this.initialize(config);
+         config.bootstrapName(ConfigurationInitializer.DEFAULT_VALUE_BOOTSTRAP_NAME);
+         this._initialize(config);
       }
 
       // If there's no home, default it, then run this config again
@@ -171,9 +187,8 @@
       {
          final URL newHome = SecurityActions.getCodeSourceLocation(this.getClass());
          config.bootstrapHome(newHome);
-         this.initialize(config);
+         this._initialize(config);
       }
-
    }
 
    //-------------------------------------------------------------------------------------||




More information about the jboss-cvs-commits mailing list