Is everyone happy with this change? I have..
1) dropped the case of most usages of Component. 2) Refered to Serviceable where Composable was used solely. It looks like Reserviceable is missing. There is a Recomposable. Thoughts? Regards, - Paul >hammant 2002/09/07 01:49:26 > > Modified: src/xdocs/framework reference-the-lifecycle.xml > Log: > Words on Serviceable > > Revision Changes Path > 1.4 +25 -25 jakarta-avalon/src/xdocs/framework/reference-the-lifecycle.xml > > Index: reference-the-lifecycle.xml > =================================================================== > RCS file: /home/cvs/jakarta-avalon/src/xdocs/framework/reference-the-lifecycle.xml,v > retrieving revision 1.3 > retrieving revision 1.4 > diff -u -r1.3 -r1.4 > --- reference-the-lifecycle.xml 5 Aug 2002 13:23:59 -0000 1.3 > +++ reference-the-lifecycle.xml 7 Sep 2002 08:49:26 -0000 1.4 > @@ -14,9 +14,9 @@ > <body> > > <s1 title="Introduction"> > > <p> > > - A Component lives within something called a container. The contract >between a > > - container and a contained Component is simple: the container is required >to > > - take a Component through what is called its <strong>lifecycle</strong>. > > + A component lives within something called a container. The contract >between a > > + container and a contained component is simple: the container is required >to > > + take a component through what is called its <strong>lifecycle</strong>. > > </p> > > <p> > > The Avalon project provides an > > @@ -37,9 +37,9 @@ > </s1> > > <s1 title="The Lifecycle"> > > <p> > > - The lifecycle of a Component specifies the methods that can be called on >it, > > + The lifecycle of a component specifies the methods that can be called on >it, > > and the order in which this may happen. Some methods can be called only >once > > - in a specific <code>Phase</code> of a Component its lifecycle, others may > > + in a specific <code>Phase</code> of a component its lifecycle, others may > > be called multiple times. These methods are called the lifecycle methods. > > </p> > > <p> > > @@ -51,14 +51,14 @@ > </s1> > > <s1 title="The Lifecycle interfaces"> > > <p> > > - A Component exposes its lifecycle methods by implementing the lifecycle > > + A component exposes its lifecycle methods by implementing the lifecycle > > interfaces. Each of these defines one or more methods that represent a > > - specific Phase in a Component's lifecycle. The defined interfaces are: > > + specific phase in a component's lifecycle. The defined interfaces are: > > </p> > > <ol> > > <li>LogEnabled</li> > > <li>Contextualizable</li> > > - <li>Composable</li> > > + <li>Serviceable (replacement for Composable)</li> > > <li>Configurable</li> > > <li>Parameterizable</li> > > <li>Initializable</li> > > @@ -74,37 +74,37 @@ > <note> > > <strong>Note:</strong>java.lang.Runnable has also been in use as a >lifecycle > > interface. This is not recommended and is not supported by Avalon. Instead, > > - the run() method is the responsibility of the Component itself. If you wish > > + the run() method is the responsibility of the component itself. If you wish > > to use it, call it from within start() or another method. > > </note> > > </s1> > > <s1 title="Phase order"> > > <p> > > The order in which the various lifecycle methods are called is very >specific. > > - While none are required (it is possible to have a Component implementing > > + While none are required (it is possible to have a component implementing > > none of the lifecycle methods, although the use of that would be limited), > > some can only be used when others are as well. This is best explained using > > a few examples. > > </p> > > <s2 title="simple examples"> > > - <p>The lifecycle of a <code>Component</code> implementing only >Configurable for > > + <p>The lifecycle of a component implementing only Configurable for > > example will be:</p> > > <ol> > > <li>constructor</li> > > <li>configure</li> > > <li>finalize</li> > > </ol> > > - <p>The lifecycle of a <code>Component</code> implementing only Composable >will be:</p> > > + <p>The lifecycle of a component implementing only Serviceable will be:</p> > > <ol> > > <li>constructor</li> > > - <li>compose</li> > > + <li>service</li> > > <li>finalize</li> > > </ol> > > </s2> > > <s2 title="complete"> > > <p> > > - If a <code>Component</code> implements more than one interface the order >of > > - the events (compose, configure etc.) follow a specific order. A Component > > + If a component implements more than one interface the order of > > + the events (service, configure etc.) follow a specific order. A component > > implementing all above interfaces (including Runnable) will follow these > > specific paths. > > </p> > > @@ -114,7 +114,7 @@ > <ol> > > <li>constructor <strong>as a consequence of instantiation</strong></li> > > <li>contextualize</li> > > - <li>compose</li> > > + <li>service or compose</li> > > <li>configure</li> > > <li>parameterize</li> > > <li>initialize</li> > > @@ -143,11 +143,11 @@ > <s2 title="Phases executed once"> > > <p> > > These lifecycle methods are only called once in the entire life of a > > - Component: > > + component: > > </p> > > <ul> > > <li>contextualize</li> > > - <li>compose</li> > > + <li>service</li> > > <li>configure</li> > > <li>parameterize</li> > > <li>initialize</li> > > @@ -169,9 +169,9 @@ > The methods suspend() and resume() are not guaranteed to be called at >all, > > even when implemented. They can be called more than once, but only after > > one another and between start() and stop(). The reason they exist is so > > - the container can notify the Component it needs to come to temporary >stop > > + the container can notify the component it needs to come to temporary >stop > > any operations. The container may need to perform some synchronized >operation > > - on one of the Components used by this Component, or it may wish to call >any > > + on one of the components used by this component, or it may wish to call >any > > of the following methods, which can also be called zero or more times, >and > > only between a suspend() and a resume(). > > </p> > > @@ -186,12 +186,12 @@ > <s2 title="The Command Pattern"> > > <p> > > The most advanced, most complicated and most flexible option is to use > > - the Command pattern by having your Component implement the Commandable > > + the Command pattern by having your component implement the Commandable > > interface. This is experimental; you'll find the Commandable and its > > related classes in the excalibur package. > > </p> > > <p> > > - It is recommended that if your Component implements Commandable, it >should > > + It is recommended that if your component implements Commandable, it >should > > not implement Executable or Interruptable. When you do choose to combine >the > > two, the order in which the different steps must happen is very specific: > > <code> > > @@ -218,8 +218,8 @@ > </p> > > <p> > > The advantage of using Commands is that you can have multiple processes >running > > - outside your Component that can manipulate it. These will run until >completion > > - even if you Component has already been disposed of. > > + outside your component that can manipulate it. These will run until >completion > > + even if you component has already been disposed of. > > </p> > > <p> > > You should note that the Command interface we use extends Runnable, >which means > > > > > >-- >To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> >For additional commands, e-mail: <mailto:[EMAIL PROTECTED]> > > > > > -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
