You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by mc...@apache.org on 2004/04/14 13:47:33 UTC

cvs commit: avalon/meta/site/xdocs/tools/tags attribute.xml configuration.xml context.xml dependency.xml entry.xml extension.xml index.xml logger.xml navigation.xml permission.xml service.xml stage.xml type.xml version.xml

mcconnell    2004/04/14 04:47:33

  Modified:    meta/site/xdocs index.xml navigation.xml
               meta/site/xdocs/meta/info/attributes attribute.xml index.xml
                        navigation.xml
               meta/site/xdocs/meta/info navigation.xml
               meta/site/xdocs/meta/info/type/context entry.xml index.xml
                        navigation.xml
               meta/site/xdocs/meta/info/type/dependencies dependency.xml
                        index.xml navigation.xml
               meta/site/xdocs/meta/info/type/extensions extension.xml
                        index.xml navigation.xml
               meta/site/xdocs/meta/info/type index.xml navigation.xml
               meta/site/xdocs/meta/info/type/loggers index.xml logger.xml
                        navigation.xml
               meta/site/xdocs/meta/info/type/security index.xml
                        navigation.xml permission.xml
               meta/site/xdocs/meta/info/type/services index.xml
                        navigation.xml service.xml
               meta/site/xdocs/meta/info/type/stages index.xml
                        navigation.xml stage.xml
               meta/site/xdocs/meta navigation.xml
               meta/site/xdocs/tools index.xml navigation.xml
               meta/site/xdocs/tools/maven navigation.xml
               meta/site/xdocs/tutorial navigation.xml
  Added:       meta/site/xdocs/meta/info/type/info collection.xml index.xml
                        lifestyle.xml name.xml navigation.xml version.xml
               meta/site/xdocs/tags attribute.xml configuration.xml
                        context.xml dependency.xml entry.xml extension.xml
                        index.xml logger.xml navigation.xml permission.xml
                        service.xml stage.xml type.xml version.xml
  Removed:     meta/site/xdocs/meta/info/type info.xml
               meta/site/xdocs/tools/tags attribute.xml configuration.xml
                        context.xml dependency.xml entry.xml extension.xml
                        index.xml logger.xml navigation.xml permission.xml
                        service.xml stage.xml type.xml version.xml
  Log:
  Doc improvements based on feedback from Justin Permar.
  
  Revision  Changes    Path
  1.2       +43 -33    avalon/meta/site/xdocs/index.xml
  
  Index: index.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/index.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- index.xml	24 Sep 2003 08:15:55 -0000	1.1
  +++ index.xml	14 Apr 2004 11:47:31 -0000	1.2
  @@ -9,40 +9,50 @@
   
       <body>
   
  -        <section name="Avalon Meta Model">
  +      <section name="Avalon Meta Model">
   
  -            <subsection name="Meta Model Overview">
  -                <p>
  -                    The Avalon Meta Model defines the functional structure
  -                    of component types and services. A Type definition contains 
  -                    information about deployment and runtime dependencies together 
  -                    with information about the services that a
  -                    component type can provide.
  -                </p>
  -
  -            </subsection>
  -
  -            <subsection name="Meta Info Generation">
  -                <p>
  -                    Avalon provides a set of tools that automate the process 
  -                    of generating meta-info descriptors.  These tools provide
  -                    support for the generation of serializable and XML based
  -                    descriptors that are collocated with class files. Tool 
  -                    support is available for Ant and Maven.
  -                </p>
  -            </subsection>
  -
  -            <subsection name="Meta Model API/SPI">
  -                <p>
  -                    Type and service meta models are established as 
  -                    immutable objects that complement the classic information
  -                    available about a class.  Using the Type and Service 
  -                    descriptor classes, developers can be assured of greater
  -                    portability and interoperability of container-side applications.
  -                </p>
  -            </subsection>
  -
  -        </section>
  +        <table>
  +          <tr><th>Subject</th><th>Description</th></tr>
  +          <tr>
  +            <td><a href="tags/index.html">Javadoc Tags</a></td>
  +            <td>
  +              Reference specification of the Javadoc Tags used to 
  +              support automation of component and service meta info
  +              generation.
  +            </td>
  +          </tr>
  +          <tr>
  +            <td><a href="meta/info/index.html">Type Model</a></td>
  +            <td>
  +              The Avalon Meta Model defines the functional structure
  +              of component types and services. A Type definition contains 
  +              information about deployment and runtime dependencies together 
  +              with information about the services that a
  +              component type can provide.
  +            </td>
  +          </tr>
  +          <tr>
  +            <td><a href="tools/index.html">Meta Generation Tools</a></td>
  +            <td>
  +               Avalon provides a set of tools that automate the process 
  +               of generating meta-info descriptors.  These tools provide
  +               support for the generation of serializable and XML based
  +               descriptors that are collocated with class files. Tool 
  +               support is available for Ant and Maven.
  +            </td>
  +          </tr>
  +          <tr>
  +            <td><a href="api/index.html">Meta Model API</a></td>
  +            <td>
  +               Type and service meta models are established as 
  +               immutable objects that complement the classic information
  +               available about a class.  Using the Type and Service 
  +               descriptor classes, developers can be assured of greater
  +               portability and interoperability of container-side applications.
  +            </td>
  +          </tr>
  +        </table>
  +      </section>
   
       </body>
   
  
  
  
  1.9       +2 -1      avalon/meta/site/xdocs/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/navigation.xml,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- navigation.xml	4 Apr 2004 15:39:24 -0000	1.8
  +++ navigation.xml	14 Apr 2004 11:47:31 -0000	1.9
  @@ -15,7 +15,8 @@
   
       <menu name="About Avalon Meta">
         <item name="Overview" href="/index.html"/>
  -      <item name="Type Model" href="/meta/index.html"/>
  +      <item name="Tag Reference" href="/tags/index.html"/>
  +      <item name="Type Model" href="/meta/info/index.html"/>
         <item name="Tools" href="/tools/index.html"/>
         <item name="Javadoc" href="/api/index.html"/>
       </menu>
  
  
  
  1.3       +7 -7      avalon/meta/site/xdocs/meta/info/attributes/attribute.xml
  
  Index: attribute.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/attributes/attribute.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- attribute.xml	30 Oct 2003 00:44:51 -0000	1.2
  +++ attribute.xml	14 Apr 2004 11:47:31 -0000	1.3
  @@ -10,6 +10,12 @@
     <body>
       <section name="Attribute Descriptor">
   
  +      <subsection name="Description">
  +<p>
  +The attribute descriptor declares the binding of an attribute name and value.  The descriptor is used within the scope of several meta-info structures including tyhe &lt;info&gt;, &lt;logger&gt;, &lt;service&gt;, &lt;dependency&gt;, &lt;stage&gt;, and &lt;extension&gt; descriptors.
  +</p>
  +      </subsection>
  +
         <subsection name="Attributes">
           <table>
             <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
  @@ -26,12 +32,6 @@
               </td>
             </tr>
           </table>
  -      </subsection>
  -
  -      <subsection name="Description">
  -<p>
  -The attribute descriptor declares the binding of an attribute name and value.  The descriptor is used within the scope of several meta-info structures including tyhe &lt;info&gt;, &lt;logger&gt;, &lt;service&gt;, &lt;dependency&gt;, &lt;stage&gt;, and &lt;extension&gt; descriptors.
  -</p>
         </subsection>
   
         <subsection name="Example XML">
  
  
  
  1.2       +9 -7      avalon/meta/site/xdocs/meta/info/attributes/index.xml
  
  Index: index.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/attributes/index.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- index.xml	24 Sep 2003 08:15:57 -0000	1.1
  +++ index.xml	14 Apr 2004 11:47:31 -0000	1.2
  @@ -9,6 +9,14 @@
   
     <body>
       <section name="Attributes">
  +
  +      <subsection name="Description">
  +<p>
  +Declaration of a set of attributes.
  +</p>
  +      </subsection>
  +
  +
         <subsection name="Nested Elements">
           <table>
             <tr><th>Element</th><th>Occurance</th><th>Description</th></tr>
  @@ -19,12 +27,6 @@
               </td>
             </tr>
           </table>
  -      </subsection>
  -
  -      <subsection name="Description">
  -<p>
  -Declaration of a set of attributes.
  -</p>
         </subsection>
   
         <subsection name="Example XML">
  
  
  
  1.8       +2 -1      avalon/meta/site/xdocs/meta/info/attributes/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/attributes/navigation.xml,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- navigation.xml	4 Apr 2004 15:39:24 -0000	1.7
  +++ navigation.xml	14 Apr 2004 11:47:31 -0000	1.8
  @@ -15,7 +15,8 @@
   
       <menu name="About Avalon Meta">
         <item name="Overview" href="/index.html"/>
  -      <item name="Type Model" href="/meta/index.html">
  +      <item name="Tag Reference" href="/tags/index.html"/>
  +      <item name="Type Model" href="/meta/info/index.html">
           <item name="Type" href="/meta/info/type/index.html"/>
           <item name="Service" href="/meta/info/service.html"/>
           <item name="Attributes" href="/meta/info/attributes/index.html">
  
  
  
  1.8       +2 -1      avalon/meta/site/xdocs/meta/info/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/navigation.xml,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- navigation.xml	4 Apr 2004 15:39:24 -0000	1.7
  +++ navigation.xml	14 Apr 2004 11:47:32 -0000	1.8
  @@ -15,7 +15,8 @@
   
       <menu name="About Avalon Meta">
         <item name="Overview" href="/index.html"/>
  -      <item name="Type Model" href="/meta/index.html">
  +      <item name="Tag Reference" href="/tags/index.html"/>
  +      <item name="Type Model" href="/meta/info/index.html">
           <item name="Type" href="/meta/info/type/index.html"/>
           <item name="Service" href="/meta/info/service.html"/>
           <item name="Attributes" href="/meta/info/attributes/index.html"/>
  
  
  
  1.3       +7 -7      avalon/meta/site/xdocs/meta/info/type/context/entry.xml
  
  Index: entry.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/context/entry.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- entry.xml	17 Oct 2003 02:03:06 -0000	1.2
  +++ entry.xml	14 Apr 2004 11:47:32 -0000	1.3
  @@ -11,6 +11,12 @@
   
       <section name="Entry Descriptor">
   
  +      <subsection name="Description">
  +<p>
  +The entry element declares the criteria for the inclusion of a context entry within a context object.  The entry exposes a context key and the type that the context entry may be safely cast to.   
  +</p>
  +      </subsection>
  +
         <subsection name="Attributes">
           <table>
             <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
  @@ -54,12 +60,6 @@
               </td>
             </tr>
           </table>
  -      </subsection>
  -
  -      <subsection name="Description">
  -<p>
  -The entry element declares the criteria for the inclusion of a context entry within a context object.  The entry exposes a context key and the type that the context entry may be safely cast to.   
  -</p>
         </subsection>
   
         <subsection name="Example XML">
  
  
  
  1.3       +7 -7      avalon/meta/site/xdocs/meta/info/type/context/index.xml
  
  Index: index.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/context/index.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- index.xml	30 Oct 2003 00:44:51 -0000	1.2
  +++ index.xml	14 Apr 2004 11:47:32 -0000	1.3
  @@ -11,6 +11,12 @@
   
       <section name="Context Descriptor">
   
  +      <subsection name="Description">
  +<p>
  +The org.apache.avalon.meta.info.ContextDescriptor class describes the set of context entries that a component may be depedent on.  Context entries declare a context key and the classname of the value that the component expects to receive.  A compliant container will ensure that a context object supplied to a component under the Contextualize phase can access required context entries with assurance that the value will be supplied under the correct key as as an instance of the required type.  The supply of optional context entries is a container concern with the single exception that a container must ensure that the an optional entry corresponds to the type requested by the component context entry.
  +</p>
  +      </subsection>
  +
         <subsection name="Attributes">
           <table>
             <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
  @@ -41,12 +47,6 @@
               </td>
             </tr>
           </table>
  -      </subsection>
  -
  -      <subsection name="Description">
  -<p>
  -The org.apache.avalon.meta.info.ContextDescriptor class describes the set of context entries that a component may be depedent on.  Context entries declare a context key and the classname of the value that the component expects to receive.  A compliant container will ensure that a context object supplied to a component under the Contextualize phase can access required context entries with assurance that the value will be supplied under the correct key as as an instance of the required type.  The supply of optional context entries is a container concern with the single exception that a container must ensure that the an optional entry corresponds to the type requested by the component context entry.
  -</p>
         </subsection>
   
         <subsection name="Example XML">
  
  
  
  1.9       +3 -2      avalon/meta/site/xdocs/meta/info/type/context/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/context/navigation.xml,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- navigation.xml	4 Apr 2004 15:39:24 -0000	1.8
  +++ navigation.xml	14 Apr 2004 11:47:32 -0000	1.9
  @@ -15,9 +15,10 @@
   
       <menu name="About Avalon Meta">
         <item name="Overview" href="/index.html"/>
  -      <item name="Type Model" href="/meta/index.html">
  +      <item name="Tag Reference" href="/tags/index.html"/>
  +      <item name="Type Model" href="/meta/info/index.html">
           <item name="Type" href="/meta/info/type/index.html">
  -          <item name="Info" href="/meta/info/type/info.html"/>
  +          <item name="Info" href="/meta/info/type/info/index.html"/>
             <item name="Loggers" href="/meta/info/type/loggers/index.html"/>
             <item name="Context" href="/meta/info/type/context/index.html">
               <item name="Entry" href="/meta/info/type/context/entry.html"/>
  
  
  
  1.2       +7 -7      avalon/meta/site/xdocs/meta/info/type/dependencies/dependency.xml
  
  Index: dependency.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/dependencies/dependency.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- dependency.xml	24 Sep 2003 08:15:58 -0000	1.1
  +++ dependency.xml	14 Apr 2004 11:47:32 -0000	1.2
  @@ -11,6 +11,12 @@
   
       <section name="Dependency Descriptor">
   
  +      <subsection name="Description">
  +<p>
  +A dependency declaration defines the key that the component will use to access a service via a service or component manager and the expected service type. A dependecy may be declared as optional by setting the optional attribute value to TRUE.  The default value for optional is FALSE.
  +</p>
  +      </subsection>
  +
         <subsection name="Attributes">
           <table>
             <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
  @@ -56,12 +62,6 @@
               </td>
             </tr>
           </table>
  -      </subsection>
  -
  -      <subsection name="Description">
  -<p>
  -A dependency declaration defines the key that the component will use to access a service via a service or component manager and the expected service type. A dependecy may be declared as optional by setting the optional attribute value to TRUE.  The default value for optional is FALSE.
  -</p>
         </subsection>
   
         <subsection name="Example XML">
  
  
  
  1.3       +10 -11    avalon/meta/site/xdocs/meta/info/type/dependencies/index.xml
  
  Index: index.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/dependencies/index.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- index.xml	30 Oct 2003 00:44:51 -0000	1.2
  +++ index.xml	14 Apr 2004 11:47:32 -0000	1.3
  @@ -11,6 +11,15 @@
   
       <section name="Service Dependencies">
   
  +      <subsection name="Description">
  +<p>
  +Declaration of the set of dependecies that this component type has on component suppliers.  
  +</p>
  +<p>
  +A container will typically provide services to resolve service providers with components declaring depedencies by matching provider and dependency declarations.
  +</p>
  +      </subsection>
  +
         <subsection name="Nested Elements">
           <table>
             <tr><th>Element</th><th>Occurance</th><th>Description</th></tr>
  @@ -22,16 +31,6 @@
             </tr>
           </table>
         </subsection>
  -
  -      <subsection name="Description">
  -<p>
  -Declaration of the set of dependecies that this component type has on component suppliers.  
  -</p>
  -<p>
  -A container will typically provide services to resolve service providers with components declaring depedencies by matching provider and dependency declarations.
  -</p>
  -      </subsection>
  -
   
         <subsection name="Example XML">
   
  
  
  
  1.9       +3 -2      avalon/meta/site/xdocs/meta/info/type/dependencies/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/dependencies/navigation.xml,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- navigation.xml	4 Apr 2004 15:39:24 -0000	1.8
  +++ navigation.xml	14 Apr 2004 11:47:32 -0000	1.9
  @@ -15,9 +15,10 @@
   
       <menu name="About Avalon Meta">
         <item name="Overview" href="/index.html"/>
  -      <item name="Type Model" href="/meta/index.html">
  +      <item name="Tag Reference" href="/tags/index.html"/>
  +      <item name="Type Model" href="/meta/info/index.html">
           <item name="Type" href="/meta/info/type/index.html">
  -          <item name="Info" href="/meta/info/type/info.html"/>
  +          <item name="Info" href="/meta/info/type/info/index.html"/>
             <item name="Loggers" href="/meta/info/type/loggers/index.html"/>
             <item name="Context" href="/meta/info/type/context/index.html"/>
             <item name="Dependencies" href="/meta/info/type/dependencies/index.html">
  
  
  
  1.3       +7 -7      avalon/meta/site/xdocs/meta/info/type/extensions/extension.xml
  
  Index: extension.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/extensions/extension.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- extension.xml	30 Oct 2003 00:44:51 -0000	1.2
  +++ extension.xml	14 Apr 2004 11:47:32 -0000	1.3
  @@ -11,6 +11,12 @@
   
       <section name="Extension Descriptor">
   
  +      <subsection name="Description">
  +<p>
  +The org.apache.avalon.meta.info.ExtensionDescriptor class declares tha ability of a component implementation to provide support for the handling of another component declararing a lifecycle stage dependency.  For example, component A may declare that it is capable of supporting lifecycle interface X and component B may declare that it requires a handler for lifecycle stage interface X.  A compliant container will handle the association of a component capable of handling the the lifecycle stage interface with the component declaring the stage dependency.
  +</p>
  +      </subsection>
  +
         <subsection name="Attributes">
           <table>
             <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
  @@ -34,12 +40,6 @@
               </td>
             </tr>
           </table>
  -      </subsection>
  -
  -      <subsection name="Description">
  -<p>
  -The org.apache.avalon.meta.info.ExtensionDescriptor class declares tha ability of a component implementation to provide support for the handling of another component declararing a lifecycle stage dependency.  For example, component A may declare that it is capable of supporting lifecycle interface X and component B may declare that it requires a handler for lifecycle stage interface X.  A compliant container will handle the association of a component capable of handling the the lifecycle stage interface with the component declaring the stage dependency.
  -</p>
         </subsection>
   
         <subsection name="Example XML">
  
  
  
  1.2       +8 -7      avalon/meta/site/xdocs/meta/info/type/extensions/index.xml
  
  Index: index.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/extensions/index.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- index.xml	24 Sep 2003 08:15:59 -0000	1.1
  +++ index.xml	14 Apr 2004 11:47:32 -0000	1.2
  @@ -11,6 +11,13 @@
   
       <section name="Extensions">
   
  +      <subsection name="Description">
  +<p>
  +Declaration of a set of lifecycle extension handling capabilities that the component type provides.
  +</p>
  +      </subsection>
  +
  +
         <subsection name="Nested Elements">
           <table>
             <tr><th>Element</th><th>Occurance</th><th>Description</th></tr>
  @@ -21,12 +28,6 @@
               </td>
             </tr>
           </table>
  -      </subsection>
  -
  -      <subsection name="Description">
  -<p>
  -Declaration of a set of lifecycle extension handling capabilities that the component type provides.
  -</p>
         </subsection>
   
         <subsection name="Example XML">
  
  
  
  1.9       +3 -2      avalon/meta/site/xdocs/meta/info/type/extensions/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/extensions/navigation.xml,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- navigation.xml	4 Apr 2004 15:39:24 -0000	1.8
  +++ navigation.xml	14 Apr 2004 11:47:32 -0000	1.9
  @@ -15,9 +15,10 @@
   
       <menu name="About Avalon Meta">
         <item name="Overview" href="/index.html"/>
  -      <item name="Type Model" href="/meta/index.html">
  +      <item name="Tag Reference" href="/tags/index.html"/>
  +      <item name="Type Model" href="/meta/info/index.html">
           <item name="Type" href="/meta/info/type/index.html">
  -          <item name="Info" href="/meta/info/type/info.html"/>
  +          <item name="Info" href="/meta/info/type/info/index.html"/>
             <item name="Loggers" href="/meta/info/type/loggers/index.html"/>
             <item name="Context" href="/meta/info/type/context/index.html"/>
             <item name="Dependencies" href="/meta/info/type/dependencies/index.html"/>
  
  
  
  1.4       +16 -15    avalon/meta/site/xdocs/meta/info/type/index.xml
  
  Index: index.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/index.xml,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- index.xml	4 Mar 2004 15:48:47 -0000	1.3
  +++ index.xml	14 Apr 2004 11:47:32 -0000	1.4
  @@ -11,14 +11,24 @@
   
       <section name="Type Descriptor">
   
  +      <subsection name="Description">
  +<p>
  +The &lt;type&gt; element is an assembly of descriptors of the constraints a component
  +type declares towards a container and includes declaration of service 
  +dependencies, Logger establishment criteria, Configuration, Parameters 
  +and Context establishment criteria, in addition to human-readable 
  +information about the component type.
  +</p>
  +      </subsection>
  +
         <subsection name="Nested Elements">
           <table>
             <tr><th>Element</th><th>Occurance</th><th>Description</th></tr>
             <tr>
  -            <td><a href="info.html">info</a></td><td>1</td>
  +            <td><a href="info/index.html">info</a></td><td>1</td>
               <td>
  -             Declaration of the component type name, version, and optional 
  -             attributes.
  +             Declaration of the component type name, version, lifestyle,
  +             collection policy and and optional attributes.
               </td>
             </tr>
             <tr>
  @@ -41,12 +51,14 @@
                type has towards other components.
               </td>
             </tr>
  +          <!--
             <tr>
               <td><a href="security/index.html">security</a></td><td>0..1</td>
               <td>
                Declaration of security related aspects.
               </td>
             </tr>
  +          -->
             <tr>
               <td><a href="services/index.html">services</a></td><td>0..1</td>
               <td>
  @@ -68,17 +80,6 @@
               </td>
             </tr>
           </table>
  -      </subsection>
  -
  -      <subsection name="Description">
  -<p>
  -Type is an assembly of descriptors of the constraints a component
  -type declares towards a container and includes declaration of service 
  -dependencies, Logger establishment criteria, Configuration, Parameters 
  -and Context establishment criteria, in addition to human-readable 
  -information about the component type.
  -</p>
  -
         </subsection>
   
         <subsection name="Example XML">
  
  
  
  1.9       +4 -3      avalon/meta/site/xdocs/meta/info/type/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/navigation.xml,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- navigation.xml	4 Apr 2004 15:39:24 -0000	1.8
  +++ navigation.xml	14 Apr 2004 11:47:32 -0000	1.9
  @@ -15,13 +15,14 @@
   
       <menu name="About Avalon Meta">
         <item name="Overview" href="/index.html"/>
  -      <item name="Type Model" href="/meta/index.html">
  +      <item name="Tag Reference" href="/tags/index.html"/>
  +      <item name="Type Model" href="/meta/info/index.html">
           <item name="Type" href="/meta/info/type/index.html">
  -          <item name="Info" href="/meta/info/type/info.html"/>
  +          <item name="Info" href="/meta/info/type/info/index.html"/>
             <item name="Loggers" href="/meta/info/type/loggers/index.html"/>
             <item name="Context" href="/meta/info/type/context/index.html"/>
             <item name="Dependencies" href="/meta/info/type/dependencies/index.html"/>
  -          <item name="Security" href="/meta/info/type/security/index.html"/>
  +          <!--<item name="Security" href="/meta/info/type/security/index.html"/>-->
             <item name="Services" href="/meta/info/type/services/index.html"/>
             <item name="Stages" href="/meta/info/type/stages/index.html"/>
             <item name="Extensions" href="/meta/info/type/extensions/index.html"/>
  
  
  
  1.3       +7 -6      avalon/meta/site/xdocs/meta/info/type/loggers/index.xml
  
  Index: index.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/loggers/index.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- index.xml	30 Oct 2003 00:44:51 -0000	1.2
  +++ index.xml	14 Apr 2004 11:47:32 -0000	1.3
  @@ -10,6 +10,12 @@
   
       <section name="Logging Descriptor">
   
  +      <subsection name="Description">
  +<p>
  +The org.apache.avalon.meta.info.LoggerDescriptor class describes the set of logging channels that the component requires. The name of each logging channel is relative to the logging channel passed to the component.  For example, a component hosted in a container names aaa/bbb/ccc will be supplied with a logging with a catagory of aaa.bbb.ccc.your-component and the logging categories defined in the meta-info model will be appended to that (using the period as a category delimiter).
  +</p>
  +      </subsection>
  +
         <subsection name="Nested Elements">
           <table>
             <tr><th>Element</th><th>Occurance</th><th>Description</th></tr>
  @@ -22,11 +28,6 @@
           </table>
         </subsection>
   
  -      <subsection name="Description">
  -<p>
  -The org.apache.avalon.meta.info.LoggerDescriptor class describes the set of logging channels that the component requires. The name of each logging channel is relative to the logging channel passed to the component.  For example, a component hosted in a container names aaa/bbb/ccc will be supplied with a logging with a catagory of aaa.bbb.ccc.your-component and the logging categories defined in the meta-info model will be appended to that (using the period as a category delimiter).
  -</p>
  -      </subsection>
   
         <subsection name="Example XML">
   
  
  
  
  1.2       +7 -7      avalon/meta/site/xdocs/meta/info/type/loggers/logger.xml
  
  Index: logger.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/loggers/logger.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- logger.xml	24 Sep 2003 08:15:59 -0000	1.1
  +++ logger.xml	14 Apr 2004 11:47:32 -0000	1.2
  @@ -10,6 +10,12 @@
   
       <section name="Logging Descriptor">
   
  +      <subsection name="Description">
  +<p>
  +The org.apache.avalon.meta.info.LoggerDescriptor class describes the a logging channel that the component requires.
  +</p>
  +      </subsection>
  +
         <subsection name="Attributes">
           <table>
             <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
  @@ -32,12 +38,6 @@
               </td>
             </tr>
           </table>
  -      </subsection>
  -
  -      <subsection name="Description">
  -<p>
  -The org.apache.avalon.meta.info.LoggerDescriptor class describes the a logging channel that the component requires.
  -</p>
         </subsection>
   
         <subsection name="Example XML">
  
  
  
  1.9       +3 -2      avalon/meta/site/xdocs/meta/info/type/loggers/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/loggers/navigation.xml,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- navigation.xml	4 Apr 2004 15:39:24 -0000	1.8
  +++ navigation.xml	14 Apr 2004 11:47:32 -0000	1.9
  @@ -15,9 +15,10 @@
   
       <menu name="About Avalon Meta">
         <item name="Overview" href="/index.html"/>
  -      <item name="Type Model" href="/meta/index.html">
  +      <item name="Tag Reference" href="/tags/index.html"/>
  +      <item name="Type Model" href="/meta/info/index.html">
           <item name="Type" href="/meta/info/type/index.html">
  -          <item name="Info" href="/meta/info/type/info.html"/>
  +          <item name="Info" href="/meta/info/type/info/index.html"/>
             <item name="Loggers" href="/meta/info/type/loggers/index.html">
               <item name="Logger" href="/meta/info/type/loggers/logger.html"/>
             </item>
  
  
  
  1.2       +11 -9     avalon/meta/site/xdocs/meta/info/type/security/index.xml
  
  Index: index.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/security/index.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- index.xml	25 Feb 2004 13:19:57 -0000	1.1
  +++ index.xml	14 Apr 2004 11:47:32 -0000	1.2
  @@ -9,6 +9,16 @@
   
     <body>
       <section name="Security">
  +
  +      <subsection name="Description">
  +<p>
  +Declaration of a set of security aspects.  This information may be used by a 
  +container to determine if the deployment of a component type is allowed within
  +an existing security context.
  +</p>
  +      </subsection>
  +
  +
         <subsection name="Nested Elements">
           <table>
             <tr><th>Element</th><th>Occurance</th><th>Description</th></tr>
  @@ -19,14 +29,6 @@
               </td>
             </tr>
           </table>
  -      </subsection>
  -
  -      <subsection name="Description">
  -<p>
  -Declaration of a set of security aspects.  This information may be used by a 
  -container to determine if the deployment of a component type is allowed within
  -an existing security context.
  -</p>
         </subsection>
   
         <subsection name="Example XML">
  
  
  
  1.5       +3 -2      avalon/meta/site/xdocs/meta/info/type/security/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/security/navigation.xml,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- navigation.xml	4 Apr 2004 15:39:24 -0000	1.4
  +++ navigation.xml	14 Apr 2004 11:47:32 -0000	1.5
  @@ -15,9 +15,10 @@
   
       <menu name="About Avalon Meta">
         <item name="Overview" href="/index.html"/>
  -      <item name="Type Model" href="/meta/index.html">
  +      <item name="Tag Reference" href="/tags/index.html"/>
  +      <item name="Type Model" href="/meta/info/index.html">
           <item name="Type" href="/meta/info/type/index.html">
  -          <item name="Info" href="/meta/info/type/info.html"/>
  +          <item name="Info" href="/meta/info/type/info/index.html"/>
             <item name="Loggers" href="/meta/info/type/loggers/index.html"/>
             <item name="Context" href="/meta/info/type/context/index.html"/>
             <item name="Dependencies" href="/meta/info/type/dependencies/index.html"/>
  
  
  
  1.2       +8 -7      avalon/meta/site/xdocs/meta/info/type/security/permission.xml
  
  Index: permission.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/security/permission.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- permission.xml	25 Feb 2004 13:19:57 -0000	1.1
  +++ permission.xml	14 Apr 2004 11:47:32 -0000	1.2
  @@ -10,6 +10,13 @@
     <body>
       <section name="Permission Descriptor">
   
  +      <subsection name="Description">
  +<p>
  +The org.apache.avalon.meta.info.PermissionDescriptor class declares a permission
  +required by the component type.
  +</p>
  +      </subsection>
  +
         <subsection name="Attributes">
           <table>
             <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
  @@ -40,12 +47,6 @@
           </table>
         </subsection>
   
  -      <subsection name="Description">
  -<p>
  -The org.apache.avalon.meta.info.PermissionDescriptor class declares a permission
  -required by the component type.
  -</p>
  -      </subsection>
   
         <subsection name="Example XML">
   
  
  
  
  1.2       +11 -13    avalon/meta/site/xdocs/meta/info/type/services/index.xml
  
  Index: index.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/services/index.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- index.xml	24 Sep 2003 08:16:00 -0000	1.1
  +++ index.xml	14 Apr 2004 11:47:32 -0000	1.2
  @@ -11,9 +11,18 @@
   
       <section name="Service Descriptor">
   
  +      <subsection name="Description">
   <p>
  -Declaration of the set of services published by this component type.
  +    Declaration of the set of services that this component is capable 
  +    of supplying.  Each service declarared under the services element
  +    may be referenced by other component types as service dependecies
  +    or lifecycle stage depedencies.  A container is responsible for 
  +    the assembly of component types based on the connection of 
  +    supply components to consumer components via a common service 
  +    description. 
   </p>
  +      </subsection>
  +
         <subsection name="Nested Elements">
           <table>
             <tr><th>Element</th><th>Occurance</th><th>Description</th></tr>
  @@ -26,17 +35,6 @@
           </table>
         </subsection>
   
  -      <subsection name="Description">
  -<p>
  -    Declaration of the set of services that this component is capable 
  -    of supplying.  Each service declarared under the services element
  -    may be referenced by other component types as service dependecies
  -    or lifecycle stage depedencies.  A container is responsible for 
  -    the assembly of component types based on the connection of 
  -    supply components to consumer components via a common service 
  -    description. 
  -</p>
  -      </subsection>
   
         <subsection name="Example XML">
   
  
  
  
  1.9       +3 -2      avalon/meta/site/xdocs/meta/info/type/services/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/services/navigation.xml,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- navigation.xml	4 Apr 2004 15:39:24 -0000	1.8
  +++ navigation.xml	14 Apr 2004 11:47:32 -0000	1.9
  @@ -15,9 +15,10 @@
   
       <menu name="About Avalon Meta">
         <item name="Overview" href="/index.html"/>
  -      <item name="Type Model" href="/meta/index.html">
  +      <item name="Tag Reference" href="/tags/index.html"/>
  +      <item name="Type Model" href="/meta/info/index.html">
           <item name="Type" href="/meta/info/type/index.html">
  -          <item name="Info" href="/meta/info/type/info.html"/>
  +          <item name="Info" href="/meta/info/type/info/index.html"/>
             <item name="Loggers" href="/meta/info/type/loggers/index.html"/>
             <item name="Context" href="/meta/info/type/context/index.html"/>
             <item name="Dependencies" href="/meta/info/type/dependencies/index.html"/>
  
  
  
  1.2       +8 -7      avalon/meta/site/xdocs/meta/info/type/services/service.xml
  
  Index: service.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/services/service.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- service.xml	24 Sep 2003 08:16:00 -0000	1.1
  +++ service.xml	14 Apr 2004 11:47:32 -0000	1.2
  @@ -11,6 +11,13 @@
   
       <section name="Service Descriptor">
   
  +      <subsection name="Description">
  +<p>
  +The org.apache.avalon.meta.info.ServiceDescriptor class describes a service delivery capability. It contains a reference to ServiceDefinition. Service delivery capability represent the value-proposition that the component type offers to its clients. Client typically include other component that have declared dependencies on the type of service referenced by the ServiceDescriptor.  Services supporting dependency requirements are exposed to clients though a ServiceManager (or ComponentManager). For dependent services, the client will typically invoke the <code>lookup</code> operation against the supplied service manager, passing a lookup key to the supplied manager.  The object retured is the service (or a proxy that isolates the component from the offered service). 
  +</p>
  +      </subsection>
  +
  +
         <subsection name="Attributes">
           <table>
             <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
  @@ -42,12 +49,6 @@
               </td>
             </tr>
           </table>
  -      </subsection>
  -
  -      <subsection name="Description">
  -<p>
  -The org.apache.avalon.meta.info.ServiceDescriptor class describes a service delivery capability. It contains a reference to ServiceDefinition. Service delivery capability represent the value-proposition that the component type offers to its clients. Client typically include other component that have declared dependencies on the type of service referenced by the ServiceDescriptor.  Services supporting dependency requirements are exposed to clients though a ServiceManager (or ComponentManager). For dependent services, the client will typically invoke the <code>lookup</code> operation against the supplied service manager, passing a lookup key to the supplied manager.  The object retured is the service (or a proxy that isolates the component from the offered service). 
  -</p>
         </subsection>
   
         <subsection name="Example XML">
  
  
  
  1.2       +9 -7      avalon/meta/site/xdocs/meta/info/type/stages/index.xml
  
  Index: index.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/stages/index.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- index.xml	24 Sep 2003 08:16:00 -0000	1.1
  +++ index.xml	14 Apr 2004 11:47:32 -0000	1.2
  @@ -9,6 +9,14 @@
   
     <body>
       <section name="Lifecycle Stages">
  +
  +      <subsection name="Description">
  +<p>
  +Declaration of a set of lifecycle stage dependencies.  A container shall invoke lifecycle stages in the order corresponding to the order of the stage declarations.
  +</p>
  +      </subsection>
  +
  +
         <subsection name="Nested Elements">
           <table>
             <tr><th>Element</th><th>Occurance</th><th>Description</th></tr>
  @@ -19,12 +27,6 @@
               </td>
             </tr>
           </table>
  -      </subsection>
  -
  -      <subsection name="Description">
  -<p>
  -Declaration of a set of lifecycle stage dependencies.  A container shall invoke lifecycle stages in the order corresponding to the order of the stage declarations.
  -</p>
         </subsection>
   
         <subsection name="Example XML">
  
  
  
  1.9       +3 -2      avalon/meta/site/xdocs/meta/info/type/stages/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/stages/navigation.xml,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- navigation.xml	4 Apr 2004 15:39:24 -0000	1.8
  +++ navigation.xml	14 Apr 2004 11:47:32 -0000	1.9
  @@ -15,9 +15,10 @@
   
       <menu name="About Avalon Meta">
         <item name="Overview" href="/index.html"/>
  -      <item name="Type Model" href="/meta/index.html">
  +      <item name="Tag Reference" href="/tags/index.html"/>
  +      <item name="Type Model" href="/meta/info/index.html">
           <item name="Type" href="/meta/info/type/index.html">
  -          <item name="Info" href="/meta/info/type/info.html"/>
  +          <item name="Info" href="/meta/info/type/info/index.html"/>
             <item name="Loggers" href="/meta/info/type/loggers/index.html"/>
             <item name="Context" href="/meta/info/type/context/index.html"/>
             <item name="Dependencies" href="/meta/info/type/dependencies/index.html"/>
  
  
  
  1.3       +11 -11    avalon/meta/site/xdocs/meta/info/type/stages/stage.xml
  
  Index: stage.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/info/type/stages/stage.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- stage.xml	30 Oct 2003 00:44:51 -0000	1.2
  +++ stage.xml	14 Apr 2004 11:47:32 -0000	1.3
  @@ -10,6 +10,16 @@
     <body>
       <section name="Stage Descriptor">
   
  +      <subsection name="Description">
  +<p>
  +The org.apache.avalon.meta.info.StageDescriptor class declares a depedency that
  +a component has towards a stage interface handler (refer <a href="../extensions/extension.html">extension</a>).  A component may declare multiple stage depedencies.  Each stage depedency references a version 
  +interface.  A compliant container is responsible for handling the association of 
  +extension handlers with components that are dependent on custom stages by matching
  +extension candidates based on the interface type reference.
  +</p>
  +      </subsection>
  +
         <subsection name="Attributes">
           <table>
             <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
  @@ -33,16 +43,6 @@
               </td>
             </tr>
           </table>
  -      </subsection>
  -
  -      <subsection name="Description">
  -<p>
  -The org.apache.avalon.meta.info.StageDescriptor class declares a depedency that
  -a component has towards a stage interface handler (refer <a href="../extensions/extension.html">extension</a>).  A component may declare multiple stage depedencies.  Each stage depedency references a version 
  -interface.  A compliant container is responsible for handling the association of 
  -extension handlers with components that are dependent on custom stages by matching
  -extension candidates based on the interface type reference.
  -</p>
         </subsection>
   
         <subsection name="Example XML">
  
  
  
  1.8       +2 -1      avalon/meta/site/xdocs/meta/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/meta/navigation.xml,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- navigation.xml	4 Apr 2004 15:39:24 -0000	1.7
  +++ navigation.xml	14 Apr 2004 11:47:32 -0000	1.8
  @@ -14,7 +14,8 @@
   
       <menu name="About Avalon Meta">
         <item name="Overview" href="/index.html"/>
  -      <item name="Type Model" href="/meta/index.html">
  +      <item name="Tag Reference" href="/tags/index.html"/>
  +      <item name="Type Model" href="/meta/info/index.html">
           <item name="Type" href="/meta/info/type/index.html"/>
           <item name="Service" href="/meta/info/service.html"/>
           <item name="Attributes" href="/meta/info/attributes/index.html"/>
  
  
  
  1.2       +0 -8      avalon/meta/site/xdocs/tools/index.xml
  
  Index: index.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/tools/index.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- index.xml	24 Sep 2003 08:16:01 -0000	1.1
  +++ index.xml	14 Apr 2004 11:47:32 -0000	1.2
  @@ -21,14 +21,6 @@
           <table>
             <tr><th>Topic</th><th>Summary</th></tr>
             <tr>
  -            <td><a href="tags/index.html">Javadoc Tags</a></td>
  -            <td>
  -              Reference specification of the Javadoc Tags used to 
  -              support automation of component and service meta info
  -              generation.
  -            </td>
  -          </tr>
  -          <tr>
               <td><a href="ant.html">Meta Generation Ant Task</a></td>
               <td>
                 An Ant task supporting generation of XML or serialized 
  
  
  
  1.9       +2 -2      avalon/meta/site/xdocs/tools/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/tools/navigation.xml,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- navigation.xml	4 Apr 2004 15:39:24 -0000	1.8
  +++ navigation.xml	14 Apr 2004 11:47:32 -0000	1.9
  @@ -15,9 +15,9 @@
   
       <menu name="About Avalon Meta">
         <item name="Overview" href="/index.html"/>
  -      <item name="Type Model" href="/meta/index.html"/>
  +      <item name="Tag Reference" href="/tags/index.html"/>
  +      <item name="Type Model" href="/meta/info/index.html"/>
         <item name="Tools" href="/tools/index.html">
  -        <item name="Javadoc Tags Reference" href="/tools/tags/index.html"/>
           <item name="Meta-Info Generator Task" href="/tools/ant.html"/>
           <item name="Avalon Plugin for Maven" href="/tools/maven/index.html"/>
         </item>
  
  
  
  1.8       +2 -2      avalon/meta/site/xdocs/tools/maven/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/tools/maven/navigation.xml,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- navigation.xml	4 Apr 2004 15:39:24 -0000	1.7
  +++ navigation.xml	14 Apr 2004 11:47:32 -0000	1.8
  @@ -15,9 +15,9 @@
   
       <menu name="About Avalon Meta">
         <item name="Overview" href="/index.html"/>
  -      <item name="Type Model" href="/meta/index.html"/>
  +      <item name="Tag Reference" href="/tags/index.html"/>
  +      <item name="Type Model" href="/meta/info/index.html"/>
         <item name="Tools" href="/tools/index.html">
  -        <item name="Javadoc Tags Reference" href="/tools/tags/index.html"/>
           <item name="Meta-Info Generator Task" href="/tools/ant.html"/>
           <item name="Avalon Plugin for Maven" href="/tools/maven/index.html"/>
         </item>
  
  
  
  1.8       +2 -1      avalon/meta/site/xdocs/tutorial/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/avalon/meta/site/xdocs/tutorial/navigation.xml,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- navigation.xml	4 Apr 2004 15:39:24 -0000	1.7
  +++ navigation.xml	14 Apr 2004 11:47:32 -0000	1.8
  @@ -15,7 +15,8 @@
   
       <menu name="About Avalon Meta">
         <item name="Overview" href="/index.html"/>
  -      <item name="Type Model" href="/meta/index.html"/>
  +      <item name="Tag Reference" href="/tags/index.html"/>
  +      <item name="Type Model" href="/meta/info/index.html"/>
         <item name="Tools" href="/tools/index.html"/>
         <item name="Javadoc" href="/api/index.html"/>
       </menu>
  
  
  
  1.1                  avalon/meta/site/xdocs/meta/info/type/info/collection.xml
  
  Index: collection.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Collection Descriptors</title>
    </properties>
  
    <body>
  
      <section name="Collection Descriptor">
  
        <subsection name="Description">
          <p>
          Declaration of a garbage collection policy default override.  If 
          the value is "weak" the component will be decommissioned automatically
          if all references to the component have been released.  If the value
          "soft" the component will be decommissioned in the event of 
          memory contention. If the value is "hard" the component will be 
          maintained for the life of its container.  If undefined, the default
          collection policy is "hard".
          </p>
        </subsection>
  
        <subsection name="Example XML">
  <source><![CDATA[
  <collection>soft</collection>
  ]]></source>
        </subsection>
      </section>
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:32 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/meta/info/type/info/index.xml
  
  Index: index.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Logging Descriptors</title>
    </properties>
  
    <body>
  
      <section name="Info Descriptor">
  
        <subsection name="Description">
  <p>
  The org.apache.avalon.meta.info.InfoDescriptor class describes the component 
  type name, version, and optionally a set of attributes.
  </p>
        </subsection>
  
  
        <subsection name="Nested Elements">
          <table>
            <tr><th>Element</th><th>Occurance</th><th>Description</th></tr>
            <tr>
              <td><a href="name.html">name</a></td><td>1</td>
              <td>
               The name of the component type - may be used by a container as 
               the component default name when generating type related 
               information in log or error reports.
              </td>
            </tr>
            <tr>
              <td><a href="version.html">version</a></td><td>0..1</td>
              <td>
               The component type implementation version.  The default
               value is 1.0.0.
              </td>
            </tr>
            <tr>
              <td><a href="lifestyle.html">lifestyle</a></td><td>0..1</td>
              <td>
               Declaration of the component lifestyle. May contain one of the 
               recognized values "singleton", "thread", "pooled", or "transient".
               If not supplied the default value is transient.
              </td>
            </tr>
            <tr>
              <td><a href="../attributes/index.html">attributes</a></td><td>0..1</td>
              <td>
               Declaration of a set of attributes associated with the component type.
              </td>
            </tr>
            <tr>
              <td><a href="collection.html">collection</a></td><td>0..1</td>
              <td>
               Declaration of a garbage collection policy default override.  If 
               the value is "weak" the component will be decommissioned automatically
               if all references to the component have been released.  If the value
               "soft" the component will be decommissioned in the event of 
               memory contention. If the value is "hard" the component will be 
               maintained for the life of its container.  If undefined, the default
               collection policy is "hard".
              </td>
            </tr>
          </table>
        </subsection>
  
        <subsection name="Example XML">
  
  <source><![CDATA[
    <info>
      <name>test</info>
      <version>1.0</version>
      <lifestyle>singleton</lifestyle>
      <collection>soft</collection>
      <attributes>
        <attribute key="about" value="An example attribute."/>
        <attribute key="status" value="FINAL"/>
      </attributes>
    </info>
  ]]></source>
  
        </subsection>
  
      </section>
  
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:32 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/meta/info/type/info/lifestyle.xml
  
  Index: lifestyle.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Lifestyle Descriptors</title>
    </properties>
  
    <body>
  
      <section name="Lifestyle Descriptor">
  
        <subsection name="Description">
          <p>
          Declaration of the component lifestyle. May contain one of the 
          recognized values "singleton", "thread", "pooled", or "transient".
          If not supplied the default value is "transient".
          </p>
        </subsection>
  
        <subsection name="Example XML">
  <source><![CDATA[
  <lifestyle>singleton</lifestyle>
  ]]></source>
        </subsection>
      </section>
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:32 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/meta/info/type/info/name.xml
  
  Index: name.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Context Descriptors</title>
    </properties>
  
    <body>
  
      <section name="Name Descriptor">
  
        <subsection name="Description">
          <p>
          The name of the component type - may be used by a container as 
          the component default name when generating type related 
          information in log or error reports.
          </p>
        </subsection>
  
        <subsection name="Example XML">
  <source><![CDATA[
  <name>widget</name>
  ]]></source>
        </subsection>
      </section>
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:32 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/meta/info/type/info/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  <project>
  
   <title>Avalon Meta</title>
  
   <body>
  
      <links>
        <item name="Apache" href="http://apache.org/"/>
        <item name="Avalon" href="http://avalon.apache.org/"/>
        <item name="Framework" href="http://avalon.apache.org/product/framework/"/>
        <item name="Merlin" href="http://avalon.apache.org/product/containers/"/>
        <item name="Planet" href="http://avalon.apache.org/product/components/"/>
      </links>
  
      <menu name="About Avalon Meta">
        <item name="Overview" href="/index.html"/>
        <item name="Tag Reference" href="/tags/index.html"/>
        <item name="Type Model" href="/meta/info/index.html">
          <item name="Type" href="/meta/info/type/index.html">
            <item name="Info" href="/meta/info/type/info/index.html">
              <item name="Name" href="/meta/info/type/info/name.html"/>
              <item name="Version" href="/meta/info/type/info/version.html"/>
              <item name="Lifestyle" href="/meta/info/type/info/lifestyle.html"/>
              <item name="Collection" href="/meta/info/type/info/collection.html"/>
            </item>
            <item name="Loggers" href="/meta/info/type/loggers/index.html"/>
            <item name="Context" href="/meta/info/type/context/index.html"/>
            <item name="Dependencies" href="/meta/info/type/dependencies/index.html"/>
            <!--<item name="Security" href="/meta/info/type/security/index.html"/>-->
            <item name="Services" href="/meta/info/type/services/index.html"/>
            <item name="Stages" href="/meta/info/type/stages/index.html"/>
            <item name="Extensions" href="/meta/info/type/extensions/index.html"/>
          </item>
          <item name="Service" href="/meta/info/service.html"/>
          <item name="Attributes" href="/meta/info/attributes/index.html"/>
        </item>
        <item name="Tools" href="/tools/index.html"/>
        <item name="Javadoc" href="/api/index.html"/>
      </menu>
  
      <menu name="Related Projects">
        <item name="Merlin" href="http://avalon.apache.org/merlin"/>
      </menu>
  
   </body>
  
  </project>
  
  
  
  1.1                  avalon/meta/site/xdocs/meta/info/type/info/version.xml
  
  Index: version.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Version Descriptors</title>
    </properties>
  
    <body>
  
      <section name="Version Descriptor">
  
        <subsection name="Description">
          <p>
          The component type implementation version.  The default
          value is 1.0.0.
          </p>
        </subsection>
  
        <subsection name="Example XML">
  <source><![CDATA[
  <version>2.1.4</version>
  ]]></source>
        </subsection>
      </section>
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:32 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/tags/attribute.xml
  
  Index: attribute.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Javadoc Tag Specification</title>
    </properties>
  
    <body>
  
      <section name="Javadoc Tags">
  
        <subsection name="Attribute Tag">
  <p>An attribute may be declared within an interface or class. When declared under an interface the attribute will be included in the generated service defintion.  When declared under a class, the attribute will be included in the info element of the type defintion.</p>
        </subsection>
        <subsection name="Attributes">
          <table>
            <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
            <tr>
              <td>key</td><td>yes</td>
              <td>
                <p>The attribute lookup key.</p>
              </td>
            </tr>
            <tr>
              <td>value</td><td>no</td>
              <td>
                <p>The attribute value. If not declared, a null value is assumed.</p>
              </td>
            </tr>
          </table>
        </subsection>
        <subsection name="Example">
  
  <source><![CDATA[
  package org.apache.avalon.playground;
  
  /**
   * Example of the declaration of a series of attributes.
   *
   * @avalon.attribute key="description" value="an example"
   * @avalon.attribute key="color" value="red"
   * @avalon.attribute key="priority" value="normal"
   */
  public interface MyService
  {
    ...
  }
  ]]></source>
  
  <p>Generated meta-info when declared within an interface:</p>
  
  <source><![CDATA[
  <service>
    <attributes>
      <attribute name="description" value="an example"/>
      <attribute name="color" value="red"/>
      <attribute name="priority" value="normal"/>
    </attributes>
  </service>
  ]]></source>
  
  <p>Generated meta-info when declared within an class:</p>
  
  <source><![CDATA[
  <type>
    <info>
      <attributes>
        <attribute name="description" value="an example"/>
        <attribute name="color" value="red"/>
        <attribute name="priority" value="normal"/>
      </attributes>
    </info>
  </type>
  ]]></source>
  
        </subsection>
      </section>
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:33 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/tags/configuration.xml
  
  Index: configuration.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Javadoc Tag Specification</title>
    </properties>
  
    <body>
  
      <section name="Javadoc Tags">
  
        <subsection name="Configuration Tag">
  <p>The optional configuration tag allows the declaration of a validation schema with a component type.</p>
        </subsection>
  
        <subsection name="Attributes">
          <table>
            <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
            <tr>
              <td>schema</td><td>yes</td>
              <td>
              The validate schema name. 
              </td>
            </tr>
          </table>
        </subsection>
  
        <subsection name="Example">
  
  <source><![CDATA[
  
  /**
   * Configuration of the component by the container.
   * @param config the configuration instance
   * @exception ConfigurationException if error occurs
   * @avalon.configuration schema="your-schema-spec"
   */
  public void configure( Configuration config ) throws ConfigurationException
  {
    ...
  }
  ]]></source>
  
  <p>Generated meta-info type descriptor:</p>
  
  <source><![CDATA[
  <type>
    <info>
      <schema>your-schema-spec</schema>
    </info>
  </type>
  ]]></source>
  
        </subsection>
      </section>
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:33 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/tags/context.xml
  
  Index: context.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Javadoc Tag Specification</title>
    </properties>
  
    <body>
  
      <section name="Javadoc Tags">
        <subsection name="Context Tag">
  <p>The context tag enables the declaration of a custom context interface classname that a component may safely cast a supplied context instance to.</p>
        </subsection>
  
        <subsection name="Attributes">
          <table>
            <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
            <tr>
              <td><p>type</p></td><td><p>no</p></td>
              <td>
                <p>The classname of the interface that the component 
                   may cast a supplied context argument to.</p>
              </td>
            </tr>
          </table>
        </subsection>
  
        <subsection name="Example">
  
  <source><![CDATA[
  package net.osm;
  
  /**
   * Example of a component declaring a custom context argument type.
   *
   * @avalon.component version="1.3" name="primary-component"
   */
  public class Primary implements Contextualizable
  {
     /**
      * @avalon.context type="net.osm.CustomContext"
      */
      public void contextualize( Context context ) 
        throws ContextException
      {
          CustomContext custom = (CustomContext) context;
          ...
      }
  }
  ]]></source>
  
  <p>Generated meta-info type descriptor:</p>
  
  <source><![CDATA[
  <type>
    <info>
      <version>1.3.0</version>
      <name>primary-component</name>
    </info>
    <context type="net.osm.CustomContext"/>
  </type>
  ]]></source>
        </subsection>
      </section>
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:33 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/tags/dependency.xml
  
  Index: dependency.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Javadoc Tag Specification</title>
    </properties>
  
    <body>
  
      <section name="Javadoc Tags">
        <subsection name="Dependency Tag">
  <p>Component types may declare multiple service dependencies through the service tag.  Each service tag references a versioned service identifier that the container will supply to the component type on request relative to the declared dependency key.</p>
        </subsection>
        <subsection name="Attributes">
          <table>
            <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
            <tr>
              <td>type</td><td>yes</td>
              <td>
                <p>The service interface classname that the component is dependent on.</p>
              </td>
            </tr>
            <tr>
              <td>version</td><td>no</td>
              <td>
                <p>
                  The service version.
                  If not declared the service dependency shall match any version.</p>
              </td>
            </tr>
            <tr>
              <td>optional</td><td>no</td>
              <td>
                <p>
                 A value of 'true' or 'false'.  If true, the supply of a dependency
                 is at the discression of the container.  If false (the default) 
                 a container is required to resolve and supply a service matching 
                 the dependency declaration.</p>
              </td>
            </tr>
          </table>
        </subsection>
        <subsection name="Example">
  
  
  <source><![CDATA[
  package net.osm;
  
  /**
   * Example of a component declaring multiple service dependencies.
   *
   * @avalon.component version="1.0" name="demo"
   */
  public class Demo implements Serviceable
  {
      ...
  
     /**
      * Supply of dependent services to this component by 
      *  the container.
      * @param manager the service manager
      * @avalon.dependency key="home" type="Home" version="1.3" 
      * @avalon.dependency type="Resource" version="5" optional="true"
      */
      public void service( ServiceManager manager ) 
        throws ServiceException
      {
          m_home = (Home) manager.lookup( "home" );
          try
          {
              m_resource = (Resource) manager.lookup( 
                Resource.getClass().getName() );
          }
          catch( ServiceException se )
          {
              // it's optional
          }
      }
  }
  ]]></source>
  
  <p>Generated meta-info type descriptor:</p>
  
  <source><![CDATA[
  <type>
    <info>
      <version>1.3.0</version>
      <name>demo</name>
    </info>
    <dependencies>
      <dependency key="home" type="Home" version="1.3.0"/>
      <dependency type="Resource" version="5.0.0" optional="true"/>
    </dependencies>
  </type>
  ]]></source>
        </subsection>
      </section>
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:33 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/tags/entry.xml
  
  Index: entry.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Javadoc Tag Specification</title>
    </properties>
  
    <body>
  
      <section name="Javadoc Tags">
  
        <subsection name="Entry Tag">
  <p>The entry tag declares a context entry required by a component.  The component is supplied the context entry via a context argument as part of the contextualization lifecycle stage. Context entries my declare a object type or array of object types.  If the type is not declared java.lang.String is assumed.  Context entries may also be declared as optional and/or volatile.  The default behaviour is to assume that a context entry is required (not optional) is is non-volatile.</p>
        </subsection>
  
        <subsection name="Attributes">
          <table>
            <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
            <tr>
              <td><p>key</p></td><td><p>yes</p></td>
              <td>
                <p>The context entry lookup key.</p>
              </td>
            </tr>
            <tr>
              <td><p>alias</p></td><td><p>no</p></td>
              <td>
                <p>Declaration of an alternative name that the component 
                   may use to lookup the entry.</p>
              </td>
            </tr>
            <tr>
              <td><p>type</p></td><td><p>no</p></td>
              <td>
                <p>The classname of the context entry that the component 
                   may cast the component to.  If not declared, java.lang.String
                   is assumed.</p>
              </td>
            </tr>
            <tr>
              <td><p>volatile</p></td><td><p>no</p></td>
              <td>
                <p>A value of true or false - if true a new instance of the 
                   context entry value shall be created and retured to the 
                   component per request. If false (the default) a container 
                   context implementation may safely cache context entry values.</p>
              </td>
            </tr>
            <tr>
              <td><p>optional</p></td><td><p>no</p></td>
              <td>
                <p>Declares the context entry as optional in which case 
                   the supply of the context entry is at the discretion 
                   of a container.</p>
              </td>
            </tr>
          </table>
        </subsection>
  
        <subsection name="Example">
  
  <source><![CDATA[
  package org.apache.avalon.playground;
  
  /**
   * Example of a component declaring a context entry dependencies.
   *
   * @avalon.component version="1.0" name="demo"
   */
  public class Primary implements Contextualizable
  {
     /**
      * @avalon.entry key="home" type="java.io.File" optional="true"
      * @avalon.entry key="time" type="java.util.Date" volatile="true"
      * @avalon.entry key="table" type="java.lang.Object[]"
      * @avalon.entry key="urn:avalon:name" alias="block.name"
      */
      public void contextualize( Context context ) 
        throws ContextException
      {
          String name = (String) context.get( "name" );
          Object[] array = (Object[]) context.get( "table" );
          try
          {
              File home = (File) context.get( "home" );
              ...
          }
          catch( ContextException ce )
          {
              // it's optional
          }
      }
  }
  ]]></source>
  
  <p>Generated meta-info type descriptor:</p>
  
  <source><![CDATA[
  <type>
    <info>
      <version>1.3.0</version>
      <name>primary-component</name>
    </info>
    <context>
      <entry key="home" type="java.io.File" optional="true"/>
      <entry key="time" type="java.util.Date" volatile="true"/>
      <entry key="table" type="java.lang.Object[]"/>
      <entry key="urn:avalon:name" alias="block.name">
    </context>
  </type>
  ]]></source>
        </subsection>
      </section>
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:33 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/tags/extension.xml
  
  Index: extension.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Javadoc Tag Specification</title>
    </properties>
  
    <body>
  
      <section name="Javadoc Tags">
  
        <subsection name="Extension Tag">
  <p>Lifecycle stages are resolved through the establishment of a component capable of service the stage dependency.  Component types declare this ability through the extension tag.</p>
        </subsection>
  
        <subsection name="Attributes">
          <table>
            <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
            <tr>
              <td><p>id</p></td><td><p>yes</p></td>
              <td>
                <p>A value (normally a urn) that identifies the extension.</p>
              </td>
            </tr>
          </table>
        </subsection>
  
        <subsection name="Example">
  
  
  <source><![CDATA[
  package net.osm.vault;
  
  /**
   * Example of a component declaring a stage handling capability.
   *
   * @avalon.component version="0.1" name="handler"
   * @avalon.extension id="urn:somewhere:demonstratable"
   */
  public class DemoExtension
  {
    ...
  }
  ]]></source>
  
  <p>Generated meta-info type descriptor:</p>
  
  <source><![CDATA[
  <type>
    <info>
      <version>0.1.0</version>
      <name>handler</name>
    </info>
    <extensions>
      <extension id="urn:somewhere:demonstratable"/>
    </extensions>
  </type>
  ]]></source>
  
        </subsection>
      </section>
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:33 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/tags/index.xml
  
  Index: index.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Javadoc Tag Specification</title>
    </properties>
  
    <body>
  
      <section name="Introduction">
  
  <p>
  Meta information associated with component types can be expressed directly in XML or documented in javadoc tags within the component source code.  The javadoc tag approach ensures that specifications are maintain with respective sources.  Generation of meta info is achieved through a meta-info generation tool.  Tools are provided for both Ant and Maven.
  </p>
  
        <subsection name="Tag List">
  <table>
    <tr>
      <th>Tag</th>
      <th>Scope</th>
      <th>Description</th>
    </tr>
    <tr>
      <td><a href="type.html">@avalon.component</a></td>
      <td>class</td>
      <td>Identifies a class as a component implementation and the 
          requirement for the generation of a component type 
          descriptor.</td>
    </tr>
    <tr>
      <td><a href="attribute.html">@avalon.attribute</a></td>
      <td>class</td>
      <td>
        Declaration of an attribute name and value to be associated with
        a component type info descriptor.
      </td>
    </tr>
    <tr>
      <td><a href="service.html">@avalon.service</a></td>
      <td>class</td>
      <td>Declaration by a component of a exported service that may 
        be used by a container when fulfilling the service dependencies
        exposed by other components.</td>
    </tr>
    <tr>
      <td><a href="stage.html">@avalon.stage</a></td>
      <td>class</td>
      <td>Declaration of a lifecycle stage dependency.</td>
    </tr>
    <tr>
      <td><a href="extension.html">@avalon.extension</a></td>
      <td>class</td>
      <td>Declaration of the export of a lifecycle stage handling capability
        that may be used by a container when resolving lifecycle stage 
        dependencies.</td>
    </tr>
    <!--
    <tr>
      <td><a href="permission.html">@avalon.security.permission</a></td>
      <td></td>
      <td>
        Declaration of a requested security permission. The tag may appear 
        in both class and method scope.  The convention is to declare 
        permission statements as close to the usage as possible (i.e. at 
        the method declaration), however, permission statements will be 
        aggregated for the component type.
      </td>
    </tr>
    -->
    <tr>
      <td><a href="logger.html">@avalon.logger</a></td>
      <td>method</td>
      <td>Declaration of a child logging channel name used by the component.</td>
    </tr>
    <tr>
      <td><a href="configuration.html">@avalon.configuration</a></td>
      <td>method</td>
      <td>Declaration of a configuration validation schema.</td>
    </tr>
    <tr>
      <td><a href="context.html">@avalon.context</a></td>
      <td>method</td>
      <td>Declares of a specialized context interface.</td>
    </tr>
    <tr>
      <td><a href="entry.html">@avalon.entry</a></td>
      <td>method</td>
      <td>Declaration of a context entry dependency.</td>
    </tr>
    <tr>
      <td><a href="dependency.html">@avalon.dependency</a></td>
      <td>method</td>
      <td>Declaration of a service dependency.</td>
    </tr>
  </table>
        </subsection>
      </section>
  
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:33 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/tags/logger.xml
  
  Index: logger.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Javadoc Tag Specification</title>
    </properties>
  
    <body>
  
      <section name="Javadoc Tags">
  
        <subsection name="Logger Tag">
  <p>
  The logger tag declares the name of a logging channel that is consumed by a component type. The logging tag provides management information that may be used by a container during the establishment of logging categories and targets.
  </p>
        </subsection>
        <subsection name="Attributes">
          <table>
            <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
            <tr>
              <td>name</td><td>yes</td>
              <td>
                <p>The name of a subsidiary logging channel relative to the logging channel that is supplied to the component by the container.</p>
              </td>
            </tr>
          </table>
        </subsection>
        <subsection name="Example">
  
  <source><![CDATA[
  package org.apache.avalon.playground;
  
  /**
   * Example of a component declaring the name of a logging channel.
   *
   * @avalon.component name="component" version="2.4"
   */
  public class MyComponent extends AbstractLogEnabled
  {
      private Logger m_system = null;
  
     /**
      * Supply of a logging channel to the component.
      * @param logger the logging channel
      * @avalon.logger name="system"
      */
      public void enableLogging( Logger logger )
      {
          super.enableLogging( logger );
          m_system = logger.getChildLogger( "system" );
      }
  
      ...
  }
  ]]></source>
  
  <p>Generated meta-info type descriptor:</p>
  
  <source><![CDATA[
  <type>
    <info>
      <version>2.4.0</version>
      <name>component</name>
    </info>
    <loggers>
      <logger name="system"/>
    </loggers>
  </type>
  ]]></source>
        </subsection>
      </section>
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:33 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/tags/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  <project>
  
  <title>Avalon Sandbox</title>
  
  <body>
  
      <links>
        <item name="Apache" href="http://apache.org/"/>
        <item name="Avalon" href="http://avalon.apache.org/"/>
        <item name="Framework" href="http://avalon.apache.org/product/framework/"/>
        <item name="Merlin" href="http://avalon.apache.org/product/containers/"/>
        <item name="Planet" href="http://avalon.apache.org/product/components/"/>
      </links>
  
      <menu name="About Avalon Meta">
        <item name="Overview" href="/index.html"/>
        <item name="Tag Reference" href="/tags/index.html">
          <item name="Component" href="/tags/type.html"/>
          <item name="Attribute" href="/tags/attribute.html"/>
          <!--<item name="Permission" href="/tags/permission.html"/>-->
          <item name="Service" href="/tags/service.html"/>
          <item name="Logger" href="/tags/logger.html"/>
          <item name="Configuration" href="/tags/configuration.html"/>
          <item name="Context" href="/tags/context.html"/>
          <item name="Entry" href="/tags/entry.html"/>
          <item name="Dependency" href="/tags/dependency.html"/>
          <item name="Stage" href="/tags/stage.html"/>
          <item name="Extension" href="/tags/extension.html"/>
        </item>
        <item name="Type Model" href="/meta/info/index.html"/>
        <item name="Tools" href="/tools/index.html"/>
        <item name="Javadoc" href="/api/index.html"/>
      </menu>
  
      <menu name="Related Projects">
        <item name="Merlin" href="http://avalon.apache.org/merlin"/>
      </menu>
  
   </body>
  
  </project>
  
  
  
  1.1                  avalon/meta/site/xdocs/tags/permission.xml
  
  Index: permission.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Javadoc Tag Specification</title>
    </properties>
  
    <body>
  
      <section name="Javadoc Tags">
        <subsection name="Security Permission Tag">
  <p>Component types may declare multiple security permissions.</p>
        </subsection>
        <subsection name="Attributes">
          <table>
            <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
            <tr>
              <td>class</td><td>yes</td>
              <td>
                <p>The permission class (such as java.io.FilePermission or 
                   java.util.PropertyPermission).</p>
              </td>
            </tr>
            <tr>
              <td>name</td><td>no</td>
              <td>
                <p>
                  The permission name.</p>
              </td>
            </tr>
            <tr>
              <td>actions</td><td>no</td>
              <td>
                <p>
                 A comma seperated sequence of action keywords.</p>
              </td>
            </tr>
          </table>
        </subsection>
        <subsection name="Example">
  
  
  <source><![CDATA[
  package net.osm;
  
  /**
   * Example of a component declaring a permission requirement.
   *
   * @avalon.component name="test" lifestyle="singleton"
   * @avalon.security.permission class="java.util.PropertyPermission" 
   *     name="java.version" actions="read,write"
   */
  public class Demo 
  {
      ...
  }
  ]]></source>
  
  <p>Generated meta-info type descriptor:</p>
  
  <source><![CDATA[
  <type>
    <info>
      <name>test</name>
      <version>1.0.0</version>
      <lifestyle>singleton</lifestyle>
      <collection>hard</collection>
    </info>
    <security>
      <permission class="java.util.PropertyPermission" name="java.version">
        <action>read</action>
        <action>write</action>
      </permission>
    </security>
  </type>
  ]]></source>
        </subsection>
      </section>
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:33 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/tags/service.xml
  
  Index: service.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Javadoc Tag Specification</title>
    </properties>
  
    <body>
  
      <section name="Javadoc Tags">
  
        <subsection name="Service Tag">
  <p>The service tag when used within a class declares the ability of the compoent type to export one or more work interfaces. Under class scope a component may declare 0..n service export declarations.  When used within an interface, the tag declares the interface as a managable service.  A service tag may appear once in a interface defintion.</p>
        </subsection>
        <subsection name="Attributes">
          <table>
            <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
            <tr>
              <td>type</td><td>required in class scope</td>
              <td>
                <p>The service interface classname. This attribute is automatically
                   assigned the interface classname when declared in an interface.</p>
              </td>
            </tr>
            <tr>
              <td>version</td><td>no</td>
              <td>
                <p>
                  The service version.
                  If not declared the service export is assumed to be version 1.0.</p>
              </td>
            </tr>
          </table>
        </subsection>
        <subsection name="Example">
  
  <source><![CDATA[
  package org.apache.avalon.playground;
  
  /**
   * Example of a component declaring export of a set of services.  
   *
   * @avalon.component version="5.1" name="vault"
   * @avalon.service type="somwhere.Vault;
   * @avalon.service type="somwhere.KeystoreHandler" version="2.1.1;
   */
  public class DefaultVault implements Vault, KeystoreHandler
  {
    ...
  }
  ]]></source>
  
  <p>Generated meta-info type descriptor:</p>
  
  <source><![CDATA[
  <type>
    <info>
      <version>5.1.0</version>
      <name>vault</name>
    </info>
    <services>
      <service type="somwhere.Vault" version="1.0.0"/>
      <service type="somwhere.KeystoreHandler" version="2.1.1"/>
    </services>
  </type>
  ]]></source>
  
        </subsection>
      </section>
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:33 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/tags/stage.xml
  
  Index: stage.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Javadoc Tag Specification</title>
    </properties>
  
    <body>
  
      <section name="Introduction">
        <subsection name="Stage Tag">
  <p>A component type may declare a dependency on an arbitary number of lifecycle stages.  Each stage corresponds to a lifecycle extension that will be applied to the component in the order corresponding to the ordering of stage tags.  A container is responsible for the construction and deployment of an extension stage handler capable of servicing the stage dependency.</p>
        </subsection>
  
        <subsection name="Attributes">
          <table>
            <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
            <tr>
              <td><p>id</p></td><td><p>yes</p></td>
              <td>
                <p>A value that identifies an entension 
                   to be applied to the component during deployment.</p>
              </td>
            </tr>
          </table>
        </subsection>
  
        <subsection name="Example">
  
  <source><![CDATA[
  package net.osm.vault;
  
  import org.apache.avalon.playground.Demonstratable;
  
  /**
   * Example of a component declaring a stage dependency.
   *
   * @avalon.component version="0.1" name="extended-component"
   * @avalon.stage id="urn:somewhere:demonstratable"
   */
  public class DemoComponent implements Demonstratable
  {
    ...
  }
  ]]></source>
  
  <p>Generated meta-info type descriptor:</p>
  
  <source><![CDATA[
  <type>
    <info>
      <version>0.1.0</version>
      <name>extended-component</name>
    </info>
    <stages>
      <stage id="urn:somewhere:demonstratable"/>
    </stages>
  </type>
  ]]></source>
  
        </subsection>
      </section>
  
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:33 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/tags/type.xml
  
  Index: type.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Javadoc Tag Specification</title>
    </properties>
  
    <body>
  
      <section name="Javadoc Tags">
  
        <subsection name="Component Tag">
  <p>The component tag declares a java source as a component type.  The tag is a required when generating a component type descriptor.</p>
        </subsection>
  
        <subsection name="Attributes">
          <table>
            <tr><th>Attribute</th><th>Required</th><th>Description</th></tr>
            <tr>
              <td>name</td><td>yes</td>
              <td>
              <p>The name representing the component type. </p>
              </td>
            </tr>
            <tr>
              <td>version</td><td>no</td>
              <td>
                <p>
                The version used for this component implementation. 
                If not supplied a default version of 1.0 is assumed.
                </p>
              </td>
            </tr>
            <tr>
              <td>lifestyle</td><td>no</td>
              <td>
                <p>
                  The lifestyle that the component was designed for. The 
                  lifestyle may be one of four predefined values. A compliant 
                  container is not required to provide equivalent lifestyle 
                  support, however, a container is required to recognize and 
                  reject a component that it cannot support.
                </p>
                <p>If not declared, a container may assume the transient lifestyle.</p>
                <p>Recognized lifestyle attribute values include:</p>
                <ul>
                  <li>singleton - an instance may be shared between 
                      multiple clients</li>
                  <li>thread - one instance per thread</li>
                  <li>pooled - each client has a unique instance managed by a pool</li>
                  <li>transient - new instance are created on demand</li>
                </ul>
              </td>
            </tr>
          </table>
        </subsection>
  
        <subsection name="Example">
  
  <source><![CDATA[
  package org.apache.avalon.playground;
  
  /**
   * Example of the declaration of named component type.
   *
   * @avalon.component version="1.0" name="sample" lifestyle="singleton"
   */
  public class DefaultComponent
  {
    ...
  }
  ]]></source>
  
  <p>Generated meta-info type descriptor:</p>
  
  <source><![CDATA[
  <type>
    <info>
      <version>1.0.0</version>
      <name>sample</name>
      <lifestyle>singleton</lifestyle>
    </info>
  </type>
  ]]></source>
  
        </subsection>
      </section>
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avalon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:33 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  
  1.1                  avalon/meta/site/xdocs/tags/version.xml
  
  Index: version.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
    <properties>
      <author email="mcconnell@apache.org">Stephen McConnell</author>
      <title>Javadoc Tag Specification</title>
    </properties>
  
    <body>
  
      <section name="Javadoc Tags">
  
        <subsection name="Version Tag">
  <p>A version tag may be declared in either a class or interface.  It specifices the version of the component or service (depeding if the tag is included within a class or interface).  The presence of a version tag signals to the generation tools that a meta-info description is required.  In the case of a class, a Type defintion is created whereas an version tag in an interface will result in the generation of a Service descriptor.</p>
  
  <source><![CDATA[
  package net.osm;
  
  /**
   * Example of a version declaration defintion.  The service tag is  
   * required in order to generate a <classname>.xservice definition  
   * or <classname>.xinfo type descriptor. 
   *
   * @avalon.service version="1.3"
   */
  public interface MyService
  {
    ...
  }
  ]]></source>
  
  <p>Generated meta-info when declared within an interface:</p>
  
  <source><![CDATA[
  <service>
    <version>1.3.0<version>
  </service>
  ]]></source>
  
  <p>Generated meta-info when declared within an class:</p>
  
  <source><![CDATA[
  <type>
    <info>
      <version>1.3.0<version>
    </info>
  </type>
  ]]></source>
  
        </subsection>
      </section>
    </body>
  
    <footer>
      <legal>
        Copyright (c) @year@ The Avaqlon Apache Project All rights reserved.
        $Revision: 1.1 $ $Date: 2004/04/14 11:47:33 $
      </legal>
    </footer>
  
  </document>
  
  
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: cvs-unsubscribe@avalon.apache.org
For additional commands, e-mail: cvs-help@avalon.apache.org