hammant     2002/10/12 05:10:23

  Modified:    docs/framework/diagrams index.html
               docs/framework features.html for-developers-changes.html
                        for-developers-project-structure.html
                        getting-started.html guide-cop-in-avalon.html
                        guide-cop-what-is.html
                        guide-oop-best-practices.html
                        guide-patterns-in-avalon.html
                        guide-patterns-ioc-security.html
                        guide-patterns-ioc.html guide-patterns-soc.html
                        guide-patterns-soii.html
                        guide-patterns-what-are.html
                        guide-where-to-go-from-here.html index.html
                        reference-containers.html
                        reference-the-lifecycle.html
  Log:
  A-F updated to 4.1.3
  
  Revision  Changes    Path
  1.6       +1 -22     jakarta-avalon-site/docs/framework/diagrams/index.html
  
  Index: index.html
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-site/docs/framework/diagrams/index.html,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- index.html        2 Apr 2002 12:12:35 -0000       1.5
  +++ index.html        12 Oct 2002 12:10:22 -0000      1.6
  @@ -1,22 +1 @@
  -<html>
  -<head>
  -<title>Avalon Framework</title>
  -<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  -</head>
  -
  -<body bgcolor="#FFFFFF">
  -<table width="100%" border="0" cellspacing="1" cellpadding="1">
  -    <tr>
  -        <td><img src="images/header.gif" width="300" height="85" 
align="right"></td>
  -    </tr>
  -</table>
  -<hr size=1 width=100%>
  -<b><font face="Arial, Helvetica, sans-serif">Package (from 
<tt>org.apache.avalon</tt>)</font></b><br>
  -<br>
  -<a href="framework.html"><img src="images/uml/package_avalon.png" 
width="104" height="81" border="0"></a><br>
  -<br>
  -<hr size=1 width=100%>
  -<center>Diagrams created by Dieter Wimberger <em>&lt;wimpi at 
