You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by ni...@apache.org on 2004/08/19 15:59:59 UTC

svn commit: rev 36610 - in avalon/site/planet/facilities: http reflector reflector/blocks reflector/components

Author: niclas
Date: Thu Aug 19 06:59:57 2004
New Revision: 36610

Added:
   avalon/site/planet/facilities/reflector/
   avalon/site/planet/facilities/reflector/blocks/
   avalon/site/planet/facilities/reflector/blocks/complete.html   (contents, props changed)
   avalon/site/planet/facilities/reflector/blocks/index.html   (contents, props changed)
   avalon/site/planet/facilities/reflector/blocks/standard.html   (contents, props changed)
   avalon/site/planet/facilities/reflector/components/
   avalon/site/planet/facilities/reflector/components/index.html   (contents, props changed)
   avalon/site/planet/facilities/reflector/index.html   (contents, props changed)
Modified:
   avalon/site/planet/facilities/http/index.html
Log:
Update of the site docs, with the Reflector.

Modified: avalon/site/planet/facilities/http/index.html
==============================================================================
--- avalon/site/planet/facilities/http/index.html	(original)
+++ avalon/site/planet/facilities/http/index.html	Thu Aug 19 06:59:57 2004
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Avalon Finder</title><link type="text/css" rel="stylesheet" href="../../../styles/style.css" /></head><body><table class="logobar"><tr><td class="panelleft"><img alt="link" src="../../../images/feather.jpg" /></td><td class="panelmiddle"><div class="project">Avalon</div><div class="title">Avalon Finder</div></td><td class="panelright" /></tr></table><div class="categorybar" dir="/planet/facilities/http"><a class="homecategory" href="../../../index.html">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Avalon Planet - Facilities</title><link type="text/css" rel="stylesheet" href="../../../styles/style.css" /></head><body><table class="logobar"><tr><td class="panelleft"><img alt="link" src="../../../images/feather.jpg" /></td><td class="panelmiddle"><div class="project">Avalon</div><div class="title">Avalon Planet - Facilities</div></td><td class="panelright" /></tr></table><div class="categorybar" dir="/planet/facilities/http"><a class="homecategory" href="../../../index.html">
         Home
       </a><a class="category-selected" href="../../../planet/components/index.html">Planet</a><a class="category" href="../../../products/runtime/index.html">Products</a><a class="category" href="../../../central/about/index.html">Central</a></div><div class="menubar"><div class="menu"><div class="menu"><div class="menu"><a class="menuitem" href="../../components/index.html">Components</a><a class="menuitem-selected" href="../../facilities/index.html">Facilities</a></div><a class="menuitem" href="../finder/index.html">Finder</a><a class="menuitem" href="../http.html">HTTP</a><a class="menuitem" href="../jmx.html">JMX</a></div><a class="menuitem-selected" href="index.html">Http Facility Overview</a><a class="menuitem" href="api.html">API</a><a class="menuitem-selected" href="facilities/index.html">Assembled Facilities</a><a class="menuitem" href="parts/index.html">Facility Parts</a></div></div><div class="content">
         <div class="section"><span class="section-header">Http Facility</span>
@@ -14,14 +14,13 @@
           </div>
           <div class="subsection"><span class="subsection-header">Component Requirement</span>
             <p>
-              The 
-              components that wishes to serve HTTP requests need to implement
-              org.apache.avalon.http.HttpRequestHandler, which is a stripped
-              down version of Jetty's org.mortbay.http.HttpHandler, taking the
-              same arguments.
+              The components that wishes to serve HTTP requests need to 
+              implement <code>org.apache.avalon.http.HttpRequestHandler</code>,
+              which is a stripped down version of Jetty's 
+              org.mortbay.http.HttpHandler, taking the same arguments.
             </p>
           </div>
