You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by am...@apache.org on 2006/07/28 19:45:50 UTC

svn commit: r426615 - /geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/config/ConfigurationManager.java

Author: ammulder
Date: Fri Jul 28 10:45:50 2006
New Revision: 426615

URL: http://svn.apache.org/viewvc?rev=426615&view=rev
Log:
Added some JavaDoc

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

Modified: geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/config/ConfigurationManager.java
URL: http://svn.apache.org/viewvc/geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/config/ConfigurationManager.java?rev=426615&r1=426614&r2=426615&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/config/ConfigurationManager.java (original)
+++ geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/config/ConfigurationManager.java Fri Jul 28 10:45:50 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 {