oeh.unileoben.ac.at&gt;</em></center>
  -<hr size=1 width=100%>
  -</body>
  -</html>
  +<html><head><title>Resource not Found</title><STYLE><!--H1{font-family : 
sans-serif,Arial,Tahoma;color : white;background-color : #0086b2;} 
BODY{font-family : sans-serif,Arial,Tahoma;color : black;background-color : 
white;} B{color : white;background-color : #0086b2;} HR{color : #0086b2;} 
--></STYLE> </head><body><h1>Cocoon 2 - Resource not Found</h1><hr size="1" 
noshade="noshade"/><p><b>type</b> resource-not-found</p><p><b>message</b> 
<u>Page Not Available.</u></p><p><b>description</b> <u>The requested resource 
couldn't be found.</u></p><p><b>sender</b> 
org.apache.cocoon.Main</p><p><b>source</b> Cocoon commandline 
(Main.java)</p><p><b>request-uri</b><pre>framework/diagrams/</pre></p><p><b>missing-file</b><pre>build\docs\framework\diagrams\index.html</pre></p><hr
 size="1" noshade="true"/></body></html>
  \ No newline at end of file
  
  
  
  1.6       +15 -1     jakarta-avalon-site/docs/framework/features.html
  
  Index: features.html
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-site/docs/framework/features.html,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- features.html     26 Jul 2002 15:06:50 -0000      1.5
  +++ features.html     12 Oct 2002 12:10:22 -0000      1.6
  @@ -6,20 +6,34 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Features</h1><h2></h2></div><div 
class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Features</h1><h2></h2></div><div 
class="h3">
  +
     
  +
     
  +
       <div class="h3"><h3>Features</h3></div>
  +
         <p>
  +
           Avalon Framework its features are not easy to describe in a bulleted
  +
           list, as it doesn't "do" anything by itself. Instead, it will enable
  +
           you to build better, more stable, more secure, reusable applications
  +
           and components, because it defines the best solution for complex
  +
           programming problems for you. 
  +
         </p>
  +
       
  +
     
  +
     
  +
   <div id="authors" align="right">by&nbsp;Leo 
Simons</div></div></div></div></td></tr></tbody></table><div id="footer"><table 
width="100%" cellpadding="4" cellspacing="0" border="0"><tbody><tr><td 
align="left">Copyright &copy; 1999-2002 Apache Software Foundation. All Rights 
Reserved.</td><td></td><td align="right"><script language="JavaScript">
                             <!--
                                     document.write("last modified: " + 
document.lastModified);
  
  
  
  1.6       +8 -8      
jakarta-avalon-site/docs/framework/for-developers-changes.html
  
  Index: for-developers-changes.html
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-site/docs/framework/for-developers-changes.html,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- for-developers-changes.html       16 Sep 2002 22:30:39 -0000      1.5
  +++ for-developers-changes.html       12 Oct 2002 12:10:22 -0000      1.6
  @@ -6,9 +6,9 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - History of 
Changes</h1><h2></h2></div><div class="h3"><div class="h3"><h3>Avalon Framework 
- History of Changes</h3></div>
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - History of 
Changes</h1><h2></h2></div><div class="h3"><div class="h3"><h3></h3></div>
     
  -  <div class="h4"><h4>4.1.2 (January 31, 2002)</h4></div><ul>
  +  <div class="h4"><h4> 4.1.2 (January 31, 2002)</h4></div><ul>
       <li><img border="0" alt="udpate" src="images/udpate.jpg">
         Updated the build jars.
       (BL)</li>
  @@ -25,14 +25,14 @@
         true by default).
       (LM)</li>
     </ul>
  -  <div class="h4"><h4>4.1.1 (December 21, 2001)</h4></div><ul>
  +  <div class="h4"><h4> 4.1.1 (December 21, 2001)</h4></div><ul>
       <li><img border="0" alt="fix" src="images/fix.jpg">
         Force build process to produce JDK 1.2 compliant class files.
         The last release had JDK 1.4 compliant class files, causing
         some classloaders to not work with the Framework.
       (BL)</li>
     </ul>
  -  <div class="h4"><h4>4.1 (December 12, 2001)</h4></div><ul>
  +  <div class="h4"><h4> 4.1 (December 12, 2001)</h4></div><ul>
       <li><img border="0" alt="update" src="images/update.jpg">
         Improve and update the configuration javadocs to reflect the new
         namespace support.
  @@ -104,7 +104,7 @@
         and ValuedEnum were being incorrectly used.
       (JT)</li>
     </ul>
  -  <div class="h4"><h4>4.0 (July 30, 2001)</h4></div><ul>
  +  <div class="h4"><h4> 4.0 (July 30, 2001)</h4></div><ul>
       <li><img border="0" alt="add" src="images/add.jpg">
         Added new method to Component Manager and Selector for discovering
         if a Component exists inside or not.  Also augmented the default
  @@ -140,7 +140,7 @@
         Update documentation so that it is more accurate and descriptive.
       (BL)</li>
     </ul>
  -  <div class="h4"><h4>4.0b3 (June 6, 2001)</h4></div><ul>
  +  <div class="h4"><h4> 4.0b3 (June 6, 2001)</h4></div><ul>
       <li><img border="0" alt="update" src="images/update.jpg">
         Release 4.0b3
       (BL)</li>
  @@ -150,7 +150,7 @@
         practices by clients.
       (PD)</li>
     </ul>
  -<div class="h4"><h4>4.0b2 (June 4, 2001)</h4></div><ul>
  +<div class="h4"><h4> 4.0b2 (June 4, 2001)</h4></div><ul>
     <li><img border="0" alt="update" src="images/update.jpg">
       Release 4.0b2
     (BL)</li>
  @@ -170,7 +170,7 @@
       Updated javadocs for Framework.
     (PD)</li>
   </ul>
  -<div class="h4"><h4>4.0b1 (May 11, 2001)</h4></div><ul>
  +<div class="h4"><h4> 4.0b1 (May 11, 2001)</h4></div><ul>
     <li><img border="0" alt="update" src="images/update.jpg">
       Official release
     (BL)</li>
  
  
  
  1.4       +1 -1      
jakarta-avalon-site/docs/framework/for-developers-project-structure.html
  
  Index: for-developers-project-structure.html
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-site/docs/framework/for-developers-project-structure.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- for-developers-project-structure.html     26 Jul 2002 15:06:50 -0000      
1.3
  +++ for-developers-project-structure.html     12 Oct 2002 12:10:22 -0000      
1.4
  @@ -6,7 +6,7 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Project Structure</h1><h2></h2></div><div 
class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Project Structure</h1><h2></h2></div><div 
class="h3">
     
     
         <div class="h3"><h3>Introduction</h3></div>
  
  
  
  1.4       +31 -1     jakarta-avalon-site/docs/framework/getting-started.html
  
  Index: getting-started.html
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-site/docs/framework/getting-started.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- getting-started.html      26 Jul 2002 15:06:50 -0000      1.3
  +++ getting-started.html      12 Oct 2002 12:10:22 -0000      1.4
  @@ -6,36 +6,66 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Getting Started</h1><h2></h2></div><div 
class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Getting Started</h1><h2></h2></div><div 
class="h3">
  +
     
  +
     
  +
       <div class="h3"><h3>Introduction</h3></div>
  +
         <p>If you are completely new to Avalon, the Framework subproject is not
  +
         the easiest place to start. We suggest you take a look at the
  +
         <a 
href="http://jakarta.apache.org/avalon/phoenix/getting-started.html";>Avalon 
Phoenix getting started document</a>
  +
         first, as it will take you through downloading, installing and then
  +
         running something (a very simple server program) much more 
concrete.</p>
   
  +
  +
         <p>Probably the next smart step is to learn by example. Take a look at
  +
         one or two of the <a 
href="http://jakarta.apache.org/avalon/apps";>applications</a>
  +
         that use avalon and at how well these are set up, and at some of the
  +
         available <a 
href="http://jakarta.apache.org/avalon/excalibur";>components (in Excalibur)</a>
  +
         and <a href="http://jakarta.apache.org/avalon/cornerstone";>services 
(in Cornerstone)</a>
  +
         Avalon offers.</p>
   
  +
  +
         <p>You will find that the Framework has an important role in each and
  +
         every one of these. To learn what that role is and how it fulfills this
  +
         role, you should read our guide, which starts with a summary of
  +
         <a href="guide-oop-best-practices.html">OOP best practices</a>.</p>
   
  +
  +
         <p>When you get stuck in sources, documentation, and the mailing list 
archive,
  +
         post your questions to the mailing list (information on it is
  +
         <a href="http://jakarta.apache.org/site/mail.html";>here</a>). For
  +
         many, Avalon poses a steep learning curve, and we'll try and help you
  +
         flatten it as much as we can.</p>
  +
       
  +
     
  +
     
  +
   <div id="authors" align="right">by&nbsp;Leo 
Simons</div></div></div></div></td></tr></tbody></table><div id="footer"><table 
width="100%" cellpadding="4" cellspacing="0" border="0"><tbody><tr><td 
align="left">Copyright &copy; 1999-2002 Apache Software Foundation. All Rights 
Reserved.</td><td></td><td align="right"><script language="JavaScript">
                             <!--
                                     document.write("last modified: " + 
document.lastModified);
  
  
  
  1.4       +2 -2      
jakarta-avalon-site/docs/framework/guide-cop-in-avalon.html
  
  Index: guide-cop-in-avalon.html
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-site/docs/framework/guide-cop-in-avalon.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- guide-cop-in-avalon.html  26 Jul 2002 15:06:50 -0000      1.3
  +++ guide-cop-in-avalon.html  12 Oct 2002 12:10:22 -0000      1.4
  @@ -6,7 +6,7 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - COP in 
Avalon</h1><h2></h2></div><div class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - COP in 
Avalon</h1><h2></h2></div><div class="h3">
     
     
       <div class="h3"><h3>Components in Avalon</h3></div>
  @@ -292,7 +292,7 @@
        </p>
        <p>
                For a list of containers implementations,
  -             <a href="reference-containers.xml">look here</a>.
  +             <a href="reference-containers.xml.html">look here</a>.
        </p>
       
     
  
  
  
  1.4       +1 -1      jakarta-avalon-site/docs/framework/guide-cop-what-is.html
  
  Index: guide-cop-what-is.html
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-site/docs/framework/guide-cop-what-is.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- guide-cop-what-is.html    26 Jul 2002 15:06:50 -0000      1.3
  +++ guide-cop-what-is.html    12 Oct 2002 12:10:22 -0000      1.4
  @@ -6,7 +6,7 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - What is 
COP?</h1><h2></h2></div><div class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - What is 
COP?</h1><h2></h2></div><div class="h3">
     
     
       <div class="h3"><h3>Introduction</h3></div> 
  
  
  
  1.4       +181 -1    
jakarta-avalon-site/docs/framework/guide-oop-best-practices.html
  
  Index: guide-oop-best-practices.html
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-site/docs/framework/guide-oop-best-practices.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- guide-oop-best-practices.html     26 Jul 2002 15:06:50 -0000      1.3
  +++ guide-oop-best-practices.html     12 Oct 2002 12:10:22 -0000      1.4
  @@ -6,186 +6,366 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - OOP best 
practices</h1><h2></h2></div><div class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - OOP best 
practices</h1><h2></h2></div><div class="h3">
  +
     
  +
     
  +
       <div class="h3"><h3>Introduction</h3></div>
  +
         <p>
  +
           While Avalon is not really about Object-Oriented Programming (OOP)
  +
           (we go much further), some of its concepts are important in
  +
           any programming project, so we summarise the 12 rules for code reuse
  +
           as given in
  +
           <a href="http://www.laputan.org/drc/drc.html";>
  +
             "Designing Reusable Classes"
  +
           </a> by Ralph E. Johnson and Brian Foote (an excellent book).
  +
         </p>
   
  +
  +
         <p>
  +
           Note that a good knowledge of the basic OOP concepts is a requirment 
for
  +
           understanding any of this. Many books deal with this, one that is 
freely
  +
           available online is
  +
           <a href="http://www.mindview.net/Books/TIJ/";>
  +
             "Thinking in Java"
  +
           </a> by Bruce Eckel (also a recommended read).
  +
         </p>
  +
       
  +
       <div class="h3"><h3>Recursion Introduction</h3></div>
  +
         <p>
  +
           Use the same interface for communication with components of
  +
           the same type.  It allows the swapping of those components
  +
           for other components of the same type without breaking existing
  +
           code.
  +
         </p>
  +
         <p>
  +
           If you need additional functionality, either create proxy
  +
           objects that implement the interface, or add it by subclassing
  +
           (hence the name "Recursion Introduction".  Even if
  +
           there is no recursion happening, it appears to operate in the
  +
           same manner.
  +
         </p>
  +
       
  +
       <div class="h3"><h3>Eliminate Case Analysis</h3></div>
  +
         <p>
  +
           Avoid testing to see if an object is an instance of a particular
  +
           class.  Usually, if you think you need that approach then a
  +
           redesign will help immensely.
  +
         </p>
  +
       
  +
       <div class="h3"><h3>Reduce the Number of Arguments</h3></div>
  +
         <p>
  +
           Methods with a half-dozen arguments are hard to read, and can
  +
           usually be accomplished with an object that represents that
  +
           set of arguments.  It also makes it easier to track down the
  +
           problems.
  +
         </p>
  +
       
  +
       <div class="h3"><h3>Reduce the Size of Methods</h3></div>
  +
         <p>
  +
           Most of your methods should only need to be a few lines long.
  +
           Methods that are very long (like 50 lines or so) are too complex,
  +
           and should be considered guilty of bad design until proven
  +
           innocent.
  +
         </p>
  +
       
  +
       <div class="h3"><h3>The Top of the Class Heirarchy Should be 
Abstract</h3></div>
  +
         <p>
  +
           In many cases it is beneficial to provide an abstract base class 
  +
           to extend for your specializations.  The majority of the 
  +
           functionality and behavior is well defined. This makes it easier
  +
           to decipher what the intents of the interface designer were.
  +
         </p>
  +
       
  +
       <div class="h3"><h3>Minimize Accesses to Variables</h3></div>
  +
         <p>
  +
           This point formalizes the principles of data hiding.  Try not
  +
           to expose class attributes to other classes, but protect them
  +
           by methods.  If an attribute changes name, then you only have
  +
           one place to update the code instead of hundreds.
  +
         </p>
  +
       
  +
       <div class="h3"><h3>Subclasses Should be Specializations</h3></div>
  +
         <p>
  +
           A [subclass] "is a" [superclass].  If what you
  +
           are trying to do is make a Component into a ComponentManager,
  +
           then you are violating the spirit of the framework.  A better
  +
           approach is to use containment in that case (i.e. a [class]
  +
           "has a" [external class]).
  +
         </p>
  +
       
  +
       <div class="h3"><h3>Split Large Classes</h3></div>
  +
         <p>
  +
           If a class has 50+ methods, then it is most likely trying to
  +
           do too much.  Look at separating the functionality into
  +
           separate components.  Like methods that are too long, classes
  +
           that violate this rule should be considered guilty of wrong
  +
           design until proven innocent.
  +
         </p>
  +
       
  +
       <div class="h3"><h3>Factor Implementation Differences Into 
Subcomponents</h3></div>
  +
         <p>
  +
           If a subclass implements a method completely different from
  +
           the superclass, then it is not really a specialization.  It
  +
           should be split off from that class hierarchy tree.
  +
         </p>
  +
       
  +
       <div class="h3"><h3>Separate Methods that Do Not Communicate</h3></div>
  +
         <p>
  +
           Sometimes in building a framework you run into a case where
  +
           you have different views of the same data.  In these cases,
  +
           you can have some attributes that describe how to generate
  +
           the data, and some attributes that describe the data itself.
  +
           It is better to separate these two views into separate classes.
  +
           The semantics are different enough to justify this solution.
  +
         </p>
  +
       
  +
       <div class="h3"><h3>Send Messages to Components instead of to 
This</h3></div>
  +
         <p>
  +
           The point of this point is that you want to build your framework
  +
           based on Components, and not inheritance.  Avalon takes this
  +
           point to heart.  In order to illustrate, I will give two examples
  +
           of the same thing.  The scenario is that we have a data structure
  +
           that we want to output to an arbitrary format.
  +
         </p>
  +
         <p>
  +
           In the following example, we will use the java <code>this</code>
  +
           object and an inheritance based framework.  As you can see, this
  +
           would be a bear to maintain, and it won't easily be extended.
  +
         </p>
  +
         <pre>
  +
   abstract class AbstractExampleDocument 
  +
   {
  +
     // skip some code ...
  +
   public void output(Example structure) 
  +
   {
  +
       if( null != structure )
  +
       {
  +
         this.format( structure );
  +
       }
  +
   }
   
  +
  +
     protected void format(Example structure);
  +
   }
  +
         </pre>
  +
         <p>
  +
           In the next example, we will use the Avalon Component based
  +
           architecture.  There is a clean separation between the purpose
  +
           of the objects, and you can exchange and extend formatting
  +
           without worrying about any other concerns.
  +
         </p>
  +
         <pre>
  +
   class DefaultExampleDocument 
  +
   {
  +
   // skip some code ...
  +
   public void output(Example structure) 
  +
   {
  +
      ExampleFormatter formatter = 
  +
        (ExampleFormatter) manager.lookup(Roles.FORMATTER);
  +
      if( null != structure ) 
  +
      {
  +
        formatter.format(structure);
  +
      }
  +
   }
  +
   }
  +
         </pre>
  +
         <p>
  +
           An inheritance based framework (White Box) can be converted
  +
           into a component based framework (Black Box) structure by
  +
           replacing overridden methods by method calls (message sends)
  +
           to components.  Component based architecture is much more
  +
           flexible in this regard.
  +
         </p>
  +
       
  +
       <div class="h3"><h3>Eliminate Implicit Parameter Passing</h3></div>
  +
         <p>
  +
           Just because two methods share the same information within the
  +
           class does not mean that it should be done in that manner.
  +
           Many times, that attribute that is shared should be passed
  +
           as a parameter of the method instead of directly accessing
  +
           the attribute.
  +
         </p>
  +
       
  +
     
  +
     
  +
   <div id="authors" align="right">by&nbsp;Leo 
Simons</div></div></div></div></td></tr></tbody></table><div id="footer"><table 
width="100%" cellpadding="4" cellspacing="0" border="0"><tbody><tr><td 
align="left">Copyright &copy; 1999-2002 Apache Software Foundation. All Rights 
Reserved.</td><td></td><td align="right"><script language="JavaScript">
                             <!--
                                     document.write("last modified: " + 
document.lastModified);
  
  
  
  1.5       +1 -1      
jakarta-avalon-site/docs/framework/guide-patterns-in-avalon.html
  
  Index: guide-patterns-in-avalon.html
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-site/docs/framework/guide-patterns-in-avalon.html,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- guide-patterns-in-avalon.html     26 Jul 2002 15:06:50 -0000      1.4
  +++ guide-patterns-in-avalon.html     12 Oct 2002 12:10:22 -0000      1.5
  @@ -6,7 +6,7 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - Patterns in 
Avalon</h1><h2></h2></div><div class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - Patterns in 
Avalon</h1><h2></h2></div><div class="h3">
     
     
       <div class="h3"><h3>Getting Started with Patterns</h3></div>
  
  
  
  1.4       +182 -1    
jakarta-avalon-site/docs/framework/guide-patterns-ioc-security.html
  
  Index: guide-patterns-ioc-security.html
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-site/docs/framework/guide-patterns-ioc-security.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- guide-patterns-ioc-security.html  26 Jul 2002 15:06:50 -0000      1.3
  +++ guide-patterns-ioc-security.html  12 Oct 2002 12:10:22 -0000      1.4
  @@ -6,187 +6,368 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - Security 
Concerns</h1><h2></h2></div><div class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - Security 
Concerns</h1><h2></h2></div><div class="h3">
  +
     
  +
     
  +
       <div class="h3"><h3>Introduction</h3></div>
  +
         <p>
  +
           One major concern for many companies is the security of a system.
  +
           In this context security is defined as protection of data, and
  +
           quality of service (QOS).  Both of these fall under security because
  +
           a system must protect itself from these two forms of attack.  When
  +
           a company loses a system, they lose business, and the money they
  +
           lose can reach scary amounts.
  +
         </p>
  +
         <p>
  +
           For the purpose of this discussion, we will address the first
  +
           aspect (protection from crackers and system infiltration).  Many
  +
           times, the same fixes for this type of protection inherently fix
  +
           the other (QOS).  System security has three distinct concerns
  +
           that have been well defined: authentication, authorization, and
  +
           architecture.  Why didn't I say encryption?  It is because
  +
           encryption does not equal security.  It is only part of the whole
  +
        system.
  +
         </p>
  +
         <div class="h4"><h4>Authentication</h4></div>
  +
           <p>
  +
             Authentication is the process of identifying parties.  In a 
completely
  +
             trusted system, authentication is as simple as grabbing a reference
  +
             to the object or entity you want to manipulate.  However, sometimes
  +
             you have trusted systems running in hostile environments (e.g. the
  +
             internet).  In those cases you have to make sure that the entity
  +
             is the correct one.
  +
           </p>
  +
           <p>
  +
             There are two sides of authentication.  On one side, you are
  +
             authenticating an entity you want to do business with.  On the 
other
  +
             side, there is an entity wanting to do business with you.  This is
  +
             best understood when you bring it into a financial realm.  Let's 
say
  +
             you want to get a loan from XYZ bank.  If you initiate the exchange
  +
             at their facility, you have already authenticated them--although 
you
  +
             will have to jump through hoops to authenticate yourself.  If a
  +
             telemarketer calls from ACME Loan Machine, Inc., they know who you
  +
             are--although if you are smart, you will make them jump through
  +
             hoops to authenticate themselves.
  +
           </p>
  +
           <p>
  +
             Currently, Avalon identifies Blocks as trusted parties.  In other
  +
             words, the fact that they are installed correctly in the proper
  +
             directory is enough to mark them as authenticated.  Much like a
  +
             good friend--you know them by their voice.  Because of the 
architecture
  +
             of Avalon, Blocks define their own authentication system.  That
  +
             means that whether the Block assumes all Components are trusted
  +
             or it forces the blocks to authenticate themselves is up to the
  +
             block.
  +
           </p>
  +
           <p>
  +
             For systems that deal with sensitive information, authentication
  +
             becomes more of an issue.  You must validate that the Components
  +
             in use are the ones you have authorized for use.  The more open a
  +
             system is, the more authentication and authorization play an 
important
  +
             role.  If you have Components that are transmitted over some form
  +
             of communications system (wire, air, etc.) you must verify that
  +
             they are who they say they are.
  +
           </p>
  +
           <p>
  +
             For this purpose, protocols like Kerberos and Leighton-Micali have
  +
             been defined.  It is beyond the scope of this page to discuss the
  +
             pros and cons of each system.
  +
           </p>
  +
         
  +
         <div class="h4"><h4>Authorization</h4></div>
  +
           <p>
  +
             Once a Component has been authenticated (in other words it's 
identity
  +
             has been authoritatively validated), then you must decide what 
access
  +
             it has to your systems.  A fully trusted Component can do what it 
likes.
  +
             An untrusted Component must be denied functions it is not allowed.
  +
           </p>
  +
           <p>
  +
             Authorization is part of the architecture, but is significant 
enough
  +
             to warrant it's own concern.  The best rule of thumb is to hide 
access
  +
             to everything unless the Component is trusted.  When hiding is not
  +
             an option, then you have to resort to denying access.  For the 
security
  +
             conscious, all denied accesses should be logged along with the 
Component's
  +
             identifier.
  +
           </p>
  +
         
  +
         <div class="h4"><h4>Architecture</h4></div>
  +
           <p>
  +
             Avalon already has the framework for the proper secure 
architecture.
  +
             With proper planning, security can be added without recoding the 
Components.
  +
             However there are some rules of thumb for paranoid programming.
  +
           </p>
  +
           <blockquote><ol>
  +
             <li>
  +
               Never expose anything that does not need to be exposed.  
Information
  +
               hiding is as important in security as it is in Component
  +
               Oriented Programming (COP).
  +
             </li>
  +
             <li>
  +
               Any Component that originates from your own jar should be 
trusted--you
  +
               provided it after all.
  +
             </li>
  +
             <li>
  +
               Any Component that originates from another source, and 
especially over
  +
               a wire, should be treated with suspicion.  Authenticate it, and 
if it
  +
               checks out, trust it.  Otherwise, don't give it access--you 
don't know
  +
               where it's been or who created it.
  +
             </li>
  +
             <li>
  +
               Encrypt <b>all</b> communications.  Period.
  +
             </li>
  +
           </ol></blockquote>
  +
         
  +
       
  +
       <div class="h3"><h3>From the Sublime to the Ridiculous</h3></div>
  +
         <p>
  +
           Throughout my short career I have been exposed to a wide range of 
security
  +
           implementations.  Having worked for a DoD contractor, I learned 
about physical
  +
           security requirements (how to manage paper files, and the rules and 
regulations
  +
           regarding secure information).  However in a recent attempt to 
install a
  +
           solution at our customer's site, I learned more about computer 
security
  +
           than I have at any other time.
  +
         </p>
  +
         <p>
  +
           Our customer, a well known corporation whom I will call ACME for
  +
           anonymity, is in custody of sensitive information.  Product movement 
data,
  +
           financial data, and demographic data are all stored in one of a 
couple
  +
           huge server farms.  Our application was to reside in the 
De-Militarize
  +
           Zone (DMZ), and talk to a database behind the firewall.  When they 
discovered
  +
           that the application server we chose required Remote Procedure Calls 
(the
  +
           subject of many CERT advisories in the Unix world), we hit a brick 
wall.  Our
  +
           application was no longer trusted, and was not to be installed.  
Luckily
  +
           the next version of the application server fixed that problem.
  +
         </p>
  +
         <p>
  +
           In the midst of this, I decided to learn as much as I could about 
operating
  +
           in a hardened environment.  Hardening involves turning off access to 
anything
  +
           that is not needed, and only allowing what is needed.  All mail 
servers, ftp
  +
           servers, rpc services, telnet, and any other clear text 
communications ports need
  +
           to be removed.  All communication into and out of the box needs to be
  +
           encrypted, with the exception of HTTP (although we were using HTTPS).
  +
         </p>
  +
         <p>
  +
           All of this was necessary.  I understand the principles behind it.  
However,
  +
           I decided to ask their security analyst how to learn more--so we 
don't run
  +
           into this problem again.  He gave me a link to
  +
           <a href="http://www.sans.org";>SANS institute</a> and a word of
  +
           advice: "Be paranoid.  Don't trust anything."
  +
         </p>
  +
         <p>
  +
           There is a point where the aforementioned philosophy goes a bit too 
far.  The
  +
           case in point relates to a story I heard working with the DoD.  
During the
  +
           height of the "Cold War" between the US and Russia, a US commanding
  +
           officer required that all the computers be placed on these huge power
  +
           conditioners to reduce the Electro-Magnetic Interference (EMI) 
coming from the
  +
           power line feedback of the computers.  His rationalization was that 
he was
  +
        positive KGB agents had the technology that they could read the EMI 
interference
  +
        on the power lines and read the bits on the computers.  In hind sight 
this is
  +
        improbable; no one can identify the bits travelling on a computer from 
EMI in the
  +
        power lines due to the level of noise (clocks, addressing lines,
  +
        <i>encrypted data</i>, and other computers on the network).
  +
         </p>
  +
         <p>
  +
           The security industry have a general rule of thumb to ensure that 
you don't spend
  +
        too much time in this area:  The cost of cracking the server should
  +
           be more than
  +
        the information that is protected is worth.  Basically it boils down to 
this:
  +
        sites like Slashdot and SourceForge do not require as much security as 
a Bank.
  +
        Protecting free information is not as critical as protecting peoples 
bank accounts.
  +
        I am not minimizing the contributions of the aforementioned sites to 
the world
  +
        as a whole, but people become much more agitated if their bank account 
is wiped
  +
        clean than if their news article is defaced.  This is not to say that 
if you are
  +
        protecting free information then you can safely ignore security.  While 
the information
  +
        is monetarily free to customers, it has value that can be measured in 
pride, respect,
  +
        and accountability.
  +
         </p>
  +
         <p>
  +
           The moral of the story is be paranoid to a point.  Avalon is 
designed to be
  +
           a trusted system, and will be improved to work in an untrusted 
network.
  +
         </p>
  +
       
  +
     
  +
     
  +
   <div id="authors" align="right">by&nbsp;Berin 
Loritsch</div></div></div></div></td></tr></tbody></table><div 
id="footer"><table width="100%" cellpadding="4" cellspacing="0" 
border="0"><tbody><tr><td align="left">Copyright &copy; 1999-2002 Apache 
Software Foundation. All Rights Reserved.</td><td></td><td 
align="right"><script language="JavaScript">
                             <!--
                                     document.write("last modified: " + 
document.lastModified);
  
  
  
  1.4       +1 -1      
jakarta-avalon-site/docs/framework/guide-patterns-ioc.html
  
  Index: guide-patterns-ioc.html
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-site/docs/framework/guide-patterns-ioc.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- guide-patterns-ioc.html   26 Jul 2002 15:06:50 -0000      1.3
  +++ guide-patterns-ioc.html   12 Oct 2002 12:10:22 -0000      1.4
  @@ -6,7 +6,7 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - Inversion of 
Control</h1><h2></h2></div><div class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - Inversion of 
Control</h1><h2></h2></div><div class="h3">
     
     
       <div class="h3"><h3>Introduction</h3></div>
  
  
  
  1.4       +1 -1      
jakarta-avalon-site/docs/framework/guide-patterns-soc.html
  
  Index: guide-patterns-soc.html
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-site/docs/framework/guide-patterns-soc.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- guide-patterns-soc.html   26 Jul 2002 15:06:50 -0000      1.3
  +++ guide-patterns-soc.html   12 Oct 2002 12:10:22 -0000      1.4
  @@ -6,7 +6,7 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - Multi Dimensional Separation of 
Concerns</h1><h2></h2></div><div class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - Multi Dimensional Separation of 
Concerns</h1><h2></h2></div><div class="h3">
     
     
       <div class="h3"><h3>Introduction</h3></div>
  
  
  
  1.4       +1 -1      
jakarta-avalon-site/docs/framework/guide-patterns-soii.html
  
  Index: guide-patterns-soii.html
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-site/docs/framework/guide-patterns-soii.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- guide-patterns-soii.html  26 Jul 2002 15:06:50 -0000      1.3
  +++ guide-patterns-soii.html  12 Oct 2002 12:10:22 -0000      1.4
  @@ -6,7 +6,7 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - Separation of Interface and 
Implementation</h1><h2></h2></div><div class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - Separation of Interface and 
Implementation</h1><h2></h2></div><div class="h3">
     
     
       <div class="h3"><h3>Introduction</h3></div>
  
  
  
  1.4       +37 -1     
jakarta-avalon-site/docs/framework/guide-patterns-what-are.html
  
  Index: guide-patterns-what-are.html
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-site/docs/framework/guide-patterns-what-are.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- guide-patterns-what-are.html      26 Jul 2002 15:06:50 -0000      1.3
  +++ guide-patterns-what-are.html      12 Oct 2002 12:10:22 -0000      1.4
  @@ -6,42 +6,78 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - What are Design 
Patterns?</h1><h2></h2></div><div class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - What are Design 
Patterns?</h1><h2></h2></div><div class="h3">
  +
     
  +
     
  +
       <div class="h3"><h3>Getting Started with Patterns</h3></div>
  +
         <p>
  +
           I highly recommend reading the 
  +
           <a 
href="http://www6.software.ibm.com/developerworks/education/j-patterns/index.html";>
  +
             "Java Design patterns 101"
  +
           </a> tutorial, and its follow-up
  +
           <a 
href="http://www6.software.ibm.com/developerworks/education/j-patterns201/index.html";>
  +
             "Java Design patterns 201"
  +
           </a>, if you are unfamiliar with the concept of Design Patterns (and
  +
           see below for more information). Note that you have to register at 
the
  +
           IBM DeveloperWorks site in order to read these, but that's a good 
idea
  +
           anyway.
  +
         </p>
  +
       
  +
       <div class="h3"><h3>Where to learn more</h3></div>
  +
         <p>
  +
           You can find more information about patterns from the following 
links:
  +
         </p>
  +
         <blockquote><ol>
  +
           <li>Brian Foote's <a 
href="http://www.laputan.org/foote/papers.html";>Pattern documents</a></li>
  +
           <li><a 
href="http://www6.software.ibm.com/developerworks/education/j-patterns/index.html";>
  +
             "Java Design patterns 101"
  +
           </a> at DeveloperWorks</li>
  +
                <li><a 
href="http://www6.software.ibm.com/developerworks/education/j-patterns201/index.html";>
  +
             "Java Design patterns 201"
  +
           </a> at DeveloperWorks</li>
  +
                <li><a 
href="http://cseng.aw.com/book/0,3828,0201633612,00.html";>
  +
             "Java Design patterns: Elements of Reusable Object-Oriented 
Software"
  +
           </a> by the GoF (printed book)</li>
  +
         </ol></blockquote>
  +
       
  +
     
  +
     
  +
   <div id="authors" align="right">by&nbsp;Berin Loritsch,&nbsp;Leo 
Simons</div></div></div></div></td></tr></tbody></table><div id="footer"><table 
width="100%" cellpadding="4" cellspacing="0" border="0"><tbody><tr><td 
align="left">Copyright &copy; 1999-2002 Apache Software Foundation. All Rights 
Reserved.</td><td></td><td align="right"><script language="JavaScript">
                             <!--
                                     document.write("last modified: " + 
document.lastModified);
  
  
  
  1.4       +1 -1      
jakarta-avalon-site/docs/framework/guide-where-to-go-from-here.html
  
  Index: guide-where-to-go-from-here.html
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-site/docs/framework/guide-where-to-go-from-here.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- guide-where-to-go-from-here.html  26 Jul 2002 15:06:50 -0000      1.3
  +++ guide-where-to-go-from-here.html  12 Oct 2002 12:10:22 -0000      1.4
  @@ -6,7 +6,7 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - Where to go 
next</h1><h2></h2></div><div class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Guide - Where to go 
next</h1><h2></h2></div><div class="h3">
     
     
       <div class="h3"><h3>There's a lot more to study</h3></div>
  
  
  
  1.18      +2 -2      jakarta-avalon-site/docs/framework/index.html
  
  Index: index.html
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-site/docs/framework/index.html,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- index.html        26 Jul 2002 15:06:50 -0000      1.17
  +++ index.html        12 Oct 2002 12:10:22 -0000      1.18
  @@ -6,7 +6,7 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Overview</h1><h2></h2></div><div 
class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Overview</h1><h2></h2></div><div 
class="h3">
     
     
       <div class="h3"><h3>Introduction</h3></div>
  @@ -64,7 +64,7 @@
           <p>
              Besides the
              <a 
href="http://jakarta.apache.org/avalon/api/index.html";>Javadocs</a>, we have
  -           <a href="diagrams/">Class diagrams</a>, the
  +           <a href="diagrams/index.html">Class diagrams</a>, the
              <a href="reference-the-lifecycle.html">Lifecycle 
specification</a> and the
              <a href="reference-containers.html">List of containers</a>.
           </p>
  
  
  
  1.4       +1 -1      
jakarta-avalon-site/docs/framework/reference-containers.html
  
  Index: reference-containers.html
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-site/docs/framework/reference-containers.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- reference-containers.html 26 Jul 2002 15:06:50 -0000      1.3
  +++ reference-containers.html 12 Oct 2002 12:10:22 -0000      1.4
  @@ -6,7 +6,7 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Containers</h1><h2></h2></div><div 
class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - Containers</h1><h2></h2></div><div 
class="h3">
     
     
       <div class="h3"><h3>Introduction</h3></div>
  
  
  
  1.6       +1 -1      
jakarta-avalon-site/docs/framework/reference-the-lifecycle.html
  
  Index: reference-the-lifecycle.html
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-site/docs/framework/reference-the-lifecycle.html,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- reference-the-lifecycle.html      10 Sep 2002 22:37:36 -0000      1.5
  +++ reference-the-lifecycle.html      12 Oct 2002 12:10:22 -0000      1.6
  @@ -6,7 +6,7 @@
               <a 
href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
               <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
               <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
  -            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - The Component 
Lifecycle</h1><h2></h2></div><div class="h3">
  +            <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div 
id="navcolumn"><div><strong>Essentials</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="features.html">Features</a></div><div><a 
href="getting-started.html">Getting started</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon/release/framework";>Download</a></div></div><div><strong>Guide</strong><div><a
 href="guide-oop-best-practices.html">OOP best practices</a></div><div><a 
href="guide-patterns-what-are.html">What are patterns?</a></div><div><a 
href="guide-patterns-in-avalon.html">Patterns in Avalon</a></div><div><a 
href="guide-patterns-soii.html"></a></div><div><a 
href="guide-patterns-soc.html"></a></div><div><a 
href="guide-patterns-ioc.html"></a></div><div><a 
href="guide-patterns-ioc-security.html"></a></div><div><a 
href="guide-cop-what-is.html">What is COP?</a></div><div><a 
href="guide-cop-in-avalon.html">COP in Avalon</a></div><div><a 
href="guide-where-to-go-from-here.html">Where to go from 
here</a></div></div><div><strong>Reference</strong><div><a 
href="http://jakarta.apache.org/avalon/api/index.html";>API 
Docs</a></div><div><a href="diagrams/index.html">Diagrams Docs</a></div><div><a 
href="reference-the-lifecycle.html">The Lifecycle</a></div><div><a 
href="reference-containers.html">Containers</a></div></div><div><strong>For 
Developers</strong><div><a 
href="for-developers-changes.html">Changes</a></div><div><a 
href="http://jakarta.apache.org/avalon/code-standards.html";>Coding 
standards</a></div><div><a href="for-developers-project-structure.html">Project 
Structure</a></div><div><a 
href="http://jakarta.apache.org/site/cvsindex.html";>CVS</a></div><div><a 
href="http://jakarta.apache.org/site/mail.html";>Mailing 
Lists</a></div></div></div></td><td><div id="bodycol"><div class="app"><div 
align="center"><h1>Avalon Framework - The Component 
Lifecycle</h1><h2></h2></div><div class="h3">
   
     
   
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to