-          <div class="subsection"><span class="subsection-header">Assmbled Facility</span>
+          <div class="subsection"><span class="subsection-header">Assembled Facility</span>
             <p>
               To make life easier for everyone involved, we have assembled a 
               couple of standard Jetty configurations, and these can easily be

Added: avalon/site/planet/facilities/reflector/blocks/complete.html
==============================================================================
--- (empty file)
+++ avalon/site/planet/facilities/reflector/blocks/complete.html	Thu Aug 19 06:59:57 2004
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Avalon Planet - Facilities</title><link type="text/css" rel="stylesheet" href="../../../../styles/style.css" /></head><body><table class="logobar"><tr><td class="panelleft"><img alt="link" src="../../../../images/feather.jpg" /></td><td class="panelmiddle"><div class="project">Avalon</div><div class="title">Avalon Planet - Facilities</div></td><td class="panelright" /></tr></table><div class="categorybar" dir="/planet/facilities/reflector/blocks"><a class="homecategory" href="../../../../index.html">
+        Home
+      </a><a class="category-selected" href="../../../../planet/components/index.html">Planet</a><a class="category" href="../../../../products/runtime/index.html">Products</a><a class="category" href="../../../../central/about/index.html">Central</a></div><div class="menubar"><div class="menu"><div class="menu"><div class="menu"><div class="menu"><a class="menuitem" href="../../../components/index.html">Components</a><a class="menuitem-selected" href="../../../facilities/index.html">Facilities</a></div><a class="menuitem" href="../../finder/index.html">Finder</a><a class="menuitem" href="../../http.html">HTTP</a><a class="menuitem" href="../../jmx.html">JMX</a></div><a class="menuitem" href="../index.html">Overview</a><a class="menuitem" href="../using.html">Using</a><a class="menuitem" href="../components/index.html">Components</a><a class="menuitem" href="../blocks.html">Blocks</a></div><a class="menuitem" href="index.html">Overview</a><a class="menuitem" href="standard.html">standard</a><a class="menuitem-selected" href="complete.html">complete</a></div></div><div class="content">
+    <div class="section"><span class="section-header">Reflector - Complete block</span>
+      <p>
+      </p>
+    </div>
+  </div><div class="footer"><span class="copyright">Copyright 2004, The Apache Software Foundation All rights reserved.</span><div class="views"><a class="viewlink" id="xmllink" href=""><img src="../../../../images/xml.gif" /></a></div></div></body></html>
\ No newline at end of file

Added: avalon/site/planet/facilities/reflector/blocks/index.html
==============================================================================
--- (empty file)
+++ avalon/site/planet/facilities/reflector/blocks/index.html	Thu Aug 19 06:59:57 2004
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Avalon Planet - Facilities</title><link type="text/css" rel="stylesheet" href="../../../../styles/style.css" /></head><body><table class="logobar"><tr><td class="panelleft"><img alt="link" src="../../../../images/feather.jpg" /></td><td class="panelmiddle"><div class="project">Avalon</div><div class="title">Avalon Planet - Facilities</div></td><td class="panelright" /></tr></table><div class="categorybar" dir="/planet/facilities/reflector/blocks"><a class="homecategory" href="../../../../index.html">
+        Home
+      </a><a class="category-selected" href="../../../../planet/components/index.html">Planet</a><a class="category" href="../../../../products/runtime/index.html">Products</a><a class="category" href="../../../../central/about/index.html">Central</a></div><div class="menubar"><div class="menu"><div class="menu"><div class="menu"><div class="menu"><a class="menuitem" href="../../../components/index.html">Components</a><a class="menuitem-selected" href="../../../facilities/index.html">Facilities</a></div><a class="menuitem" href="../../finder/index.html">Finder</a><a class="menuitem" href="../../http.html">HTTP</a><a class="menuitem" href="../../jmx.html">JMX</a></div><a class="menuitem" href="../index.html">Overview</a><a class="menuitem" href="../using.html">Using</a><a class="menuitem" href="../components/index.html">Components</a><a class="menuitem" href="../blocks.html">Blocks</a></div><a class="menuitem-selected" href="index.html">Overview</a><a class="menuitem" href="standard.html">standard</a><a class="menuitem" href="complete.html">complete</a></div></div><div class="content">
+    <div class="section"><span class="section-header">Reflector - Blocks</span>
+      <p>
+        We have prepared two blocks for instant use. The 
+        <a class="doclink" href="standard.html"><code>Standard</code></a> block is to be used
+        when there is already a Http Facility used for other purposes, whereas 
+        the <a class="doclink" href="complete.html"><code>Complete</code></a> block includes
+        the Http Facility.
+      </p>
+    </div>
+  </div><div class="footer"><span class="copyright">Copyright 2004, The Apache Software Foundation All rights reserved.</span><div class="views"><a class="viewlink" id="xmllink" href=""><img src="../../../../images/xml.gif" /></a></div></div></body></html>
\ No newline at end of file

