geronimo-scm mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ammul...@apache.org
Subject svn commit: r426617 - /geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/config/ConfigurationManager.java
Date Fri, 28 Jul 2006 17:47:59 GMT
Author: ammulder
Date: Fri Jul 28 10:47:58 2006
New Revision: 426617

URL: http://svn.apache.org/viewvc?rev=426617&view=rev
Log:
Merge ConfigurationManager JavaDoc addition to trunk

Modified:
    geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/config/ConfigurationManager.java

Modified: geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/config/ConfigurationManager.java
URL: http://svn.apache.org/viewvc/geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/config/ConfigurationManager.java?rev=426617&r1=426616&r2=426617&view=diff
==============================================================================
--- geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/config/ConfigurationManager.java
(original)
+++ geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/config/ConfigurationManager.java
Fri Jul 28 10:47:58 2006
@@ -26,6 +26,29 @@
 /**
  * Encapsulates logic for dealing with configurations.
  *
+ * Configurations have a lifecycle with three states: installed, loaded, and
+ * running.  Installed means that the configuration is present in the server's
+ * repository.  Loaded means that the Configuration GBean (including the
+ * configuration's ClassLoader) is running.  Running means that all the GBeans
+ * in the Configuration are running.
+ *
+ * From a user perspective, there's not much difference between installed and
+ * loaded if the configuration has not been started (it still shows up as not
+ * running).  However, certain operations will cause a configuration to be
+ * loaded but not started.  For example, if ModuleA depends on ModuleB, then
+ * when ModuleA is distributed ModuleB will normally be loaded (to fire up the
+ * ClassLoader and validate ModuleA).  But ModuleB will not be started at that
+ * point.  It can be started manually or it will be started automatically when
+ * ModuleA is started.
+ *
+ * When a Configuration is not loaded, only its ConfigurationData is available
+ * for inspection.  It's normally not possible to inspect the GBeans in the
+ * configuration because there's no ClassLoader that could be used to load the
+ * classes needed by the GBeanDatas in the configuration.  Once the
+ * configuration has been loaded, it's ClassLoader is available so the
+ * GBeanDatas can be loaded and inspected.  But the GBean instances are not
+ * instantiated and started until the configuration is started. 
+ *
  * @version $Rev$ $Date$
  */
 public interface ConfigurationManager {



Mime
View raw message