Added: avalon/site/planet/facilities/reflector/blocks/standard.html
==============================================================================
--- (empty file)
+++ avalon/site/planet/facilities/reflector/blocks/standard.html	Thu Aug 19 06:59:57 2004
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Avalon Planet - Facilities</title><link type="text/css" rel="stylesheet" href="../../../../styles/style.css" /></head><body><table class="logobar"><tr><td class="panelleft"><img alt="link" src="../../../../images/feather.jpg" /></td><td class="panelmiddle"><div class="project">Avalon</div><div class="title">Avalon Planet - Facilities</div></td><td class="panelright" /></tr></table><div class="categorybar" dir="/planet/facilities/reflector/blocks"><a class="homecategory" href="../../../../index.html">
+        Home
+      </a><a class="category-selected" href="../../../../planet/components/index.html">Planet</a><a class="category" href="../../../../products/runtime/index.html">Products</a><a class="category" href="../../../../central/about/index.html">Central</a></div><div class="menubar"><div class="menu"><div class="menu"><div class="menu"><div class="menu"><a class="menuitem" href="../../../components/index.html">Components</a><a class="menuitem-selected" href="../../../facilities/index.html">Facilities</a></div><a class="menuitem" href="../../finder/index.html">Finder</a><a class="menuitem" href="../../http.html">HTTP</a><a class="menuitem" href="../../jmx.html">JMX</a></div><a class="menuitem" href="../index.html">Overview</a><a class="menuitem" href="../using.html">Using</a><a class="menuitem" href="../components/index.html">Components</a><a class="menuitem" href="../blocks.html">Blocks</a></div><a class="menuitem" href="index.html">Overview</a><a class="menuitem-selected" href="standard.html">standard</a><a class="menuitem" href="complete.html">complete</a></div></div><div class="content">
+    <div class="section"><span class="section-header">Reflector - Standard block</span>
+    </div>
+  </div><div class="footer"><span class="copyright">Copyright 2004, The Apache Software Foundation All rights reserved.</span><div class="views"><a class="viewlink" id="xmllink" href=""><img src="../../../../images/xml.gif" /></a></div></div></body></html>
\ No newline at end of file

Added: avalon/site/planet/facilities/reflector/components/index.html
==============================================================================
--- (empty file)
+++ avalon/site/planet/facilities/reflector/components/index.html	Thu Aug 19 06:59:57 2004
@@ -0,0 +1,190 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Avalon Planet - Facilities</title><link type="text/css" rel="stylesheet" href="../../../../styles/style.css" /></head><body><table class="logobar"><tr><td class="panelleft"><img alt="link" src="../../../../images/feather.jpg" /></td><td class="panelmiddle"><div class="project">Avalon</div><div class="title">Avalon Planet - Facilities</div></td><td class="panelright" /></tr></table><div class="categorybar" dir="/planet/facilities/reflector/components"><a class="homecategory" href="../../../../index.html">
+        Home
+      </a><a class="category-selected" href="../../../../planet/components/index.html">Planet</a><a class="category" href="../../../../products/runtime/index.html">Products</a><a class="category" href="../../../../central/about/index.html">Central</a></div><div class="menubar"><div class="menu"><div class="menu"><div class="menu"><div class="menu"><a class="menuitem-selected" href="../../../components/index.html">Components</a><a class="menuitem-selected" href="../../../facilities/index.html">Facilities</a></div><a class="menuitem" href="../../finder/index.html">Finder</a><a class="menuitem" href="../../http.html">HTTP</a><a class="menuitem" href="../../jmx.html">JMX</a></div><a class="menuitem" href="../index.html">Overview</a><a class="menuitem" href="../using.html">Using</a><a class="menuitem-selected" href="../components/index.html">Components</a><a class="menuitem" href="../blocks.html">Blocks</a></div><a class="menuitem-selected" href="index.html">Overview</a></div></div><div class="content">
+    <div class="section"><span class="section-header">Reflector - Components</span>
+      <div class="subsection"><span class="subsection-header">API and SPI</span>
+      <p>
+        The Reflector facility is broken into a API and a SPI. The API
+        defines the <code>ReflectorService</code> which other components
+        can query easily lookup instances in the system. The SPI defines
+        the <code>ReflectorProvider</code>, where <code>TypeHandler</code>
+        register themself for handling of 'special-cases'.
+      </p>
+      </div>
+      <div class="subsection"><span class="subsection-header">Implementation</span>
+        <p>
+          The implementation is also broken apart along the API and SPI
+          axis. The <code>impl</code> project contains the 
+          <code>ReflectorImpl</code> which implements both the 
+          <code>ReflectorService</code> as well as the
+          <code>ReflectorProvider</code>. The same project also contains
+          a small component that registers the composition model, as a
+          root object in the Reflector. The <code>ReflectionHandler</code>
+          is an implementation of the <code>HttpHandler</code> for the
+          Http Facility, which handles the incoming HTTP requests, which
+          are delegated to the <code>ReflectorImpl</code>, and then formatted
+          into HTML.
+        </p>
+        <p>
+          The <code>typehandlers</code> project contains all the handlers
+          for different types. <code>ObjectTypeHandler</code> is the default
+          handler which will be used for all objects not implementing any of
+          the other types. <code>MapTypeHandler</code> for 
+          <code>java.util.Map</code> instances, and the equivalent for the
+          <code>CollectionTypeHandler</code> and the <code>DictionaryTypeHandler</code>.
+          The <code>ArrayTypeHandler</code> handles arrays of objects and 
+          finally the <code>ComponentModelTypeHandler</code> deals with some
+          special handling of <code>ComponentModel</code> instances, i.e. 
+          enabling reaching the implementation instance.
+        </p>
+        
+      </div>
+      
+      <div class="subsection"><span class="subsection-header">Services</span>
+        <table>
+          <tr row="odd">
+            <th>Class</th>
+            <th>Purpose</th>
+
+          </tr>
+          <tr row="even">
+            <td>org.apache.metro.facilities.reflector.ReflectorService</td>
+            <td>
+              The ReflectorService defines a text formatted instrospection
+              method. Any object instance which are coded according to the 
+              JavaBeans pattern, can be looked up over the various methods
+              in this service. The names can be cascaded with dot separation,
+              and the service will traverse the instances to locate the
+              object requested.
+            </td>
+
+          </tr>
+          <tr row="odd">
+            <td>org.apache.metro.facilities.reflector.spi.ReflectorProvider</td>
+            <td>
+             <code>TypeHandlers</code> needs to register themself at this 
+             service. Each <code>Typehandler</code> is responsible to locate
+             this provider and register which interface/class they are designed
+             to process.
+            </td>
+
+          </tr>
+          <tr row="even">
+            <td>org.apache.metro.facilities.reflector.spi.TypeHandler</td>
+            <td>
+             The reflector architecture allows additional special-case handling
+             of any interface/class. Currently, object of classes implementing
+             multiple registered types at the <code>ReflectorProvider</code> are
+             defined as 'not supported' by the specification. Implementations
+             are free to provide resolutions for such cases.
+            </td>
+
+          </tr>
+        </table>
+      </div>
+      
+      <div class="subsection"><span class="subsection-header">Component Definitions</span>
+      
+        <table>
+          <tr row="odd">
+            <th>Name</th>
+            <th>Class</th>
+            <th>Purpose</th>
+
+          </tr>
+          <tr row="even">
+            <td>reflector</td>
+            <td>org.apache.metro.facilities.reflector.impl.ReflectorImpl</td>
+            <td>
+              The default reflector implementation. You will need this component
+              as it implements both the <code>ReflectorService</code> as well
+              as the <code>ReflectorProvider</code>.
+            </td>
+
+          </tr>
+          <tr row="odd">
+            <td>reflector-http-handler</td>
+            <td>org.apache.metro.facilities.reflector.impl.ReflectionHandler</td>
+            <td>
+              The <code>ReflectionHandler</code> is a component that will
+              register itself to a HttpContext of the Http Facility and serve
+              incoming requests. Requests are decoded, delegated to the 
+              <code>ReflectionService</code> and the result returned is 
+              formatted into simple HTML.
+            </td>
+
+          </tr>
+          <tr row="even">
+            <td>model-registrator</td>
+            <td>org.apache.metro.facilities.reflector.impl.ModelRegistrator</td>
+            <td>
+              This small and simple component looks up the composition model
+              and adds the root model container as a root object to the 
+              <code>ReflectorService</code>, via the <code>addRootObject</code>
+              method.
+            </td>
+
+          </tr>
+          <tr row="odd">
+            <td>type-handler-array</td>
+            <td>org.apache.metro.facilities.reflector.typehandlers.ArrayTypeHandler</td>
+            <td>
+              A <code>TypeHandler</code> that handles java object arrays.
+            </td>
+
+          </tr>
+          <tr row="even">
+            <td>type-handler-collection</td>
+            <td>org.apache.metro.facilities.reflector.typehandlers.CollectionTypeHandler</td>
+            <td>
+              A <code>TypeHandler</code> that handles 
+              <code>java.util.Collection</code> implementations.
+            </td>
+
+          </tr>
+          <tr row="odd">
+            <td>type-handler-componentmodel</td>
+            <td>org.apache.metro.facilities.reflector.typehandlers.ComponentModelTypeHandler</td>
+            <td>
+              A <code>TypeHandler</code> that handles instances implementing
+              <code>org.apache.avalon.composition.model.CompositionModel</code>.
+            </td>
+
+          </tr>
+          <tr row="even">
+            <td>type-handler-dictionary</td>
+            <td>org.apache.metro.facilities.reflector.typehandlers.DictionaryTypeHandler</td>
+            <td>
+              A <code>TypeHandler</code> that handles java.util.Dictionary 
+              subclasses. Warning! The <code>java.util.Hashtable</code> is both 
+              a Dictionary subclass as well as implementing the Map interface. 
+              You should NOT use this <code>TypeHandler</code> unless you have 
+              other classes that extends the <code>java.util.Dictionary</code>
+              class.
+            </td>
+
+          </tr>
+          <tr row="odd">
+            <td>type-handler-map</td>
+            <td>org.apache.metro.facilities.reflector.typehandlers.MapTypeHandler</td>
+            <td>
+              A <code>TypeHandler</code> that handles instances of classes tha
+              implements <code>java.util.Map</code>.
+            </td>
+
+          </tr>
+          <tr row="even">
+            <td>type-handler-object</td>
+            <td>org.apache.metro.facilities.reflector.typehandlers.ObjectTypeHandler</td>
+            <td>
+              A <code>TypeHandler</code> that handles instances of all other 
+              java classes.
+            </td>
+
+          </tr>
+        </table>
+      </div>
+    </div>
+  </div><div class="footer"><span class="copyright">Copyright 2004, The Apache Software Foundation All rights reserved.</span><div class="views"><a class="viewlink" id="xmllink" href=""><img src="../../../../images/xml.gif" /></a></div></div></body></html>
\ No newline at end of file

Added: avalon/site/planet/facilities/reflector/index.html
==============================================================================
--- (empty file)
+++ avalon/site/planet/facilities/reflector/index.html	Thu Aug 19 06:59:57 2004
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Avalon Planet - Facilities</title><link type="text/css" rel="stylesheet" href="../../../styles/style.css" /></head><body><table class="logobar"><tr><td class="panelleft"><img alt="link" src="../../../images/feather.jpg" /></td><td class="panelmiddle"><div class="project">Avalon</div><div class="title">Avalon Planet - Facilities</div></td><td class="panelright" /></tr></table><div class="categorybar" dir="/planet/facilities/reflector"><a class="homecategory" href="../../../index.html">
+        Home
+      </a><a class="category-selected" href="../../../planet/components/index.html">Planet</a><a class="category" href="../../../products/runtime/index.html">Products</a><a class="category" href="../../../central/about/index.html">Central</a></div><div class="menubar"><div class="menu"><div class="menu"><div class="menu"><a class="menuitem" href="../../components/index.html">Components</a><a class="menuitem-selected" href="../../facilities/index.html">Facilities</a></div><a class="menuitem" href="../finder/index.html">Finder</a><a class="menuitem" href="../http.html">HTTP</a><a class="menuitem" href="../jmx.html">JMX</a></div><a class="menuitem-selected" href="index.html">Overview</a><a class="menuitem" href="using.html">Using</a><a class="menuitem" href="components/index.html">Components</a><a class="menuitem" href="blocks.html">Blocks</a></div></div><div class="content">
+    <div class="section"><span class="section-header">Reflector Facility</span>
+      <p>
+        The Reflector Facility (hereafter Reflector) is a troubleshooting
+        tool for the developer. By loading/installing the Reflector facility
+        it is possible to navigate the entire application, through the
+        getter methods, 
+        e.g. <pre class="source">public SomeType getSomeMember()</pre><div class="source-title"><span class="source-title" /></div>. It is also 
+        possible to set values through setter methods, 
+        e.g. <pre class="source">public void setSomeMember( SomeType value );</pre><div class="source-title"><span class="source-title" /></div>
+        In fact, it is even possible to instantiate new java objects and
+        assign them, but this should be done with extreme care.
+      </p>
+      <div class="subsection"><span class="subsection-header">Components</span>
+        <p>
+          The Reflector consists of a fair number of components. It is also
+          designed so that additional special-case types can have their own
+          type handlers, just like special treatment is given to Collection,
+          Map, Dictionary, arrays and ComponentModel instances.
+        </p>
+        <p>
+          You can read more about each component 
+          <a class="doclink" href="components/index.html">here</a>.
+        </p>
+      </div>
+      <div class="subsection"><span class="subsection-header">Blocks</span>
+        <p>
+          Two blocks has been prepared for instant use. The Standard block
+          does not include the Http server in the Http facility, but the
+          Complete block does. You should use the Standard block if you
+          have an Http Facility running for other purposes.
+        </p>
+        <p>
+          You can read more about each block
+          <a class="doclink" href="blocks/index.html">here</a>.
+        </p>
+      </div>
+    </div>
+  </div><div class="footer"><span class="copyright">Copyright 2004, The Apache Software Foundation All rights reserved.</span><div class="views"><a class="viewlink" id="xmllink" href=""><img src="../../../images/xml.gif" /></a></div></div></body></html>
\ No newline at end of file

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