You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by le...@apache.org on 2002/05/12 22:05:58 UTC

cvs commit: jakarta-avalon-site/docs/phoenix for-developers-a-future.html for-developers-changes.html for-developers-project-structure.html for-developers-todo.html guide-administrator.html guide-architecture.html guide-assemblers-creating-a-server-application.html guide-assemblers.html guide-assemblers-what-is-a-server-application.html guide-block-developers-creating-a-block.html guide-block-developers.html guide-block-developers-making-phoenix-compatible-comps.html guide-block-developers-what-is-a-block.html guide-block-developers-what-is-a-block-listener.html guide-block-developers-what-is-an-application-listener.html guide-deployers.html guide-example-configuration.html guide-roles.html reference-assembly-xml-specification.html reference-blockinfo-specification.html reference-config-xml-specification.html reference-environment-xml-specification.html afuture.html changes.html features.html getting-started.html index.html install.html todo.html administrator-guide.html assemblers-guide.html assembly-xml-specification.html block-developers-guide.html blockinfo-specification.html config-xml-specification.html creating-a-block.html creating-a-server-application.html deployers-guide.html environment-xml-specification.html example-configuration.html making-phoenix-compatible-comps.html what-is-a-block.html what-is-a-block-listener.html what-is-an-application-listener.html what-is-a-server-application.html

leosimons    02/05/12 13:05:58

  Modified:    docs/phoenix afuture.html changes.html features.html
                        getting-started.html index.html install.html
                        todo.html
  Added:       docs/phoenix for-developers-a-future.html
                        for-developers-changes.html
                        for-developers-project-structure.html
                        for-developers-todo.html guide-administrator.html
                        guide-architecture.html
                        guide-assemblers-creating-a-server-application.html
                        guide-assemblers.html
                        guide-assemblers-what-is-a-server-application.html
                        guide-block-developers-creating-a-block.html
                        guide-block-developers.html
                        guide-block-developers-making-phoenix-compatible-comps.html
                        guide-block-developers-what-is-a-block.html
                        guide-block-developers-what-is-a-block-listener.html
                        guide-block-developers-what-is-an-application-listener.html
                        guide-deployers.html
                        guide-example-configuration.html guide-roles.html
                        reference-assembly-xml-specification.html
                        reference-blockinfo-specification.html
                        reference-config-xml-specification.html
                        reference-environment-xml-specification.html
  Removed:     docs/phoenix administrator-guide.html assemblers-guide.html
                        assembly-xml-specification.html
                        block-developers-guide.html
                        blockinfo-specification.html
                        config-xml-specification.html creating-a-block.html
                        creating-a-server-application.html
                        deployers-guide.html
                        environment-xml-specification.html
                        example-configuration.html
                        making-phoenix-compatible-comps.html
                        what-is-a-block.html what-is-a-block-listener.html
                        what-is-an-application-listener.html
                        what-is-a-server-application.html
  Log:
  completed overhaul of phoenix documentation organisation.
  
  Revision  Changes    Path
  1.4       +37 -53    jakarta-avalon-site/docs/phoenix/afuture.html
  
  Index: afuture.html
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-site/docs/phoenix/afuture.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- afuture.html	2 Apr 2002 18:54:16 -0000	1.3
  +++ afuture.html	12 May 2002 20:05:56 -0000	1.4
  @@ -21,10 +21,13 @@
   <font face="arial,helvetica,sanserif">
   <br>
   <br>
  -<a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Back to Avalon</font></a>
  +<a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
   <br>
   <br>
  -<font size="+1" color="#000000">About</font>
  +<a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  +<br>
  +<br>
  +<font size="+1" color="#000000">Essentials</font>
   <br>
   <font size="-1">
   <ul>
  @@ -35,113 +38,94 @@
   <a href="features.html"><font size="-1">Features</font></a>
   </li>
   <li>
  -<a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  +<a href="getting-started.html"><font size="-1">Getting started</font></a>
   </li>
   <li>
  -<a href="getting-started.html"><font size="-1">Getting Started</font></a>
  +<a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
   </li>
   <li>
  -<a href="making-phoenix-compatible-comps.html"><font size="-1">Making compatible components</font></a>
  +<a href="install.html"><font size="-1">Install</font></a>
   </li>
  +</ul>
  +</font>
  +<br>
  +<br>
  +<font size="+1" color="#000000">Guide</font>
  +<br>
  +<font size="-1">
  +<ul>
   <li>
  -<a href="install.html"><font size="-1">Installation</font></a>
  +<a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
   </li>
   <li>
  -<a href="afuture.html"><font size="-1">A Future</font></a>
  +<a href="guide-roles.html"><font size="-1">Development Roles</font></a>
   </li>
   <li>
  -<a href="todo.html"><font size="-1">Todo</font></a>
  +<a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
   </li>
   <li>
  -<a href="changes.html"><font size="-1">Changes</font></a>
  +<a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
   </li>
   <li>
  -<a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  +<a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">Administrators Guide</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="administrator-guide.html"><font size="-1">Overview</font></a>
  +<a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">Deployers Guide</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="deployers-guide.html"><font size="-1">Overview</font></a>
  +<a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
  -<font size="+1" color="#000000">Assembler's Guide</font>
  +<font size="+1" color="#000000">Reference</font>
   <br>
   <font size="-1">
   <ul>
   <li>
  -<a href="assemblers-guide.html"><font size="-1">Overview</font></a>
  -</li>
  -<li>
  -<a href="what-is-a-server-application.html"><font size="-1">What is a Server Application?</font></a>
  +<a href="api/index.html.xml"><font size="-1">API Docs</font></a>
   </li>
   <li>
  -<a href="creating-a-server-application.html"><font size="-1">Creating a Server Application</font></a>
  +<a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
   </li>
   <li>
  -<a href="config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  +<a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
   </li>
   <li>
  -<a href="assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  +<a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
   </li>
   <li>
  -<a href="environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  +<a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
  -<font size="+1" color="#000000">Block Developer's Guide</font>
  +<font size="+1" color="#000000">For Developers</font>
   <br>
   <font size="-1">
   <ul>
   <li>
  -<a href="block-developers-guide.html"><font size="-1">Overview</font></a>
  +<a href="for-developers-changes.html"><font size="-1">Changes</font></a>
   </li>
   <li>
  -<a href="what-is-a-block.html"><font size="-1">What is a Block?</font></a>
  +<a href="for-developers-todo.html"><font size="-1">Todo</font></a>
   </li>
   <li>
  -<a href="what-is-a-block-listener.html"><font size="-1">What is a Block Listener?</font></a>
  +<a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
   </li>
   <li>
  -<a href="what-is-an-application-listener.html"><font size="-1">What is an Application Listener?</font></a>
  +<a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
   </li>
   <li>
  -<a href="blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  +<a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
   </li>
   <li>
  -<a href="creating-a-block.html"><font size="-1">Creating a Block</font></a>
  +<a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">All together</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="example-configuration.html"><font size="-1">Example configuration</font></a>
  +<a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
   </li>
   </ul>
   </font>
  
  
  
  1.7       +37 -53    jakarta-avalon-site/docs/phoenix/changes.html
  
  Index: changes.html
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-site/docs/phoenix/changes.html,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- changes.html	2 Apr 2002 18:54:16 -0000	1.6
  +++ changes.html	12 May 2002 20:05:57 -0000	1.7
  @@ -21,10 +21,13 @@
   <font face="arial,helvetica,sanserif">
   <br>
   <br>
  -<a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Back to Avalon</font></a>
  +<a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
   <br>
   <br>
  -<font size="+1" color="#000000">About</font>
  +<a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  +<br>
  +<br>
  +<font size="+1" color="#000000">Essentials</font>
   <br>
   <font size="-1">
   <ul>
  @@ -35,113 +38,94 @@
   <a href="features.html"><font size="-1">Features</font></a>
   </li>
   <li>
  -<a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  +<a href="getting-started.html"><font size="-1">Getting started</font></a>
   </li>
   <li>
  -<a href="getting-started.html"><font size="-1">Getting Started</font></a>
  +<a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
   </li>
   <li>
  -<a href="making-phoenix-compatible-comps.html"><font size="-1">Making compatible components</font></a>
  +<a href="install.html"><font size="-1">Install</font></a>
   </li>
  +</ul>
  +</font>
  +<br>
  +<br>
  +<font size="+1" color="#000000">Guide</font>
  +<br>
  +<font size="-1">
  +<ul>
   <li>
  -<a href="install.html"><font size="-1">Installation</font></a>
  +<a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
   </li>
   <li>
  -<a href="afuture.html"><font size="-1">A Future</font></a>
  +<a href="guide-roles.html"><font size="-1">Development Roles</font></a>
   </li>
   <li>
  -<a href="todo.html"><font size="-1">Todo</font></a>
  +<a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
   </li>
   <li>
  -<a href="changes.html"><font size="-1">Changes</font></a>
  +<a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
   </li>
   <li>
  -<a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  +<a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">Administrators Guide</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="administrator-guide.html"><font size="-1">Overview</font></a>
  +<a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">Deployers Guide</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="deployers-guide.html"><font size="-1">Overview</font></a>
  +<a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
  -<font size="+1" color="#000000">Assembler's Guide</font>
  +<font size="+1" color="#000000">Reference</font>
   <br>
   <font size="-1">
   <ul>
   <li>
  -<a href="assemblers-guide.html"><font size="-1">Overview</font></a>
  -</li>
  -<li>
  -<a href="what-is-a-server-application.html"><font size="-1">What is a Server Application?</font></a>
  +<a href="api/index.html.xml"><font size="-1">API Docs</font></a>
   </li>
   <li>
  -<a href="creating-a-server-application.html"><font size="-1">Creating a Server Application</font></a>
  +<a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
   </li>
   <li>
  -<a href="config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  +<a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
   </li>
   <li>
  -<a href="assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  +<a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
   </li>
   <li>
  -<a href="environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  +<a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
  -<font size="+1" color="#000000">Block Developer's Guide</font>
  +<font size="+1" color="#000000">For Developers</font>
   <br>
   <font size="-1">
   <ul>
   <li>
  -<a href="block-developers-guide.html"><font size="-1">Overview</font></a>
  +<a href="for-developers-changes.html"><font size="-1">Changes</font></a>
   </li>
   <li>
  -<a href="what-is-a-block.html"><font size="-1">What is a Block?</font></a>
  +<a href="for-developers-todo.html"><font size="-1">Todo</font></a>
   </li>
   <li>
  -<a href="what-is-a-block-listener.html"><font size="-1">What is a Block Listener?</font></a>
  +<a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
   </li>
   <li>
  -<a href="what-is-an-application-listener.html"><font size="-1">What is an Application Listener?</font></a>
  +<a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
   </li>
   <li>
  -<a href="blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  +<a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
   </li>
   <li>
  -<a href="creating-a-block.html"><font size="-1">Creating a Block</font></a>
  +<a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">All together</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="example-configuration.html"><font size="-1">Example configuration</font></a>
  +<a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
   </li>
   </ul>
   </font>
  
  
  
  1.8       +168 -60   jakarta-avalon-site/docs/phoenix/features.html
  
  Index: features.html
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-site/docs/phoenix/features.html,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- features.html	2 Apr 2002 18:54:16 -0000	1.7
  +++ features.html	12 May 2002 20:05:57 -0000	1.8
  @@ -1,7 +1,7 @@
   <html>
   <head>
   <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  -<title>Phoenix - Features</title>
  +<title>Avalon Phoenix - Features</title>
   </head>
   <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
   <table border="0" cellpadding="0" cellspacing="0" width="100%">
  @@ -21,10 +21,13 @@
   <font face="arial,helvetica,sanserif">
   <br>
   <br>
  -<a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Back to Avalon</font></a>
  +<a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
   <br>
   <br>
  -<font size="+1" color="#000000">About</font>
  +<a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  +<br>
  +<br>
  +<font size="+1" color="#000000">Essentials</font>
   <br>
   <font size="-1">
   <ul>
  @@ -35,126 +38,107 @@
   <a href="features.html"><font size="-1">Features</font></a>
   </li>
   <li>
  -<a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  +<a href="getting-started.html"><font size="-1">Getting started</font></a>
   </li>
   <li>
  -<a href="getting-started.html"><font size="-1">Getting Started</font></a>
  +<a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
   </li>
   <li>
  -<a href="making-phoenix-compatible-comps.html"><font size="-1">Making compatible components</font></a>
  +<a href="install.html"><font size="-1">Install</font></a>
   </li>
  +</ul>
  +</font>
  +<br>
  +<br>
  +<font size="+1" color="#000000">Guide</font>
  +<br>
  +<font size="-1">
  +<ul>
   <li>
  -<a href="install.html"><font size="-1">Installation</font></a>
  +<a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
   </li>
   <li>
  -<a href="afuture.html"><font size="-1">A Future</font></a>
  +<a href="guide-roles.html"><font size="-1">Development Roles</font></a>
   </li>
   <li>
  -<a href="todo.html"><font size="-1">Todo</font></a>
  +<a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
   </li>
   <li>
  -<a href="changes.html"><font size="-1">Changes</font></a>
  +<a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
   </li>
   <li>
  -<a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  +<a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">Administrators Guide</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="administrator-guide.html"><font size="-1">Overview</font></a>
  +<a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">Deployers Guide</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="deployers-guide.html"><font size="-1">Overview</font></a>
  +<a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
  -<font size="+1" color="#000000">Assembler's Guide</font>
  +<font size="+1" color="#000000">Reference</font>
   <br>
   <font size="-1">
   <ul>
   <li>
  -<a href="assemblers-guide.html"><font size="-1">Overview</font></a>
  -</li>
  -<li>
  -<a href="what-is-a-server-application.html"><font size="-1">What is a Server Application?</font></a>
  +<a href="api/index.html.xml"><font size="-1">API Docs</font></a>
   </li>
   <li>
  -<a href="creating-a-server-application.html"><font size="-1">Creating a Server Application</font></a>
  +<a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
   </li>
   <li>
  -<a href="config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  +<a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
   </li>
   <li>
  -<a href="assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  +<a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
   </li>
   <li>
  -<a href="environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  +<a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
  -<font size="+1" color="#000000">Block Developer's Guide</font>
  +<font size="+1" color="#000000">For Developers</font>
   <br>
   <font size="-1">
   <ul>
   <li>
  -<a href="block-developers-guide.html"><font size="-1">Overview</font></a>
  +<a href="for-developers-changes.html"><font size="-1">Changes</font></a>
   </li>
   <li>
  -<a href="what-is-a-block.html"><font size="-1">What is a Block?</font></a>
  +<a href="for-developers-todo.html"><font size="-1">Todo</font></a>
   </li>
   <li>
  -<a href="what-is-a-block-listener.html"><font size="-1">What is a Block Listener?</font></a>
  +<a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
   </li>
   <li>
  -<a href="what-is-an-application-listener.html"><font size="-1">What is an Application Listener?</font></a>
  +<a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
   </li>
   <li>
  -<a href="blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  +<a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
   </li>
   <li>
  -<a href="creating-a-block.html"><font size="-1">Creating a Block</font></a>
  +<a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">All together</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="example-configuration.html"><font size="-1">Example configuration</font></a>
  +<a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
   </font></td><td align="left" valign="top" width="*">
  -<title>Phoenix - Features</title>
  +<title>Avalon Phoenix - Features</title>
   <center>
   <table width="100%">
   <tr>
   <td bgcolor="#99aabb">
   <center>
  -<b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Phoenix - Features</font></b>
  +<b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Features</font></b>
   </center>
   </td>
   </tr>
  @@ -162,7 +146,7 @@
   </center>
   <br>
   <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  -<p>by <a href="mailto:avalon-dev@jakarta.apache.org">Avalon Documentation Team</a>
  +<p>by <a href="mailto:leosimons@apache.org">Leo Simons</a>
   </p>
   </font><font face="arial,helvetica,sanserif" color="#000000"></font>
   <br>
  @@ -176,10 +160,134 @@
   <br>
   
   
  -<p align="justify">
  -    This document will list the features of Phoenix. It is yet to be completed ;)
  -</p>
  +<p align="justify">This document is not complete yet...</p>
  +
  +
  +</font></td>
  +</tr>
  +</table>
  +</div>
  +<br>
  +<div align="right">
  +<table cellspacing="0" cellpadding="2" border="0" width="100%">
  +<tr>
  +<td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Extensible architecture</b></font></td>
  +</tr>
  +<tr>
  +<td><font face="arial,helvetica,sanserif" color="#000000">
  +<br>
  +	
  +<p align="justify">Phoenix is written as an extensible micro-kernel. This allows you to:</p>
  +	
  +<ul>
  +		
  +<li>Customise behaviour quickly</li>
  +		
  +<li>Plug in extra functionality effortlessly</li>
  +		
  +<li>remove unneeded functionality for a small footprint</li>
  +	
  +</ul>
  +
  +</font></td>
  +</tr>
  +</table>
  +</div>
  +<br>
  +<div align="right">
  +<table cellspacing="0" cellpadding="2" border="0" width="100%">
  +<tr>
  +<td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Flexible environment</b></font></td>
  +</tr>
  +<tr>
  +<td><font face="arial,helvetica,sanserif" color="#000000">
  +<br>
  +	
  +<p align="justify">Phoenix has native support for use in the following environments:</p>
  +	
  +<ul>
  +		
  +<li>command-line stand-alone program</li>
  +		
  +<li>Unix daemon</li>
  +		
  +<li>Embedded in other programs (including servlet engines)</li>
  +	
  +</ul>
  +
  +</font></td>
  +</tr>
  +</table>
  +</div>
  +<br>
  +<div align="right">
  +<table cellspacing="0" cellpadding="2" border="0" width="100%">
  +<tr>
  +<td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Integrated management</b></font></td>
  +</tr>
  +<tr>
  +<td><font face="arial,helvetica,sanserif" color="#000000">
  +<br>
  +	
  +<p align="justify">Phoenix enables JMX management of your software:</p>
  +	
  +<ul>
  +		
  +<li>All aspects of phoenix itself are manageable, including
  +		startup/shutdown, deployment, management and logging.</li>
  +		
  +<li>Applications running in phoenix are manageable, exposing
  +		their lifecycle (configuration, startup/shutdown, etc) and
  +		everything else you mark as manageable.</li>
  +	
  +</ul>
  +
  +</font></td>
  +</tr>
  +</table>
  +</div>
  +<br>
  +<div align="right">
  +<table cellspacing="0" cellpadding="2" border="0" width="100%">
  +<tr>
  +<td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Ease and speed up application development</b></font></td>
  +</tr>
  +<tr>
  +<td><font face="arial,helvetica,sanserif" color="#000000">
  +<br>
  +	
  +<p align="justify">Phoenix is a container for (server) applications. It can host
  +	multiple applications within the same JVM, while keeping them securely
  +	isolated from each other.</p>
  +
  +	
  +<p align="justify">Phoenix provides simple XML configuration files that allow you to
  +	rapidly assemble a customised server applications from readily available
  +	components (called blocks).</p>
  +
  +	
  +<p align="justify">Phoenix provides the following services to hosted applications:</p>
  +	
  +<ul>
  +		
  +<li>Lifecycle management</li>
  +		
  +<li>Configuration management</li>
  +		
  +<li>Resource management</li>
  +		
  +<li>Management exposure through JMX</li>
  +		
  +<li>Automatic (re)deployment</li>
  +		
  +<li>An isolated environment</li>
  +	
  +</ul>
   
  +	
  +<p align="justify">Phoenix leverages the Avalon Framework, making it compatible with other
  +	Avalon-based projects like Excalibur and Cornerstone, enabling you to
  +	easily reuse their functionality.</p>
   
   </font></td>
   </tr>
  
  
  
  1.8       +80 -96    jakarta-avalon-site/docs/phoenix/getting-started.html
  
  Index: getting-started.html
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-site/docs/phoenix/getting-started.html,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- getting-started.html	2 Apr 2002 18:54:16 -0000	1.7
  +++ getting-started.html	12 May 2002 20:05:57 -0000	1.8
  @@ -1,7 +1,7 @@
   <html>
   <head>
   <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  -<title>Phoenix - Getting Started</title>
  +<title>Avalon Phoenix - Getting Started</title>
   </head>
   <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
   <table border="0" cellpadding="0" cellspacing="0" width="100%">
  @@ -21,10 +21,13 @@
   <font face="arial,helvetica,sanserif">
   <br>
   <br>
  -<a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Back to Avalon</font></a>
  +<a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
   <br>
   <br>
  -<font size="+1" color="#000000">About</font>
  +<a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  +<br>
  +<br>
  +<font size="+1" color="#000000">Essentials</font>
   <br>
   <font size="-1">
   <ul>
  @@ -35,126 +38,107 @@
   <a href="features.html"><font size="-1">Features</font></a>
   </li>
   <li>
  -<a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  +<a href="getting-started.html"><font size="-1">Getting started</font></a>
   </li>
   <li>
  -<a href="getting-started.html"><font size="-1">Getting Started</font></a>
  +<a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
   </li>
   <li>
  -<a href="making-phoenix-compatible-comps.html"><font size="-1">Making compatible components</font></a>
  +<a href="install.html"><font size="-1">Install</font></a>
   </li>
  +</ul>
  +</font>
  +<br>
  +<br>
  +<font size="+1" color="#000000">Guide</font>
  +<br>
  +<font size="-1">
  +<ul>
   <li>
  -<a href="install.html"><font size="-1">Installation</font></a>
  +<a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
   </li>
   <li>
  -<a href="afuture.html"><font size="-1">A Future</font></a>
  +<a href="guide-roles.html"><font size="-1">Development Roles</font></a>
   </li>
   <li>
  -<a href="todo.html"><font size="-1">Todo</font></a>
  +<a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
   </li>
   <li>
  -<a href="changes.html"><font size="-1">Changes</font></a>
  +<a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
   </li>
   <li>
  -<a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  +<a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">Administrators Guide</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="administrator-guide.html"><font size="-1">Overview</font></a>
  +<a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">Deployers Guide</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="deployers-guide.html"><font size="-1">Overview</font></a>
  +<a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
  -<font size="+1" color="#000000">Assembler's Guide</font>
  +<font size="+1" color="#000000">Reference</font>
   <br>
   <font size="-1">
   <ul>
   <li>
  -<a href="assemblers-guide.html"><font size="-1">Overview</font></a>
  -</li>
  -<li>
  -<a href="what-is-a-server-application.html"><font size="-1">What is a Server Application?</font></a>
  +<a href="api/index.html.xml"><font size="-1">API Docs</font></a>
   </li>
   <li>
  -<a href="creating-a-server-application.html"><font size="-1">Creating a Server Application</font></a>
  +<a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
   </li>
   <li>
  -<a href="config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  +<a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
   </li>
   <li>
  -<a href="assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  +<a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
   </li>
   <li>
  -<a href="environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  +<a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
  -<font size="+1" color="#000000">Block Developer's Guide</font>
  +<font size="+1" color="#000000">For Developers</font>
   <br>
   <font size="-1">
   <ul>
   <li>
  -<a href="block-developers-guide.html"><font size="-1">Overview</font></a>
  +<a href="for-developers-changes.html"><font size="-1">Changes</font></a>
   </li>
   <li>
  -<a href="what-is-a-block.html"><font size="-1">What is a Block?</font></a>
  +<a href="for-developers-todo.html"><font size="-1">Todo</font></a>
   </li>
   <li>
  -<a href="what-is-a-block-listener.html"><font size="-1">What is a Block Listener?</font></a>
  +<a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
   </li>
   <li>
  -<a href="what-is-an-application-listener.html"><font size="-1">What is an Application Listener?</font></a>
  +<a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
   </li>
   <li>
  -<a href="blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  +<a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
   </li>
   <li>
  -<a href="creating-a-block.html"><font size="-1">Creating a Block</font></a>
  +<a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">All together</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="example-configuration.html"><font size="-1">Example configuration</font></a>
  +<a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
   </font></td><td align="left" valign="top" width="*">
  -<title>Phoenix - Getting Started</title>
  +<title>Avalon Phoenix - Getting Started</title>
   <center>
   <table width="100%">
   <tr>
   <td bgcolor="#99aabb">
   <center>
  -<b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Phoenix - Getting Started</font></b>
  +<b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Getting Started</font></b>
   </center>
   </td>
   </tr>
  @@ -179,15 +163,15 @@
   <p align="justify">
       This document provides developers with simple documentation for getting
       started with Phoenix. For information about the overall structure of
  -    Avalon Framework (on which Phoenix is based), please refer to the 
  -    <a href="http://jakarta.apache.org/avalon/framework/index.html">Design</a> document.
  +    Avalon Framework (on which Phoenix is based), please refer to the
  +    <a href="http://jakarta.apache.org/avalon/framework/index.html">Framework documentation</a>.
   </p>
   
   
   <p align="justify">
       Instructions for downloading and installing Phoenix can be found on the
       <a href="install.html">Install</a> document.
  -</p>    
  +</p>
   
   
   <p align="justify">
  @@ -211,9 +195,9 @@
   <br>
   
   
  -<p align="justify">    
  +<p align="justify">
       To generate a full set of detailed API documentation for Avalon, go to the base
  -    directory of source distribution and run the appropriate build script for your 
  +    directory of source distribution and run the appropriate build script for your
       platform with the parameter 'javadocs'.
   
       <div align="center">
  @@ -221,9 +205,9 @@
   <tr>
   <td>
   <pre>
  -    
  +
       &gt; build.[bat|sh] javadocs
  -    
  +
   </pre>
   </td>
   </tr>
  @@ -250,18 +234,18 @@
   
   
   <p align="justify">
  -    After you have successfully built Phoenix, you can verify that it 
  -    has compiled correctly by running the HelloWorld demo Service Application. 
  +    After you have successfully built Phoenix, you can verify that it
  +    has compiled correctly by running the HelloWorld demo Service Application.
   </p>
   
  -<p align="justify">   
  +<p align="justify">
       Firstly you will need to get the demo-helloword.sar file and drop it into
  -    the apps directory of Phoenix.  Get it from <a href="TODO">TODO</a> or build 
  +    the apps directory of Phoenix.  Get it from <a href="TODO">TODO</a> or build
       it from its CVS - <a href="http://cvs.apache.org/viewcvs/jakarta-avalon-apps/demo/">
       http://cvs.apache.org/viewcvs/jakarta-avalon-apps/demo/</a>.
   </p>
   
  -<p align="justify">   
  +<p align="justify">
       Then fire up phoenix with the following command:
   
       <div align="center">
  @@ -305,17 +289,17 @@
   
   </p>
   
  -<p align="justify">   
  -    This shows that Phoenix has unpacked and launched the server application contained 
  -    within the demo-helloworld.sar file.  If you close and relaunch Phoenix, it should 
  -    restart the application.  
  +<p align="justify">
  +    This shows that Phoenix has unpacked and launched the server application contained
  +    within the demo-helloworld.sar file.  If you close and relaunch Phoenix, it should
  +    restart the application.
   </p>
   
   <p align="justify">
  -    As examples go this is a fairly simple one.  You should ignore the altrmihelloworldserver, 
  -    rmihelloworldserver and soaphelloworldserver packages as they are retrofitting the 
  -    helloworld demo with remote capability using three technologies.  HelloWorld uses 
  -    connection management from the Avalon-Cornerstone project, which is good as it allows us to 
  +    As examples go this is a fairly simple one.  You should ignore the altrmihelloworldserver,
  +    rmihelloworldserver and soaphelloworldserver packages as they are retrofitting the
  +    helloworld demo with remote capability using three technologies.  HelloWorld uses
  +    connection management from the Avalon-Cornerstone project, which is good as it allows us to
       share connection pooling across multiple servers.
   </p>
   
  @@ -334,21 +318,21 @@
   <br>
   
   <p align="justify">
  -    This self contained kit could be considered a starter project for someone wanting to make a 
  -    Phoenix compatible application.  The idea is that you start with this skeleton including 
  -    Ant build script and then add in more and more as your se code to copy from elsewhere.  
  +    This self contained kit could be considered a starter project for someone wanting to make a
  +    Phoenix compatible application.  The idea is that you start with this skeleton including
  +    Ant build script and then add in more and more as your se code to copy from elsewhere.
   </p>
   
  -<p align="justify">    
  -    This  also demonstrates that it is possible to make a server application that is dual mode. 
  -    Dual mode to us is the ability for the server application to run inside Phoenix and to 
  -    stand-alone from the command line.  It is a little bit of a sleight of hand as the codebase 
  +<p align="justify">
  +    This  also demonstrates that it is possible to make a server application that is dual mode.
  +    Dual mode to us is the ability for the server application to run inside Phoenix and to
  +    stand-alone from the command line.  It is a little bit of a sleight of hand as the codebase
       would be zipped into two forms - the sar file for phoenix and a jar file for standalone.
   </p>
   
   <p align="justify">
  -    The Phoenix development kit originates in Phoenix's CVS, but for convenience is downloadable 
  -    from <a href="TODO">TODO</a>.  When you have that file, unzip it and immediately launch 
  +    The Phoenix development kit originates in Phoenix's CVS, but for convenience is downloadable
  +    from <a href="TODO">TODO</a>.  When you have that file, unzip it and immediately launch
       ant to make the jars and sars.  There are four:
       <ol>
         
  @@ -363,7 +347,7 @@
   </ol>
   
       The Server app in standalone mode after being tested with the client app(see below):
  -  
  +
       <div align="center">
   <table cellspacing="2" cellpadding="2" border="1">
   <tr>
  @@ -378,9 +362,9 @@
   </tr>
   </table>
   </div>
  -    
  +
       The Server app running inside Phoenix and after being tested with the client app (see below):
  -    
  +
       <div align="center">
   <table cellspacing="2" cellpadding="2" border="1">
   <tr>
  @@ -388,16 +372,16 @@
   <pre>
   Phoenix 4.0a4
   
  -Server started on port 1234    
  +Server started on port 1234
   String passed = Hello!!!!!
       </pre>
   </td>
   </tr>
   </table>
   </div>
  -    
  +
       The client application being used to poke the server :
  -    
  +
       <div align="center">
   <table cellspacing="2" cellpadding="2" border="1">
   <tr>
  @@ -409,14 +393,14 @@
   </tr>
   </table>
   </div>
  -    
  +
       (Change the port to 1234 from 7654 to poke the in-Phoenix server).
  -    
  -</p>    
  +
  +</p>
   
   <p align="justify">
  -    Note - because of the need to make this dual mode, the PDK does not use Cornerstone 
  -    components.  We normally recommend that people should reuse components from cornerstone as 
  +    Note - because of the need to make this dual mode, the PDK does not use Cornerstone
  +    components.  We normally recommend that people should reuse components from cornerstone as
       the potential for sharing will be much higher.
   </p>
   
  
  
  
  1.9       +114 -187  jakarta-avalon-site/docs/phoenix/index.html
  
  Index: index.html
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-site/docs/phoenix/index.html,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- index.html	2 Apr 2002 18:54:16 -0000	1.8
  +++ index.html	12 May 2002 20:05:57 -0000	1.9
  @@ -1,7 +1,7 @@
   <html>
   <head>
   <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  -<title>Phoenix - Overview</title>
  +<title>Avalon Phoenix - Overview</title>
   </head>
   <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
   <table border="0" cellpadding="0" cellspacing="0" width="100%">
  @@ -21,10 +21,13 @@
   <font face="arial,helvetica,sanserif">
   <br>
   <br>
  -<a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Back to Avalon</font></a>
  +<a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
   <br>
   <br>
  -<font size="+1" color="#000000">About</font>
  +<a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  +<br>
  +<br>
  +<font size="+1" color="#000000">Essentials</font>
   <br>
   <font size="-1">
   <ul>
  @@ -35,126 +38,107 @@
   <a href="features.html"><font size="-1">Features</font></a>
   </li>
   <li>
  -<a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  +<a href="getting-started.html"><font size="-1">Getting started</font></a>
   </li>
   <li>
  -<a href="getting-started.html"><font size="-1">Getting Started</font></a>
  +<a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
   </li>
   <li>
  -<a href="making-phoenix-compatible-comps.html"><font size="-1">Making compatible components</font></a>
  +<a href="install.html"><font size="-1">Install</font></a>
   </li>
  +</ul>
  +</font>
  +<br>
  +<br>
  +<font size="+1" color="#000000">Guide</font>
  +<br>
  +<font size="-1">
  +<ul>
   <li>
  -<a href="install.html"><font size="-1">Installation</font></a>
  +<a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
   </li>
   <li>
  -<a href="afuture.html"><font size="-1">A Future</font></a>
  +<a href="guide-roles.html"><font size="-1">Development Roles</font></a>
   </li>
   <li>
  -<a href="todo.html"><font size="-1">Todo</font></a>
  +<a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
   </li>
   <li>
  -<a href="changes.html"><font size="-1">Changes</font></a>
  +<a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
   </li>
   <li>
  -<a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  +<a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">Administrators Guide</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="administrator-guide.html"><font size="-1">Overview</font></a>
  +<a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">Deployers Guide</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="deployers-guide.html"><font size="-1">Overview</font></a>
  +<a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
  -<font size="+1" color="#000000">Assembler's Guide</font>
  +<font size="+1" color="#000000">Reference</font>
   <br>
   <font size="-1">
   <ul>
   <li>
  -<a href="assemblers-guide.html"><font size="-1">Overview</font></a>
  -</li>
  -<li>
  -<a href="what-is-a-server-application.html"><font size="-1">What is a Server Application?</font></a>
  +<a href="api/index.html.xml"><font size="-1">API Docs</font></a>
   </li>
   <li>
  -<a href="creating-a-server-application.html"><font size="-1">Creating a Server Application</font></a>
  +<a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
   </li>
   <li>
  -<a href="config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  +<a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
   </li>
   <li>
  -<a href="assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  +<a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
   </li>
   <li>
  -<a href="environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  +<a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
  -<font size="+1" color="#000000">Block Developer's Guide</font>
  +<font size="+1" color="#000000">For Developers</font>
   <br>
   <font size="-1">
   <ul>
   <li>
  -<a href="block-developers-guide.html"><font size="-1">Overview</font></a>
  +<a href="for-developers-changes.html"><font size="-1">Changes</font></a>
   </li>
   <li>
  -<a href="what-is-a-block.html"><font size="-1">What is a Block?</font></a>
  +<a href="for-developers-todo.html"><font size="-1">Todo</font></a>
   </li>
   <li>
  -<a href="what-is-a-block-listener.html"><font size="-1">What is a Block Listener?</font></a>
  +<a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
   </li>
   <li>
  -<a href="what-is-an-application-listener.html"><font size="-1">What is an Application Listener?</font></a>
  +<a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
   </li>
   <li>
  -<a href="blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  +<a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
   </li>
   <li>
  -<a href="creating-a-block.html"><font size="-1">Creating a Block</font></a>
  +<a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">All together</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="example-configuration.html"><font size="-1">Example configuration</font></a>
  +<a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
   </font></td><td align="left" valign="top" width="*">
  -<title>Phoenix - Overview</title>
  +<title>Avalon Phoenix - Overview</title>
   <center>
   <table width="100%">
   <tr>
   <td bgcolor="#99aabb">
   <center>
  -<b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Phoenix - Overview</font></b>
  +<b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Overview</font></b>
   </center>
   </td>
   </tr>
  @@ -180,9 +164,9 @@
           framework. It is both an API to program to and a reference implementation.
           The reference implementation provides a number of facilities to manage the
           environment of Server Applications. Such facilities include log management,
  -        classloading, thread management and security. In the future it will 
  -        conditionally offer support extra facilities such as central server management, 
  -        server pools, and other facilities aimed at reducing the time to market. The API 
  +        classloading, thread management and security. In the future it will
  +        conditionally offer support extra facilities such as central server management,
  +        server pools, and other facilities aimed at reducing the time to market. The API
           defines a standard method of piecing togther server components and creating a server.
         </p>
       
  @@ -194,46 +178,17 @@
   <div align="right">
   <table cellspacing="0" cellpadding="2" border="0" width="100%">
   <tr>
  -<td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Multiple Server Application hosting</b></font></td>
  +<td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Documentation is coming</b></font></td>
   </tr>
   <tr>
   <td><font face="arial,helvetica,sanserif" color="#000000">
   <br>
         
   <p align="justify">
  -        Phoenix hosts one or more server applications at the same time in the same Virtual machine.
  -      </p>
  -      
  -<div align="center">
  -<table cellspacing="2" cellpadding="2" border="0">
  -<tr>
  -<td bgcolor="#525D76"><font size="0" color="#ffffff">Phoenix layer diagram</font></td>
  -</tr>
  -        
  -        
  -<tr>
  -<td><img src="images/phoenix-layers.jpg" alt="Paul Hammant, 2001" border="0"></td>
  -</tr>
  -<tr>
  -<td><font size="-1">
  -<ul>
  -<li>Paul Hammant, 2001</li>
  -</ul>
  -</font></td>
  -</tr>
  -      
  -</table>
  -</div>      
  -      
  -<p align="justify">
  -        Shown above are three hosted server applications.  A mail server that would implement
  -        multiple listeners for incoming and outgoing services (POP3, SMTP, IMAP etc).  Outlook,
  -        Eudora and other mail clients would be able to connect to the server.  As it happens, 
  -        Apache has a project in progress called "James" that provides these services and Newsgroups.  
  -        Also shown is a Web server.  That would respond to HTTP/HTTPS requests from similar standards 
  -        based clients and be able to host it's own applications (web-apps and virtual websites). Lastly, 
  -        and non-existant currently at Apache is an EJB Server.  This would be able to host it's own 
  -        bean applications and might use the web server for it's HTTP needs.
  +        Some of the information on this site is currently a bit out of date. We are
  +	working hard to fix this. If you come across any incosistencies or have a
  +	problem, please don't hesitate to contact us through the mailing list. Thank
  +	you.
         </p>
       
   </font></td>
  @@ -244,146 +199,118 @@
   <div align="right">
   <table cellspacing="0" cellpadding="2" border="0" width="100%">
   <tr>
  -<td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Packaging of a Server Application</b></font></td>
  +<td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Guide to Avalon Phoenix</b></font></td>
   </tr>
   <tr>
   <td><font face="arial,helvetica,sanserif" color="#000000">
   <br>
         
   <p align="justify">
  -        Phoenix application are distriuted in a single archive.  
  +        This guide starts with an architectural overview of Phoenix. Then, we identify
  +	the different roles that typically exist in daily use of phoenix. For each of
  +	these, we provide a basic guide. We finish with a complete example.
         </p>
  -      
  +        
   <div align="right">
   <table cellspacing="0" cellpadding="2" border="0" width="99%">
   <tr>
  -<td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Packaging in terms of blocks</b></font></td>
  +<td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Target Audience</b></font></td>
   </tr>
   <tr>
   <td><font face="arial,helvetica,sanserif" color="#000000">
   <br>
  -        
  -<p align="justify">
  -          Phoenix hosts server applications made up of blocks.  The blocks may depend on libraries
  -          to function correctly.  The blocks are tied together with Assembly instructions and Configured
  -          externally.
  -        </p>
  -        
  -<div align="center">
  -<table cellspacing="2" cellpadding="2" border="0">
  -<tr>
  -<td bgcolor="#525D76"><font size="0" color="#ffffff">Phoenix application in block view</font></td>
  -</tr>
             
  -          
  -<tr>
  -<td><img src="images/phoenix-app-block.jpg" alt="Paul Hammant, 2001" border="0"></td>
  -</tr>
  -<tr>
  -<td><font size="-1">
  -<ul>
  -<li>Paul Hammant, 2001</li>
  +<p align="justify">
  +            This documentation is aimed towards people who:
  +            <ul>
  +	      
  +<li>wish to create applications that run within phoenix</li>
  +	      
  +<li>wish to create components (blocks) for use within phoenix</li>
  +	      
  +<li>wish to setup and administer phoenix</li>
  +              
  +<li>are interested in the design principles of Avalon Phoenix</li>
  +              
  +<li>wish to develop code that will be incorporated into Avalon Phoenix</li>
  +              
  +<li>wish to reuse Avalon Phoenix concepts in their own application</li>
  +            
   </ul>
  -</font></td>
  -</tr>
  +          
  +</p>
           
  -</table>
  -</div>
  -      
   </font></td>
   </tr>
   </table>
   </div>
  -<br>      
  -      
  +<br>
  +        
   <div align="right">
   <table cellspacing="0" cellpadding="2" border="0" width="99%">
   <tr>
  -<td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Packaging in terms of block jar files</b></font></td>
  +<td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Contents</b></font></td>
   </tr>
   <tr>
   <td><font face="arial,helvetica,sanserif" color="#000000">
   <br>
  -        
  -<p align="justify">
  -          The server application is entirely contained withing one "sar" file.  Sar is "Server ARchive".
  -          Each block is a jar file.  The dependant libraries are regular jars (placed 
  -          within a directory "lib" insde the sar file).  The Assembly and configuration instructions
  -          are in xml form and contained within a "conf" directory inside the sar file.
  -        </p>
  -        
  -<div align="center">
  -<table cellspacing="2" cellpadding="2" border="0">
  -<tr>
  -<td bgcolor="#525D76"><font size="0" color="#ffffff">Phoenix application in block jar view</font></td>
  -</tr>
             
  +<ol>
  +            
  +<li>
  +<a href="guide-architecture.html">Architectural overview</a>
  +</li>
  +            
  +<li>
  +<a href="guide-roles.html">Development roles</a>
  +</li>
  +            
  +<li>
  +<a href="guide-administrators.html">Administrator Guide</a>
  +</li>
  +            
  +<li>
  +<a href="guide-deployers.html">Application Deployer Guide</a>
  +</li>
  +            
  +<li>
  +<a href="guide-assembler.html">Server Application Assembler Guide</a>
  +</li>
  +            
  +<li>
  +<a href="guide-block-developers.html">Block Developer Guide</a>
  +</li>
  +            
  +<li>
  +<a href="guide-example-configuration.html">Example Configuration.</a>
  +</li>
             
  -<tr>
  -<td><img src="images/phoenix-app-blockjars.jpg" alt="Paul Hammant, 2001" border="0"></td>
  -</tr>
  -<tr>
  -<td><font size="-1">
  -<ul>
  -<li>Paul Hammant, 2001</li>
  -</ul>
  +</ol>
  +        
   </font></td>
   </tr>
  -        
   </table>
   </div>
  -      
  +<br>
  +    
   </font></td>
   </tr>
   </table>
   </div>
  -<br>      
  -      
  +<br>
   <div align="right">
  -<table cellspacing="0" cellpadding="2" border="0" width="99%">
  +<table cellspacing="0" cellpadding="2" border="0" width="100%">
   <tr>
  -<td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>FtpServer as a Phoenix application</b></font></td>
  +<td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Avalon Phoenix Reference Documentation</b></font></td>
   </tr>
   <tr>
   <td><font face="arial,helvetica,sanserif" color="#000000">
   <br>
         
   <p align="justify">
  -        FtpServer (part of the Avalon/Cornerstone project) is distributed in sar form.  Here is a
  -        view of it's blocks.  It has no third party jars that it depends on.
  -      </p>
  -        
  -<div align="center">
  -<table cellspacing="2" cellpadding="2" border="0">
  -<tr>
  -<td bgcolor="#525D76"><font size="0" color="#ffffff">FtpServer, a real Phoenix application</font></td>
  -</tr>
  -          
  -          
  -<tr>
  -<td><img src="images/phoenix-app-ftpserver.jpg" alt="Paul Hammant, 2001" border="0"></td>
  -</tr>
  -<tr>
  -<td><font size="-1">
  -<ul>
  -<li>Paul Hammant, 2001</li>
  -</ul>
  -</font></td>
  -</tr>
  -        
  -</table>
  -</div>
  -      
  -</font></td>
  -</tr>
  -</table>
  -</div>
  -<br>      
  -      
  -<p align="justify">
  -        Notes - Phoenix does not limit the number of blocks that it allows in a sar file.  We have taksdefs for Apache's Ant
  -        tool for making sar files.  See the "Block Developers Guide" (left
  -        margin of this page) for more what/how/why.
  +         Besides the
  +         <a href="api/index.html.xml">Javadocs</a>, we have the
  +         <a href="guide-architecture.html">Architectural overview</a> to look at.
         </p>
       
   </font></td>
  
  
  
  1.8       +41 -57    jakarta-avalon-site/docs/phoenix/install.html
  
  Index: install.html
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-site/docs/phoenix/install.html,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- install.html	2 Apr 2002 18:54:16 -0000	1.7
  +++ install.html	12 May 2002 20:05:57 -0000	1.8
  @@ -1,7 +1,7 @@
   <html>
   <head>
   <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  -<title>Phoenix - Installation</title>
  +<title>Avalon Phoenix - Installation</title>
   </head>
   <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
   <table border="0" cellpadding="0" cellspacing="0" width="100%">
  @@ -21,10 +21,13 @@
   <font face="arial,helvetica,sanserif">
   <br>
   <br>
  -<a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Back to Avalon</font></a>
  +<a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
   <br>
   <br>
  -<font size="+1" color="#000000">About</font>
  +<a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  +<br>
  +<br>
  +<font size="+1" color="#000000">Essentials</font>
   <br>
   <font size="-1">
   <ul>
  @@ -35,126 +38,107 @@
   <a href="features.html"><font size="-1">Features</font></a>
   </li>
   <li>
  -<a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  +<a href="getting-started.html"><font size="-1">Getting started</font></a>
   </li>
   <li>
  -<a href="getting-started.html"><font size="-1">Getting Started</font></a>
  +<a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
   </li>
   <li>
  -<a href="making-phoenix-compatible-comps.html"><font size="-1">Making compatible components</font></a>
  +<a href="install.html"><font size="-1">Install</font></a>
   </li>
  +</ul>
  +</font>
  +<br>
  +<br>
  +<font size="+1" color="#000000">Guide</font>
  +<br>
  +<font size="-1">
  +<ul>
   <li>
  -<a href="install.html"><font size="-1">Installation</font></a>
  +<a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
   </li>
   <li>
  -<a href="afuture.html"><font size="-1">A Future</font></a>
  +<a href="guide-roles.html"><font size="-1">Development Roles</font></a>
   </li>
   <li>
  -<a href="todo.html"><font size="-1">Todo</font></a>
  +<a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
   </li>
   <li>
  -<a href="changes.html"><font size="-1">Changes</font></a>
  +<a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
   </li>
   <li>
  -<a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  +<a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">Administrators Guide</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="administrator-guide.html"><font size="-1">Overview</font></a>
  +<a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">Deployers Guide</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="deployers-guide.html"><font size="-1">Overview</font></a>
  +<a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
  -<font size="+1" color="#000000">Assembler's Guide</font>
  +<font size="+1" color="#000000">Reference</font>
   <br>
   <font size="-1">
   <ul>
   <li>
  -<a href="assemblers-guide.html"><font size="-1">Overview</font></a>
  -</li>
  -<li>
  -<a href="what-is-a-server-application.html"><font size="-1">What is a Server Application?</font></a>
  +<a href="api/index.html.xml"><font size="-1">API Docs</font></a>
   </li>
   <li>
  -<a href="creating-a-server-application.html"><font size="-1">Creating a Server Application</font></a>
  +<a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
   </li>
   <li>
  -<a href="config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  +<a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
   </li>
   <li>
  -<a href="assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  +<a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
   </li>
   <li>
  -<a href="environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  +<a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
  -<font size="+1" color="#000000">Block Developer's Guide</font>
  +<font size="+1" color="#000000">For Developers</font>
   <br>
   <font size="-1">
   <ul>
   <li>
  -<a href="block-developers-guide.html"><font size="-1">Overview</font></a>
  +<a href="for-developers-changes.html"><font size="-1">Changes</font></a>
   </li>
   <li>
  -<a href="what-is-a-block.html"><font size="-1">What is a Block?</font></a>
  +<a href="for-developers-todo.html"><font size="-1">Todo</font></a>
   </li>
   <li>
  -<a href="what-is-a-block-listener.html"><font size="-1">What is a Block Listener?</font></a>
  +<a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
   </li>
   <li>
  -<a href="what-is-an-application-listener.html"><font size="-1">What is an Application Listener?</font></a>
  +<a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
   </li>
   <li>
  -<a href="blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  +<a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
   </li>
   <li>
  -<a href="creating-a-block.html"><font size="-1">Creating a Block</font></a>
  +<a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">All together</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="example-configuration.html"><font size="-1">Example configuration</font></a>
  +<a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
   </font></td><td align="left" valign="top" width="*">
  -<title>Phoenix - Installation</title>
  +<title>Avalon Phoenix - Installation</title>
   <center>
   <table width="100%">
   <tr>
   <td bgcolor="#99aabb">
   <center>
  -<b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Phoenix - Installation</font></b>
  +<b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Installation</font></b>
   </center>
   </td>
   </tr>
  @@ -207,7 +191,7 @@
   
   
   <p align="justify">
  -    Execute the relavent platform specific script (build.[sh|bat]) in the base phoenix 
  +    Execute the relevant platform specific script (build.[sh|bat]) in the base phoenix 
       directory. 
   </p>    
   
  
  
  
  1.8       +37 -53    jakarta-avalon-site/docs/phoenix/todo.html
  
  Index: todo.html
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-site/docs/phoenix/todo.html,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- todo.html	2 Apr 2002 18:54:16 -0000	1.7
  +++ todo.html	12 May 2002 20:05:57 -0000	1.8
  @@ -21,10 +21,13 @@
   <font face="arial,helvetica,sanserif">
   <br>
   <br>
  -<a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Back to Avalon</font></a>
  +<a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
   <br>
   <br>
  -<font size="+1" color="#000000">About</font>
  +<a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  +<br>
  +<br>
  +<font size="+1" color="#000000">Essentials</font>
   <br>
   <font size="-1">
   <ul>
  @@ -35,113 +38,94 @@
   <a href="features.html"><font size="-1">Features</font></a>
   </li>
   <li>
  -<a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  +<a href="getting-started.html"><font size="-1">Getting started</font></a>
   </li>
   <li>
  -<a href="getting-started.html"><font size="-1">Getting Started</font></a>
  +<a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
   </li>
   <li>
  -<a href="making-phoenix-compatible-comps.html"><font size="-1">Making compatible components</font></a>
  +<a href="install.html"><font size="-1">Install</font></a>
   </li>
  +</ul>
  +</font>
  +<br>
  +<br>
  +<font size="+1" color="#000000">Guide</font>
  +<br>
  +<font size="-1">
  +<ul>
   <li>
  -<a href="install.html"><font size="-1">Installation</font></a>
  +<a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
   </li>
   <li>
  -<a href="afuture.html"><font size="-1">A Future</font></a>
  +<a href="guide-roles.html"><font size="-1">Development Roles</font></a>
   </li>
   <li>
  -<a href="todo.html"><font size="-1">Todo</font></a>
  +<a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
   </li>
   <li>
  -<a href="changes.html"><font size="-1">Changes</font></a>
  +<a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
   </li>
   <li>
  -<a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  +<a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">Administrators Guide</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="administrator-guide.html"><font size="-1">Overview</font></a>
  +<a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">Deployers Guide</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="deployers-guide.html"><font size="-1">Overview</font></a>
  +<a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
  -<font size="+1" color="#000000">Assembler's Guide</font>
  +<font size="+1" color="#000000">Reference</font>
   <br>
   <font size="-1">
   <ul>
   <li>
  -<a href="assemblers-guide.html"><font size="-1">Overview</font></a>
  -</li>
  -<li>
  -<a href="what-is-a-server-application.html"><font size="-1">What is a Server Application?</font></a>
  +<a href="api/index.html.xml"><font size="-1">API Docs</font></a>
   </li>
   <li>
  -<a href="creating-a-server-application.html"><font size="-1">Creating a Server Application</font></a>
  +<a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
   </li>
   <li>
  -<a href="config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  +<a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
   </li>
   <li>
  -<a href="assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  +<a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
   </li>
   <li>
  -<a href="environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  +<a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
   </li>
   </ul>
   </font>
   <br>
   <br>
  -<font size="+1" color="#000000">Block Developer's Guide</font>
  +<font size="+1" color="#000000">For Developers</font>
   <br>
   <font size="-1">
   <ul>
   <li>
  -<a href="block-developers-guide.html"><font size="-1">Overview</font></a>
  +<a href="for-developers-changes.html"><font size="-1">Changes</font></a>
   </li>
   <li>
  -<a href="what-is-a-block.html"><font size="-1">What is a Block?</font></a>
  +<a href="for-developers-todo.html"><font size="-1">Todo</font></a>
   </li>
   <li>
  -<a href="what-is-a-block-listener.html"><font size="-1">What is a Block Listener?</font></a>
  +<a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
   </li>
   <li>
  -<a href="what-is-an-application-listener.html"><font size="-1">What is an Application Listener?</font></a>
  +<a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
   </li>
   <li>
  -<a href="blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  +<a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
   </li>
   <li>
  -<a href="creating-a-block.html"><font size="-1">Creating a Block</font></a>
  +<a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
   </li>
  -</ul>
  -</font>
  -<br>
  -<br>
  -<font size="+1" color="#000000">All together</font>
  -<br>
  -<font size="-1">
  -<ul>
   <li>
  -<a href="example-configuration.html"><font size="-1">Example configuration</font></a>
  +<a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
   </li>
   </ul>
   </font>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/for-developers-a-future.html
  
  Index: for-developers-a-future.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - A future</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - A future</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - A future</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:Paul_Hammant@yahoo.com">Paul Hammant</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          A long term aim of Phoenix is to provide a platform that hosts multiple third party applications written only in Java within a single virtual machine.  The Phoenix platform is currently hosted on an Operating System such as Unix, Windows or Mac.  It could function directly on top of a Java Operating System.  A CPU combined with a suitable amount of memory, a basic BIOS, a Kernal, a suitable JVM and runtime library, could mount Phoenix and hosted server applications.
        </p>      
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>One step further</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          Imagine Sun making such a box under their own name or as Cobalt, using low power chips from their own stable or perhaps a StrongARM. That machine could be rack mounted like their current X1:
        </p> 
        
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="0">
  <tr>
  <td bgcolor="#525D76"><font size="0" color="#ffffff">Sun X1</font></td>
  </tr>
          
          
  <tr>
  <td><img src="http://www.sun.com/products-n-solutions/hw/networking/images/prodsplash/x1.jpg" alt="&copy; Sun Microsystems" border="0"></td>
  </tr>
  <tr>
  <td><font size="-1">
  <ul>
  <li>&copy; Sun Microsystems</li>
  </ul>
  </font></td>
  </tr>
        
  </table>
  </div> 
        
  <p align="justify">
          If that rackable server had 32 such CPUs, each with 128Mb of memory all booting Phoenix. And if the CPUs shared a single hard drive, we might have a machine that was tuned to CPU intensive activities. Cocoon/Tomcat, EJB clusters, might be load balanced by one of the CPUs running a Phoenix load balancer.  Alternate scenarios are for virtual site hosting.  It could be a "1U" render or bean farm with each internal CPU having its own TCP/IP address.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Is all this possible?</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          Well there are already romable J2SE implementations that are available for StrongARM chips on Compaq's handheld iPAQ.  We are there already, but for the client side rather than the server side.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/for-developers-changes.html
  
  Index: for-developers-changes.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Revision History</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Revision History</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Revision History</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <div align="right">
  <table width="100%" cellspacing="0" cellpadding="2" border="0">
  <tr>
  <td bgcolor="#525D76"><font face="arial,helvetica,sanserif" color="#ffffff"><b>Revision 4.0a3 
                     (November 13, 2001)
                  </b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
  <ul>
  <li>
  <img src="images/update.jpg" border="0" alt="changed" align="absmiddle">
      Add documentation describing BlockListener.
     (PD)</li>
  <li>
  <img src="images/update.jpg" border="0" alt="changed" align="absmiddle">
      Fixed bug that allowed binary distributions to be built without
      copying xerces.jar into correct place.
     (PD)</li>
  </ul>
  </font></td>
  </tr>
  <tr>
  <td bgcolor="#525D76"><font face="arial,helvetica,sanserif" color="#ffffff"><b>Revision 4.0a2 
                     (November 12, 2001)
                  </b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
  <ul>
  <li>
  <img src="images/update.jpg" border="0" alt="changed" align="absmiddle">
      Update Phoenix to use the new Avalon Framework Logger interface rather than
      directly using LogKits Logger class. This required a backwards incompatible 
      change in BlockContext. The getLogger() methods now return the Logger interface
      rather than LogKits Logger class. If a Block implements Loggable then it will
      be passed LogKits Logger, this is required for backwards compatability. If the 
      Block implements LogEnabled it will receive the new style Logger.
     (PD)</li>
  <li>
  <img src="images/add.jpg" border="0" alt="added" align="absmiddle">
      Add support for undeploying and unistalling applications. Add support for separating
      out install phase from deployment phase and persisting information about 
      application installations.
     (MT)</li>
  <li>
  <img src="images/update.jpg" border="0" alt="changed" align="absmiddle">
      Rework the application deployment format (ie .sar format) to be more in line
      with other specifications. See docs/creating-a-server-application.html in distribution 
      for current format description. The old format is deprecated but will still work.
     (PD)</li>
  <li>
  <img src="images/add.jpg" border="0" alt="added" align="absmiddle">
      Created the start of a Phoenix Developers Kit (PDK) that will enable 
      developers to rapidly become accustom to developing Phoenix applications.
     (PH)</li>
  <li>
  <img src="images/add.jpg" border="0" alt="added" align="absmiddle">
      Started to incorporate the JMX code more fully into Phoenix kernel. Started
      doing this by refactoring the base MBeans and testing using the RIs agent.
     (PD)</li>
  <li>
  <img src="images/update.jpg" border="0" alt="changed" align="absmiddle">
      Separated code that validated assembly of application into separate 
      classes. The validation is now much stricter and requires that 
      Blocks conform to established patterns. The validation phase should give
      more reasonable explanations for violations. Extra validation checks 
      include verifying that services offered by a Block are actually interfaces,
      that there is no circular dependencies, that declared Blocks and BlockListeners
      actually implement Block or BlockListener interface, that the names of Blocks
      are valid etc.
     (PD)</li>
  </ul>
  </font></td>
  </tr>
  <tr>
  <td bgcolor="#525D76"><font face="arial,helvetica,sanserif" color="#ffffff"><b>Revision 4.0a1 
                     (September 25, 2001)
                  </b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
  <ul>
  <li>
  <img src="images/update.jpg" border="0" alt="changed" align="absmiddle">
      Too many things to enumerate here.  This is the first public release,
      and the code is still considered alpha.  In future releases, we will
      be much more careful to record the changes to Phoenix.
     (BL)</li>
  </ul>
  </font></td>
  </tr>
  <tr>
  <td bgcolor="#525D76"><font face="arial,helvetica,sanserif" color="#ffffff"><b>Revision 3.1a2 
                     (Unreleased)
                  </b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
  <ul>
  <li>
  <img src="images/add.jpg" border="0" alt="added" align="absmiddle">
        Added stylesheet to convert Stylebook markup to DocBook markup.
       (BL)</li>
  <li>
  <img src="images/update.jpg" border="0" alt="changed" align="absmiddle">
        Changed the documentation build process to use Cocoon to build
        the site.
       (BL)</li>
  <li>
  <img src="images/remove.jpg" border="0" alt="deleted" align="absmiddle">
      Legacy support for nested configuration elements in assembly file
      removed.
     (PD)</li>
  <li>
  <img src="images/update.jpg" border="0" alt="changed" align="absmiddle">
      Simplified Loader and made it set ContextClassLoader before executing 
      Main method. It will also use the System property phoenix.home if set
      rather than always trying to dynamically determine home directory.
     (PD)</li>
  <li>
  <img src="images/add.jpg" border="0" alt="added" align="absmiddle">
      Added SingleAppEmbeddor to launch a kernel to load a single Application. 
      Patch supplied by "Eung-ju Park" (colus@isoft.co.kr). This is useful if 
      you need to reuse the blocks in other contexts (such as in a Servlet).
     (PD)</li>
  <li>
  <img src="images/add.jpg" border="0" alt="added" align="absmiddle">
      Made default SystemManager a NoopSystemManager. Patch supplied 
      by "Eung-ju Park" (colus@isoft.co.kr). To re-enable RMI manager a new
      command line switch "--remote-manager" was added.
     (PD)</li>
  <li>
  <img src="images/update.jpg" border="0" alt="changed" align="absmiddle">
      Reworked SecurityManager setup. Instead of starting a security 
      Manager inside the code it has been re-architectured so that the
      SecurityManager is set on the command line. This was to avoid a number
      of issues related to creating a URLClassLoader in an unprotected context
      before setting SecurityManager. ie As AccessControllerContext was null it 
      is impossible to use ClassLoader.getResource(AsStream)(). This means that 
      defining phoenix.insecure will no longer disable the SecurityManager. The 
      replacement method is to set the native OS environment variable 
      'PHOENIX_SECURE=false'. 
     (PD)</li>
  <li>
  <img src="images/update.jpg" border="0" alt="changed" align="absmiddle">
      Separate Parsing of CLI arguements into separate class (CLISetup).
      This is to facilitate launching Phoenix as a native daemon using
      Tomcats Services API.
     (PD)</li>
  <li>
  <img src="images/add.jpg" border="0" alt="added" align="absmiddle">
      Started Localizing text strings throughout Phoenix. This is done using 
      ResourceManager and Resources from Avalon/Excalibur project.
     (PD)</li>
  </ul>
  </font></td>
  </tr>
  </table>
  </div>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/for-developers-project-structure.html
  
  Index: for-developers-project-structure.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Project Structure</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Project Structure</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Project Structure</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:leosimons@apache.org">Leo Simons</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
  
  <p align="justify">Avalon Phoenix has seen lots of refactoring to create an intuitive
  code layout. It is usually quite easy to find what you need. This document
  provides an overview of the project structure. It is still under
  construction.</p>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Package structure</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
  
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
  org.apache.avalon.phoenix
  |
  |- components
  |  |- application
  |  |- classloader
  |  |- configuration
  |  |- deployer
  |     |- installer
  |  |- embeddor
  |  |- extensions
  |  |- kernel
  |  |- logger
  |  |- manager
  |     |- rmiadaptor
  |- frontends
  |- interfaces
  |- launcher
  |- metadata
  |- metainfo
  |- tools
     |- assembler
     |- configuration
     |- infobuilder
     |- tasks
     |- verifier
     |- xdoclet
  </pre>
  </td>
  </tr>
  </table>
  </div>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>CVS Directory structure</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
  
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
  jakarta-avalon
  |
  |- console : JMX-based management console
  |
  |- lib : for third party libraries
  |
  |- src
  |  |
  |  |- compat : deprecated stuff
  |  |- conf : jar manifest
  |  |- documentation : cocoon configuration
  |  |- java : java sources
  |  |- manifest : jar manifest files
  |  |- pdk : sources for PDK
  |  |- proposal : place for ideas to nurture
  |  |- schema : DTDs for XML files
  |  |- scratchpad :  place for nonsupported, unstable code
  |  |- script : shell scripts for usage in a standalone setup
  |  |- test : unit tests
  |  |- xdocs : site documentation in xml format
  |
  |- build.xml
  |- docs.xml
  |
  |- BUILDING.txt
  |- LICENSE.txt
  |- README.txt
  |- WARNING.txt
  </pre>
  </td>
  </tr>
  </table>
  </div>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/for-developers-todo.html
  
  Index: for-developers-todo.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Todo</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Todo</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Todo</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:avalon-dev@jakarta.apache.org">Avalon Documentation Team</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Todo</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
  
  
  <p align="justify">
  This document describes functionality that is either missing or not finished 
  within Phoenix.
  </p>
  
  
  <p align="justify">
  Wish List functionality is stuff that we would like to see implemented, but is
  not critical for release. This is the area where you can take ownership of a
  part of the project and contribute back.
  </p>
  
  
  <p align="justify">
  Very Important Work to Complete is stuff that we feel is holding up a release of
  Avalon.
  </p>
  
  
  <p align="justify">
  If you are a new developer to Phoenix or even an existing developer, these are
  areas where you can take ownership and help complete. Please do not ask us how
  you can help, but rather specific questions about how you think that these items
  should be implemented. It is up to you to take initiative and provide solutions
  to the missing functionality described below. ;-) If your see yourself as more
  of a application (rather than infrastructure) writer, then perhaps peruse
  Cornerstone's to-do list - it's even more ambitious.
  </p>
  
  
  <p align="justify">
  Documentation is *always* appreciated in any form. There are two ways to provide
  helpful documentation. The first way is to write up HTML or straight text
  documentation and send it to one of the primary authors directly (we are also
  willing to give you CVS write access if you wish). The second way is to post
  Questions/Answers to the FAQ under the Avalon sections there.
  There is a Getting Started document named
  "getting-started.html" that could always use additional documentation, examples
  and clarification. You need to take the initiative and just start writing down
  your thoughts and concerns and questions and answers and then giving those back
  to us.
  </p>
  
  
  <p align="justify">
  If you need more detailed help, please join, then send mail to the mailing
  list (avalon-dev@jakarta.apache.org) and ask your specific questions there.
  </p>
  
  
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Wish List</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Separate and Antify Validation code</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Refactor block validation code. Write an Ant taks that uses this
        and validates the block jar files and another task that validates the
        assembly.xml file.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Log messages</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Refactor Log messages so that they are structured in a manner more
        suitable for administrators rather than developers.
        </p>
        
  <p align="justify">
        update 12/05/02: mostly done.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Generated Configurations</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Define and implement a smart way to generate Avalon configurations.
        Define configuration template containing default configuration,
        user configuration file to overwrite or append configurations to template,
        implement code to merge all servers configuration file to a single Avalon
        configuration file.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Time Scheduler changes</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Rework the DefaultTimeScheduler so that entrys are removed from heap when
        reset. Otherwise it could lead to excessive buildup of invalidated entries
        if many are reset but remain in heap.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Opening some tightly kernel-coupled services</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Rework kernel so that ConfigurationRepository, Logging and Management can
        be routed through ServerApplications.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Virtual File System / Jars within Jars</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Implement a simple read-only VFS so that .sar files do not need to be
        expanded.
        </p>
        
  <p align="justify">
        update 12/05/02: done.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Thread pooling</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Rework kernel so that thread boundaries are respected and secure. This essentially
        involves using ThreadPools to execute phases and for management.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>JNDI service</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Determine if we need a naming service. If so provide a simple JNDI based naming
        service possibly built on top of cadastre.
        </p>
        
  <p align="justify">
        update 12/05/02: we've decided not to do so at this time.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Block Management remotely</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Separate out and specify the way in which different parts of system are managed.
        ie Compare how remote Management of Blocks could occur vs Deployer/Kernel/Embeddor
        management occurs.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Hot deployment</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        A standard system for hot deploying and undeploying. This may require the building
        of FileMonitors that will read a file when it is changed.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Reconfiguration</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
  <em>This has a few facets:</em>
  </p>
        
  <p align="justify">
        A standard reconfiguration system.  This may require the building
        of FileMonitors that will read a file when it is changed.  Any
        kind of block or component that extends the Reconfigurable interface
        gets sent the new configuration.
        </p>
        
  <p align="justify">
        A mechanism to allow one block to be the master of another's configuration
        programmatically.  This would mean that whilst in use, the configuration
        could change.  It could happen invisibly or as part of human interaction
        via some UI.  The blocks woyld be granted configuration-update rights in
        assembly.xml.  Discussed on the list in late Aug, early Sept 2001.
        </p>
        
  <p align="justify">
        Define and implement needed stuff to allow hot and warm reconfiguration at
        runtime.
        </p>
  
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Proxy Interfaces</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Currently services are provided via a proxy interface. Rework kernel so that
        the proxy interface can be turned off via a command-line switch.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Management Console</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Management console/Client interface. CLI version aswell as a GUI version.
        </p>
        
  <p align="justify">
        update 12/05/02: we have a draft of concept.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Default JNDI Contexts</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Avalon should provide default JNDI contexts
        that Block implementers can extend and use like
        Context, EventContext, and DirectoryContext.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Java Messaging Service</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        JMS (Java Messaging Service) for the Connection Manager. It
        will provide a standard and flexible connection service and
        messaging service. It allows for both point to point messaging
        and multicast messaging (subscriber/provider).
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Server Pools</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Support for server pools.  Several Phoenix servers should be able
        to pool resources and act as one server regardless of VM, or
        physical machine they are on.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Block loading remotely</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Remote loading of Blocks. Phoenix should be able to pull a block
        at run time from a remote server, check the signature, and run it
        with proper permissions.  This would allow for the possibility of
        automatically upgrading blocks.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Remote Control</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Write some code to remotely control Phoenix. (This will most likely be
        rolled into JMX support).
        </p>
        
  <p align="justify">
        update 12/05/02: done (through jmx).
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Transactions</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Define and implement some Transaction pattern for the Repository. Maybe JTA?
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Ongoing work</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Help needed!</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        We can really use some help here! This is a top priority and all
        contributions will be welcomed.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Documentation</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Write all documentation.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>JavaDocs</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Update JavaDocs for decent developer documentation.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
  
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Very Important Work to Complete</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Java Management eXtentions</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        JMX (Java Management eXtentions) for central management of
        Avalon. If JMX cannot be done due to licensing, we should
        make the current beginnings of central management more
        robust.
        </p>
        
  <p align="justify">
        update 12/05/02: we're at roughly 80% functionality. We're
        using MX4J as our default MBeanServer.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
  
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/guide-administrator.html
  
  Index: guide-administrator.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Guide - for Administrators</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Guide - for Administrators</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Guide - for Administrators</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:bloritsch@apache.org">Berin Loritsch</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          Avalon is a Server Framework that provides or will provide for 
          central administration, server pooling, and quicker time to market.  
          The framework defines a standard method of piecing together server 
          components and creating a server.
        </p>
        
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Target Audience</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
          
  <p align="justify">
            This documentation will describe the care and feeding of the Avalon
            Phoenix kernel from the point of view of the administrator.
          </p>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
        
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Guide non-existent, but features are there</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
  	
  <p align="justify">
            We currently have no info on this whatsoever. However, this doesn't
  	  mean that Phoenix is not easy to administrate - the contrary is true,
  	  since our tight integration with JMX exposes the entire kernel at
  	  runtime.
          </p>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/guide-architecture.html
  
  Index: guide-architecture.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Guide - Architectural overview</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Guide - Architectural overview</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Guide - Architectural overview</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:leosimons@apache.org">Leo Simons</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          This document briefly describes the Phoenix server architecture.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Multiple Server Application hosting</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          Phoenix hosts one or more server applications at the same time in the same Virtual machine.
        </p>
        
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="0">
  <tr>
  <td bgcolor="#525D76"><font size="0" color="#ffffff">Phoenix layer diagram</font></td>
  </tr>
          
          
  <tr>
  <td><img src="images/phoenix-layers.jpg" alt="Paul Hammant, 2001" border="0"></td>
  </tr>
  <tr>
  <td><font size="-1">
  <ul>
  <li>Paul Hammant, 2001</li>
  </ul>
  </font></td>
  </tr>
        
  </table>
  </div>
        
  <p align="justify">
          Shown above are three hosted server applications.  A mail server that would implement
          multiple listeners for incoming and outgoing services (POP3, SMTP, IMAP etc).  Outlook,
          Eudora and other mail clients would be able to connect to the server.  As it happens,
          Apache has a project in progress called "James" that provides these services and Newsgroups.
          Also shown is a Web server.  That would respond to HTTP/HTTPS requests from similar standards
          based clients and be able to host it's own applications (web-apps and virtual websites). Lastly,
          and non-existant currently at Apache is an EJB Server.  This would be able to host it's own
          bean applications and might use the web server for it's HTTP needs.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Packaging of a Server Application</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          Phoenix application are distriuted in a single archive.
        </p>
        
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Packaging in terms of blocks</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
          
  <p align="justify">
            Phoenix hosts server applications made up of blocks.  The blocks may depend on libraries
            to function correctly.  The blocks are tied together with Assembly instructions and Configured
            externally.
          </p>
          
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="0">
  <tr>
  <td bgcolor="#525D76"><font size="0" color="#ffffff">Phoenix application in block view</font></td>
  </tr>
            
            
  <tr>
  <td><img src="images/phoenix-app-block.jpg" alt="Paul Hammant, 2001" border="0"></td>
  </tr>
  <tr>
  <td><font size="-1">
  <ul>
  <li>Paul Hammant, 2001</li>
  </ul>
  </font></td>
  </tr>
          
  </table>
  </div>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
        
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Packaging in terms of block jar files</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
          
  <p align="justify">
            The server application is entirely contained withing one "sar" file.  Sar is "Server ARchive".
            Each block is a jar file.  The dependant libraries are regular jars (placed
            within a directory "lib" insde the sar file).  The Assembly and configuration instructions
            are in xml form and contained within a "conf" directory inside the sar file.
          </p>
          
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="0">
  <tr>
  <td bgcolor="#525D76"><font size="0" color="#ffffff">Phoenix application in block jar view</font></td>
  </tr>
            
            
  <tr>
  <td><img src="images/phoenix-app-blockjars.jpg" alt="Paul Hammant, 2001" border="0"></td>
  </tr>
  <tr>
  <td><font size="-1">
  <ul>
  <li>Paul Hammant, 2001</li>
  </ul>
  </font></td>
  </tr>
          
  </table>
  </div>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
        
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>FtpServer as a Phoenix application</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          FtpServer (part of the Avalon/Cornerstone project) is distributed in sar form.  Here is a
          view of it's blocks.  It has no third party jars that it depends on.
        </p>
          
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="0">
  <tr>
  <td bgcolor="#525D76"><font size="0" color="#ffffff">FtpServer, a real Phoenix application</font></td>
  </tr>
            
            
  <tr>
  <td><img src="images/phoenix-app-ftpserver.jpg" alt="Paul Hammant, 2001" border="0"></td>
  </tr>
  <tr>
  <td><font size="-1">
  <ul>
  <li>Paul Hammant, 2001</li>
  </ul>
  </font></td>
  </tr>
          
  </table>
  </div>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
        
  <p align="justify">
          Notes - Phoenix does not limit the number of blocks that it allows in a sar file.  We have taksdefs for Apache's Ant
          tool for making sar files.  See the "Block Developers Guide" (left
          margin of this page) for more what/how/why.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/guide-assemblers-creating-a-server-application.html
  
  Index: guide-assemblers-creating-a-server-application.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Guide - Creating a Server Application</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Guide - Creating a Server Application</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Guide - Creating a Server Application</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:peter@apache.org">Peter Donald</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          This document will describe the process for assembling your first Server
          Application. There is a number of steps in creating a Server Application. 
          These are;
        </p>
        
  <ol>
          
  <li>Select the blocks you wish to assemble.</li>
          
  <li>Write the config.xml file.</li>
          
  <li>Write the assembly.xml file.</li>
          
  <li>Write the environment.xml file.</li>
          
  <li>Package the component and related resources into a sar file.</li>
        
  </ol>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Select the Blocks to Assemble</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          As a assembler it is your responsibility to select the particular Blocks
          required to build your application. You may aquire the Blocks from a number
          of sources depending on your resources. You may use the core Blocks supplied
          with Phoenix, contract someone to build the component or download the Block
          from an online repository.          
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Write the config.xml file</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          Configuration data for blocks is stored in the config.xml file.
          For more detail on the format of config.xml see the 
          <a href="reference-config-xml-specification.html">specification</a>.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Write the assembly.xml file</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          The next stage is to write the assembly.xml file. The assembly.xml specifies 
          the instances of Blocks that are part of the Server Application. Each 
          Block has a name. Each block may also have dependencies that need to be 
          satisfied and this can be done via the 'provide' sub-elements. The
          provide element maps block instances from the Server Application namespace
          to the Block role namespace specified in BlockInfo files. For more detail 
          on the format of assembly.xml see the <a href="reference-assembly-xml-specification.html">
          specification</a>.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Write the environment.xml file</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          The next stage is to write the environment.xml file. The environment.xml is used to
          configure the code-based security policy, log management and thread pooling.
          For more detail on the format of environment.xml see the 
          <a href="reference-environment-xml-specification.html">specification</a>.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Create the sar file</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          The sar file format is the standard distribution format of Phoenix Server
          Applications. It is a standard Jar file with a specific directory layout. 
          The config.xml, environment.xml and assembly.xml file must be stored in 
          <code>SAR-INF/</code> directory of the archive. All jar files, including
          both those that contain blocks and those that contain support classes
          should be stored in the <code>SAR-INF/lib/</code> directory.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Guide Contents</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
         
  <ol>
          
  <li>
  <a href="guide-assemblers-what-is-a-server-application.html">What is a Server Application?</a>
  </li>
          
  <li>How do I create a Server Application?</li>
          
  <li>
  <a href="reference-config-xml-specification.html">config.xml specification</a>
  </li>
  	
  <li>
  <a href="reference-assembly-xml-specification.html">assembly.xml specification</a>
  </li>
          
  <li>
  <a href="reference-environment-xml-specification.html">environment.xml specification</a>
  </li>
         
  </ol>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/guide-assemblers.html
  
  Index: guide-assemblers.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Guide - for Server Assemblers</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Guide - for Server Assemblers</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Guide - for Server Assemblers</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:avalon-dev@jakarta.apache.org">Avalon Documentation Team</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Who Should Read This Book?</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          The Server Assemblers Guide is written for assemblers who want to assemble a
          Server Application for Phoenix. It is assumed that you are familiar with
          the basic concepts of the Phoenix framework.
        </p>
        
  <p align="justify">
          This book concentrates on assembly, and as such requires no knowledge of
          java programming. It does however assume you are familiar with server
          fundamentals, basic security measures, and performance tuning.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Organization</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          The information is organized into sections detailing a specifc aspect of
          assembling ServerApplications.
        </p>
  	 
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Contents</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
         
  <ol>
           
  <li>
  <a href="guide-assemblers-what-is-a-server-application.html">What is a Server Application?</a>
  </li>
          
  <li>
  <a href="guide-assemblers-creating-a-server-application.html">How do I create a Server Application?</a>
  </li>
          
  <li>
  <a href="reference-config-xml-specification.html">config.xml specification</a>
  </li>
  	
  <li>
  <a href="reference-assembly-xml-specification.html">assembly.xml specification</a>
  </li>
          
  <li>
  <a href="reference-environment-xml-specification.html">environment.xml specification</a>
  </li>
         
  </ol>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/guide-assemblers-what-is-a-server-application.html
  
  Index: guide-assemblers-what-is-a-server-application.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Guide - What is a Server Application?</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Guide - What is a Server Application?</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Guide - What is a Server Application?</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:peter@apache.org">Peter Donald</a>, <a href="mailto:bloritsch@apache.org">Berin Loritsch</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          In Phoenix, a Server Application is a set of Blocks that act in concert
          to provide a unified user service. Example Server Applications include a Mail 
          Server, File Server, Web Server etc. The Server Application is a high level 
          component that contains a set of Block components.
        </p>
        
  <p align="justify">
          A Server Application requires a number of components other than Blocks to 
          be complete. A Server Application requires configuration files to define 
          Server Application wide settings (threading, security, logging), to define
          how blocks are wired together, and to define configuration data for the 
          Block instances. A Block can also require other resources that are 
          application specific.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Guide Contents</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
         
  <ol>
          
  <li>What is a Server Application?</li>
          
  <li>
  <a href="guide-assemblers-creating-a-server-application.html">How do I create a Server Application?</a>
  </li>
          
  <li>
  <a href="reference-config-xml-specification.html">config.xml specification</a>
  </li>
  	
  <li>
  <a href="reference-assembly-xml-specification.html">assembly.xml specification</a>
  </li>
          
  <li>
  <a href="reference-environment-xml-specification.html">environment.xml specification</a>
  </li>
         
  </ol>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/guide-block-developers-creating-a-block.html
  
  Index: guide-block-developers-creating-a-block.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Guide - Creating a Block</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Guide - Creating a Block</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Guide - Creating a Block</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:peter@apache.org">Peter Donald</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          This document will describe the process for creating your first block. There 
          are essentially three steps that must be completed before your block is ready 
          for assembling.
        </p>
        
  <ol>
          
  <li>Write the Block component.</li>
          
  <li>Write the BlockInfo meta-info description file.</li>
          
  <li>Package the component and related resources into a block jar file.</li>
        
  </ol>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Writing the Block component</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          Writing the Block is the main task you will be called to do. It follows all
          the rules of writing a standard Avalon component. Block writers must also 
          extend the <code>org.apache.phoenix.Block</code> interface. 
        </p>
        
  <p align="justify">
          If a block implements the Composer interface it will be passed an instance
          of <code>org.apache.phoenix.BlockContext</code> which is an extended version
          of <code>org.apache.avalon.Context</code>. Other than this minor change the 
          Block's container (the Phoenix Kernel) supports all the Avalon lifecycle 
          methods or will in the near future (at the moment suspend/resume is not yet 
          supported).
        </p>
        
  <p align="justify">
          The block can implement an instance of <code>org.apache.phoenix.Service</code>
          if it wishes to export a service to external blocks. It is also possible to 
          aquire services from other blocks in the <code>compose()</code> method.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Write the BlockInfo</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          You must create this file to indicate which services this Block depends upon 
          and those services which it offers. It is more fully documented in the 
          <a href="reference-blockinfo-specification.html">BlockInfo Specification</a> document.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Create the jar package</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          The final step is packaging up the implementation files, BlockInfos and other
          resources into a jar file. The jar file is a standard jar file with special manifest 
          entries. For each Block that is included in the jar, a new manifest attribute
          must be added, namely "Avalon-Block: true". An example manifest file is 
          displayed below.
        </p>
        
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
  Manifest-Version: 1.0
  Created-By: Apache Avalon Project
  
  Name: com/biz/cornerstone/blocks/MyBlock.class
  Avalon-Block: true
        </pre>
  </td>
  </tr>
  </table>
  </div>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Guide Contents</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
         
  <ol>
          
  <li>
  <a href="guide-block-developers-what-is-a-block.html">What is a block?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-what-is-a-block-listener.html">What is a block listener?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-what-is-an-application-listener.html">What is an application listener?</a>
  </li>
          
  <li>How do I create a block?</li>
          
  <li>
  <a href="guide-block-developers-making-phoenix-compatible-comps.html">How do I make my components phoenix-compatible?</a>
  </li>
          
  <li>
  <a href="reference-blockinfo-specification.html">BlockInfo specification</a>
  </li>
         
  </ol>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/guide-block-developers.html
  
  Index: guide-block-developers.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Guide - for Block Developers</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Guide - for Block Developers</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Guide - for Block Developers</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:bloritsch@apache.org">Berin Loritsch</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Who Should Read This Book?</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br> 
      	
  <p align="justify">The BDG is written for developers who want to create
  		  blocks for Phoenix. It is assumed that you are familiar with Java, XML, Avalon 
            patterns and server side security issues. This book provides an overview of 
            the underlying technology, Java classes and interfaces, component model, and
            behavior of server Blocks within Phoenix.</p>
  		
  <p align="justify">While this book concentrates on server fundamentals, it should not
  		  be construed as a &ldquo;dummy's&rdquo; book. Server side programming
  		  is complex because of the performance and security issues you must
  		  balance.</p>
  		
  <p align="justify">You should be well versed in the Java language and have some
  		  practical experience developing server solutions. If you need a stronger
  		  background on server side programming, I suggest finding a good book on the
  		  subject (any suggestions?).</p> 
  	 
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Organization</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
         Here is how the information is presented. The first few chapters are
         foundational material, and describe the basic concepts you can use in your
         own blocks. The later chapters specify in detail the formal requirements of
         Block implementations.
        </p>
  	 
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Contents</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
         
  <ol>
          
  <li>
  <a href="guide-block-developers-what-is-a-block.html">What is a block?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-what-is-a-block-listener.html">What is a block listener?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-what-is-an-application-listener.html">What is an application listener?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-creating-a-block.html">How do I create a block?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-making-phoenix-compatible-comps.html">How do I make my components phoenix-compatible?</a>
  </li>
          
  <li>
  <a href="reference-blockinfo-specification.html">BlockInfo specification</a>
  </li>
         
  </ol>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/guide-block-developers-making-phoenix-compatible-comps.html
  
  Index: guide-block-developers-making-phoenix-compatible-comps.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Guide - Making components that are Phoenix compatible</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Guide - Making components that are Phoenix compatible</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Guide - Making components that are Phoenix compatible</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:hammant@apache.org">Paul Hammant</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
        Quite often reusable components are made elsewhere.  Apache has a number 
        of places where this activity is going on.  While we get it right most of
        the time, some components developer elsewhere are harder to use in Phoenix
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Things to remember</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          There are a number of common sense things to remember when making or 
          adapting a Java component to be reusable in Phoenix as block.
        </p>
        
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Beanification</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>      
          
  <p align="justify">
            
  <ul>
              
  <li>Have a public empty constructor for your main class</li>
              
  <li>Have setters for its configuration.</li>
              
  <li>Do not assume that the File is where dependancies are - people may reuse this in jars, applets etc.</li>
              
  <li>Divorce your main method (if appl) from your main class - Phoenix does not call main methods.</li>            
              
  <li>Consider that the setup and initialization of the bean does not happen in the 
                  constructor - as a convenience to the user, have an initialize() method</li>            
              
  <li>If the comp has start/stop functinality consider having start() and stop() methods.</li>  
              
  <li>Try to avoid Singleton concepts.  There could be multiple blocks in one sar using differnt (by design) instances of your bean</li>
            
  </ul>
          
  </p>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>              
        
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Inversion of Control Pattern</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
           The IoC pattern is described <a href="http://jakarta.apache.org/avalon/framework/inversion-of-control.html">
           here</a>.  This means for Phoenix avoiding static concepts including loggers.
        </font></td>
  </tr>
  </table>
  </div>
  <br>
        
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Sepearation of interface and implementation</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
          
  <p align="justify">
           The separation of interface/impl pattern is described <a href="http://jakarta.apache.org/avalon/framework/separation-of-interface-and-implementation.html">here</a>.  
           For Phoenix is means we can (if done completely) mount the implementation jar in place where hosted client compoennts (beans, servlets etc) can use the API, bit not see the implementation.  We can also reimplement or wrap
           bits of the implementation.  For example we could write a pluggable implementation that could, for a certain API
           journal some methods, but still delegate to the real impl.  Which pluggable impl is used by Phoenix when it
           boots is determined in assembly.xml of course.
          </p>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
        
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Opening up the API</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
          
  <p align="justify">
           Given that you have divided into interface and impl, there are probably plenty of methods you
           can put method in the interface you never though might be used.  For example if you are making JDBC
           compliant relational database, and it is a bean, you could easily think that the only use would be
           clients via JDBC over sockets.  Well, given that Phoenix can now mount the RDBMS block, it might want
           to be reused by other blocks that other people have developed inside the the same SAR file.  In that case
           have beanlike methods of ...
          <ol>
            
  <li>Database createDatabase(String name)</li>
            
  <li>Database cloneDatabase(String name)</li>
          
  </ol>
          .. might be useful.  Just because you can only see a ServerSocket interface does not mean that others do.
          </p>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Example compatible comp</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
      
  <p align="justify">
        Below are an interface and implemmentation that are suitably separated, are beanlike and is in accordance
        with the IoC pattern...
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
  package examplecomp;
  public interface WebServer {
      void mountWar(String contextName, URL pathToWar);
      void unMountWar(String contextName);
  }
  
  package examplecomp.server;
  public class MyWebServer implements WebServer {
  
      public MyWebServer() {
          // whatever.
      }
      public void setPort(int port) {
          // this is one configuration item.
      }
      public void initialize() {
          // whatever.
      }
      public void start() {
          // whatever.
      }
      public void stop() {
          // whatever.
      }
      public void mountWar(String contextName, URL pathToWar) {
          // whatever.
      }
      public void unMountWar(String contextName) {
          // whatever.
      }
  }
  </pre>
  </td>
  </tr>
  </table>
  </div>
        For standalone mode, it might be launched like so:
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
  package examplecomp.main;
  public class WebServerMain {
      public static void main(String[] args) throws Exception {
          MyWebServer ws = new WebServer();
          ws.setPort(Integer.parseInt(args[0]));
          ws.initialize();
          ws.start();
          ws.mountWar(args[1], new File(args[2]).toURL());
      }
  }
  </pre>
  </td>
  </tr>
  </table>
  </div>
        When we are trying to run this in phoeinix we might have this wrapper:
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
  package examplecomp.block;
  public class WebServerBlock extends AbstractLoggable implements Block, WebServer, Startable, Configurable, Initializable {
      private int mPort;
      private WebServer mWebServer;
  
      public WebServerBlock() {
          mWebServer = new MyWebServer();
      }
  
      public void configure(final Configuration configuration) throws ConfigurationException {
          mPort = configuration.getChild("port").getValueAsInteger( 9001 );
      }
  
      public void initialize() throws Exception {
          mWebServer.setPort(mPort);
          mWebServer.initialize();
      }
  
      public final void start() throws Exception {
          mWebServer.start();
      }
  
      public void stop() throws Exception {
  	mWebServer.stop();
      }
  
      public void mountWar(String contextName, String pathToWar) {
          mWebServer.mountWar(contextName, pathToWar);
      }
  
      public void unMountWar(String contextName) {
          mWebServer.unMountWar(contextName);
      }
  }
  </pre>
  </td>
  </tr>
  </table>
  </div>
        This basically shows the impl wrapped and taking its configuration from the config.xml
        that phonix prefers from configuration.  The the developer wanted they could ignore
        that place of configuration and use their own config files.  If the WebServer block were
        being reused by another Phoenix block (say an EJB server), it might be like so:
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
  package somebeanserver;
  public class EJBBlock extends AbstractLoggable implements Block, Composable {
  
      private WebServer mWebServer;
  
      public void compose(final ComponentManager compMgr) throws ComponentException {
          mWebServer = compMgr.lookup("WebServer");
      }
  
      public void mountEar(String contextName, String pathToEar) {
          String[] warContextNames = getWarContexts(pathToEar);
          URL[] wars = getWarFiles(pathToEar);
          for (int i = 0; i &lt; wars.length; i++) {
              mWebServer.mountWar(warContextNames[i], wars[i]);
          }
      }
  
      public void unMountEar(String contextName) {
          // whatever
      }
  }
  </pre>
  </td>
  </tr>
  </table>
  </div>
      
  </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Misconceptions</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          The following are worth stating:
          <ul>
            
  <li>You do not have to implement any Avalon interfaces to be reusable (wrap strategy) inside Avalon.</li>
            
  <li>Being Phoenix compatible is just as useful for whole servers as it is for small components.</li>
            
  <li>Being Phoenix compatible can be for tools that are intended for client-side as well as server use.</li>
          
  </ul>
        
  </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Guide Contents</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
         
  <ol>
          
  <li>
  <a href="guide-block-developers-what-is-a-block.html">What is a block?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-what-is-a-block-listener.html">What is a block listener?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-what-is-an-application-listener.html">What is an application listener?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-creating-a-block.html">How do I create a block?</a>
  </li>
          
  <li>How do I make my components phoenix-compatible?</li>
          
  <li>
  <a href="reference-blockinfo-specification.html">BlockInfo specification</a>
  </li>
         
  </ol>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/guide-block-developers-what-is-a-block.html
  
  Index: guide-block-developers-what-is-a-block.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Guide - What is a Block?</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Guide - What is a Block?</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Guide - What is a Block?</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:fede@apache.org">Federico Barbieri</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">In Avalon Phoenix, there are three component layers:</p>
          
  <ul>
            
  <li>Blocks</li>
            
  <li>Components</li>
            
  <li>Classes</li>
          
  </ul>
        
  <p align="justify">
          They represent ever narrowing views of a component based architecture.
          The best analogy is that of hardware.  In the PC world, a Block would
          be like a PCI card, a Motherboard, a Case, or a Hard Drive.  A Component
          would be like the chips on the cards.  And classes would be like the
          individual transistors on the chip.  Granted, the actual economies
          of scale in this analogy don't hold to software (a component will
          not have millions of classes).
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>What is a Block?</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          A Block is a Component on a larger scale. It is usually the
          implementation of a Service. Examples of Blocks are
          "Persistent Object Store", "Connection Pools", "XML Database",
          "Authenticator" and so on.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Guide Contents</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
         
  <ol>
          
  <li>What is a block?</li>
          
  <li>
  <a href="guide-block-developers-what-is-a-block-listener.html">What is a block listener?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-what-is-an-application-listener.html">What is an application listener?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-creating-a-block.html">How do I create a block?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-making-phoenix-compatible-comps.html">How do I make my components phoenix-compatible?</a>
  </li>
          
  <li>
  <a href="reference-blockinfo-specification.html">BlockInfo specification</a>
  </li>
         
  </ol>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/guide-block-developers-what-is-a-block-listener.html
  
  Index: guide-block-developers-what-is-a-block-listener.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Guide - What is a Block Listener?</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Guide - What is a Block Listener?</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Guide - What is a Block Listener?</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:peter@apache.org">Peter Donald</a>, <a href="mailto:Paul_Hammant@yahoo.com">Paul Hammant</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          A Phoenix Application consists of Blocks. Blocks can depend on the 
          services of other Blocks. However there is circumstances in which
          relationships between Blocks other than dependency relationships 
          should exist in an application.
        </p>
        
  <p align="justify">
          For example, you may have a Block that is capable of exporting
          other Blocks as SOAP services. The Blocks that wish to be exported 
          as SOAP services may need to export a service interface that extends
          SOAPClient. 
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>What is a Block Listener?</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          A BlockListener is a component that is created before any Blocks are 
          created in an Application. It receives notification after each Block
          is created and setup for Application. The listener also receives 
          notification when a Block is about to be shutdown.
        </p>
        
  <p align="justify">        
          The relationship discussed above (between SOAPServer and SOAPClients)
          could be modelled as dependencies but that would mean that each application 
          would need to modify the SOAPServer so that it depended on a particular 
          number of SOAPClients that was specific to application. A better approach 
          to modelling these relationships would be to use a BlockListener to "wire" 
          together the SOAPClient services in Blocks to the SOAPServer service. As 
          soon as any Block is detected that implements a SOAPClient service it could
          be registered with the SOAPServer.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>How to make a block listener</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          Like normal blocks, a block listener can be <em>LogEnabled</em> and take 
          configuration via <em>Configurable</em>.  The special feature is that it 
          must implement <em>BlockListener</em> and the four methods that are a
          consequence of that.  Those methods illustrate blocks being added and 
          removed etc and come with a <em>BlockEvent</em> argument.  The following 
          section in assembly.xml causes instantiation of the block listener:
        </p>
        
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
          &lt;listener class="pkg.MyBlockListener" name="a-suitable-name" /&gt;      
        </pre>
  </td>
  </tr>
  </table>
  </div>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Guide Contents</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
         
  <ol>
          
  <li>
  <a href="guide-block-developers-what-is-a-block.html">What is a block?</a>
  </li>
          
  <li>What is a block listener?</li>
          
  <li>
  <a href="guide-block-developers-what-is-an-application-listener.html">What is an application listener?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-creating-a-block.html">How do I create a block?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-making-phoenix-compatible-comps.html">How do I make my components phoenix-compatible?</a>
  </li>
          
  <li>
  <a href="reference-blockinfo-specification.html">BlockInfo specification</a>
  </li>
         
  </ol>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/guide-block-developers-what-is-an-application-listener.html
  
  Index: guide-block-developers-what-is-an-application-listener.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Guide - What is an Application Listener?</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Guide - What is an Application Listener?</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Guide - What is an Application Listener?</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:Paul_Hammant@yahoo.com">Paul Hammant</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          This is very similar to <em>BlockListener</em> in that it is notified
          during lifecycle of blocks and application.  In Java terms the
          <em>ApplicationListener</em> interface extends <em>BlockListener</em>
          so it is always informd of both types of events
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Events notified</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          ApplicationListener components are created before any Blocks are
          created in an Application. They receive notifications before and
          after the Applictaion is started and stopped.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>How to make a block listener</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          Like normal blocks, an application listener can be <em>LogEnabled</em>
          and take configuration via <em>Configurable</em>.  The special feature
          is that it must implement <em>ApplicationListener</em> and implement
          the four methods that are a consequence of that (as well as four from
          <em>BlockListener</em>).  The following section in assembly.xml causes
          instantiation of the application listener.  It is exactly the same as
          that for <em>BlockListener</em>:
        </p>
        
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
          &lt;listener class="pkg.MyApplicationListener" name="a-suitable-name" /&gt;
        </pre>
  </td>
  </tr>
  </table>
  </div>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Guide Contents</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
         
  <ol>
          
  <li>
  <a href="guide-block-developers-what-is-a-block.html">What is a block?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-what-is-a-block-listener.html">What is a block listener?</a>
  </li>
          
  <li>What is an application listener?</li>
          
  <li>
  <a href="guide-block-developers-creating-a-block.html">How do I create a block?</a>
  </li>
          
  <li>
  <a href="guide-block-developers-making-phoenix-compatible-comps.html">How do I make my components phoenix-compatible?</a>
  </li>
          
  <li>
  <a href="reference-blockinfo-specification.html">BlockInfo specification</a>
  </li>
         
  </ol>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/guide-deployers.html
  
  Index: guide-deployers.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Guide - for Deployers</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Guide - for Deployers</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Guide - for Deployers</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:peter@apache.org">Peter Donald</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          Currently deploying a server application under Phoenix is simply a matter 
          of dropping the .sar file into the appropriate directory (<code>apps/</code>)
          and restarting Phoenix. In the future there will be more advanced methods 
          of deploying and undeploying Server Applications without restarting Phoenix.
        </p>
        
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Target Audience</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
          
  <p align="justify">
            This documentation describes the methods through which you can deploy 
            Server Applications under the Phoenix kernel. It will be expanded as 
            the system becomes more complete.
          </p>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/guide-example-configuration.html
  
  Index: guide-example-configuration.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Guide - Example Configuration</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Guide - Example Configuration</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Guide - Example Configuration</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:mcconnell@osm.net">Stephen McConnell</a>, <a href="mailto:g-froehlich@gmx.de">Gerhard Froehlich</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">This page contains a real production example of a block
        assembly and block .xinfo description based an extract from
        a B2B Enterprise Integration and Collaboration Platform developed by
        <a href="http://www.osm.net">OSM</a>
  </p>.
        <p align="justify">This example was originally a Mailing List response to a
        some user questions!</p>
        
  <p align="justify">The orginal post was written by Stephen McConnell from OSM.</p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>The example</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">First we start with a manifest file in a jar the contains
        a block.  The manifest contains the declaration of the path
        to the block implementation.  This path is also used to
        resolve the .xinfo file.  In this case the <code>.xinfo</code>
        description will be located under
        <code>org/apache/acme/hub/gateway/pki/PKIProcessServer.xinfo</code>
  </p>
        
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
  
  Manifest-Version: 1.0
  Created-By: ACME Corporation
  
  Name: org/apache/acme/hub/gateway/pki/PKIProcessServer.class
  Avalon-Block: true
  
        
        </pre>
  </td>
  </tr>
  </table>
  </div>
        
  <p align="justify">The <code>.xinfo</code> file contains a description of a
        reasonably simple block that serves as a factory for business
        processes that handle PKI certification requests:</p>
        
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
  &lt;?xml version="1.0"?&gt;
  
  &lt;blockinfo&gt;
  &lt;block&gt;
      &lt;version&gt;1.0&lt;/version&gt;
    &lt;/block&gt;
  
    &lt;services&gt;
        &lt;!--
        This block could be declaring several services that it supports.
        Unlike a Java interface, the service includes a version tag. So
        it's possible for a block to have several services with possibly
        different versions. If there are multiple services then just
        declare them with multiple service entries here. Phoenix will make
        sure that the class with the same name as the .xinfo file
        implements these interfaces (if it doesn't then Phoenix will
        terminate).
        --&gt;
        &lt;service name="org.apache.acme.hub.gateway.FactoryService" version="1.0" /&gt;
    &lt;/services&gt;
  
    &lt;!--
    So far, we have the definition of a class that supports possibly
    multiple version interfaces. But things get much more interesting, when
    we think about the services that this block requires in order to function
    properly. That's partly handled by the dependencies element and partly by
    the assembly.xml file (which I'll explain later). In the following
    dependency example there are seven "service" dependencies (i.e. 7 versioned
    interface dependencies that must be fulfilled for this block to function.
    --&gt;
    
    &lt;dependencies&gt;
        &lt;!--
        Each dependency contains a declaration of a role name and a service 
        interface and a version that can fulfil that role. The dependency 
        does not say anything about where that service implementation should
        come from (that's the job the assembly.xml file). The role element 
        is simply the label used in the implementation of your block configure 
        method that distinguishes a particular instance of the service.
        --&gt;
        &lt;dependency&gt;
            &lt;role&gt;GATEWAY&lt;/role&gt;
            &lt;service name="org.apache.acme.hub.gateway.GatewayContext" version="1.0"/&gt;
        &lt;/dependency&gt;
  
        &lt;!--
        This dependency declaration simply states that in order to function,
        this block requires a &lt;service/&gt; (in this case a wrapper to a CORBA
        ORB version 2.4) and that the block implementation will lookup this
        service using the "ORB" keyword.
        --&gt;
        &lt;dependency&gt;
            &lt;role&gt;ORB&lt;/role&gt;
            &lt;service name="org.apache.acme.hub.gateway.ORBService" version="2.4"/&gt;
        &lt;/dependency&gt;
  
        &lt;!--
        This dependency declares a requirement for a PSS (Persistent State
        Service) Storage Home.
        --&gt;
        &lt;dependency&gt;
            &lt;role&gt;PSS&lt;/role&gt;
            &lt;service name="org.apache.acme.hub.gateway.ProcessorStorageHomeService" version="1.0"/&gt;
        &lt;/dependency&gt;
  
        &lt;!--
        This dependency enables the block to establish a call-back to the
        block supplying the service. This block uses the Registry interface
        to publish a business process description to a higher level manager.
        --&gt;
        &lt;dependency&gt;
            &lt;role&gt;REGISTRY&lt;/role&gt;
            &lt;service name="org.apache.acme.hub.gateway.Registry" version="1.0"/&gt;
        &lt;/dependency&gt;
  
        &lt;!-- etc. --&gt;
        &lt;dependency&gt;
            &lt;role&gt;DOMAIN&lt;/role&gt;
            &lt;service name="org.apache.acme.hub.gateway.DomainService" version="1.0"/&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;role&gt;RANDOM&lt;/role&gt;
            &lt;service name="org.apache.acme.hub.gateway.RandomService" version="1.0"/&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;role&gt;CLOCK&lt;/role&gt;
            &lt;service name="org.apache.acme.service.time.TimeService" version="1.0"/&gt;
        &lt;/dependency&gt;
  
    &lt;/dependencies&gt;
  
  &lt;/blockinfo&gt;
  
        
        </pre>
  </td>
  </tr>
  </table>
  </div>
        
  <p align="justify">Next is the block declaration (an extract from an <code>assembly.xml</code>
        file). This enables the declaration of WHERE the services are coming from. 
        I.e. you may have a system with many blocks and even the potential for matching
        services available from more that one block. The class attribute provides the 
        link to the <code>.xinfo</code> file and the implementation class. The name 
        is used a key within the <code>assembly.xml</code> file when wiring things together. 
        E.g. the provide element references a block by its name - and declares that the 
        named block will serve as the provider of the service. The role attribute matches 
        the role element in the <code>.xinfo</code> dependency declaration.</p>      
        The name attribute also serves a the key to lookup a configuration element in 
        the application configuration.xml file.
        <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
  &lt;?xml version="1.0"?&gt;
  
  &lt;assembly&gt;
  
    &lt;!-- other assembly information here --&gt;
  
    &lt;!-- Certification Request Processor Factory --&gt;
    &lt;block class="org.apache.acme.pki.process.CertificationRequestServer" name="certification" &gt;
      &lt;provide name="gateway" role="GATEWAY"/&gt;
      &lt;provide name="gateway" role="ORB"/&gt;
      &lt;provide name="gateway" role="PSS"/&gt;
      &lt;provide name="gateway" role="DOMAIN"/&gt;
      &lt;provide name="gateway" role="RANDOM"/&gt;
      &lt;provide name="pki" role="REGISTRY"/&gt;
      &lt;provide name="time" role="CLOCK"/&gt;
    &lt;/block&gt;
  
    &lt;!-- more assembly information here --&gt;
  
  &lt;/assembly&gt;
        
        </pre>
  </td>
  </tr>
  </table>
  </div>
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b></b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  
      
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>Why this seperation?</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
  </font></td>
  </tr>
  </table>
  </div>
  <br>
      
  <ul>
        
  <li>It forces structure and separation</li>
        
  <li>It provides a way of managing possibly multiple versions of the 
            same interface in a single environment</li>
        
  <li>It enables explicit declaration of the source of service provision</li>
      
  </ul>
    
      
  <p align="justify">For example you can have multiple blocks providing a TimeService. 
      One of those blocks uses an external time reference while the others 
      use a local time reference. The local time block
      declare dependencies on the external source time block and is periodically
      synchronised. In this example all of the TimeService services are exposing
      the same interface, same version (i.e. same service), but the decision as to
      which service is the provider to another can  be explicitly controlled.
      While the time example is perhaps trivial, there are significant policy
      security implications related to service provider selection.</p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/guide-roles.html
  
  Index: guide-roles.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Reference - Development Roles</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Reference - Development Roles</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Reference - Development Roles</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:leosimons@apache.org">Leo Simons</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          In phoenix-based development, we identify several roles. Each of these has its own
  	guide. If you plan to aid in the development of phoenix itself, or if you are
  	responsible for all these aspects, you should read all the guides. Otherwise, you
  	should be able to learn everything you need to know from the guide that fits your
  	role.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>The Administrator</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">The administrator is responsible for getting phoenix to run and for keeping it
        running. He typically controls the startup and shutdown of the standalone server
        or daemon, and uses a management console to keep the server in top condition.</p>
  
        
  <p align="justify">
  <a href="guide-administrator.html">Administrator's Guide</a>
  </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>The Deployer</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">The deployer manages (un/re)deployment of the applications hosted withing phoenix,
        typically through a management console. In real life, this is often the same person
         as the adminstrator.</p>
  
        
  <p align="justify">
  <a href="guide-deployer.html">Deployer's Guide</a>
  </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>The Assembler</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">The assembler takes pre-written blocks and glues these together to create a
         server application. Assemblers usually work closely with block developers.</p>
  
        
  <p align="justify">
  <a href="guide-assemblers.html">Assembler Guide</a>
  </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>The Block Developer</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">The block developer creates reusable components (called blocks) that can be
         wired together to form a server applications.</p>
  
        
  <p align="justify">
  <a href="guide-block-developers.html">Block Developers Guide</a>
  </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/reference-assembly-xml-specification.html
  
  Index: reference-assembly-xml-specification.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Reference - Specification of assembly.xml </title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Reference - Specification of assembly.xml </title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Reference - Specification of assembly.xml </font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:peter@apache.org">Peter Donald</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          The purpose of the <code>assembly.xml</code> file is to define how the Server
          Application is assembled from it's component Blocks. This requires naming each
          block, specifying the implementation class for each block and wiring together
          blocks. The wiring is done via provides elements. Each provide element maps a
          block instance to a role of a dependency specified in the BlockInfo file. See 
          below for a sample assembly.xml file.
        </p>
        
  <p align="justify">
          The <code>assembly.xml</code> can also specify <code>BlockListener</code>
          objects that will be created for application. The listeners need a name and
          a classname.
        </p>
        
  <p align="justify">
          In previous versions of Phoenix, configuration data was also stored in the 
          assembly file. This is no longer the case (It is now stored in config.xml).
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Sample assembly.xml file</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
  &lt;?xml version="1.0"?&gt;
  
  &lt;assembly&gt;
  
      &lt;block-listener name="myListener" 
             class="com.biz.cornerstone.listeners.MyListener"&gt;
      &lt;/block-listener&gt;
  
      &lt;block name="myAuthorizer" 
             class="com.biz.cornerstone.blocks.MyAuthorizer"&gt;
      &lt;/block&gt;
  
      &lt;block name="myBlock" 
             class="com.biz.cornerstone.blocks.MyBlock"&gt;
        &lt;provide name="myAuthorizer" 
                 role="com.biz.cornerstone.services.Authorizer"/&gt;
      &lt;/block&gt;
  
  &lt;/assembly&gt;
  
        </pre>
  </td>
  </tr>
  </table>
  </div>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/reference-blockinfo-specification.html
  
  Index: reference-blockinfo-specification.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Reference - The BlockInfo Specification</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Reference - The BlockInfo Specification</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Reference - The BlockInfo Specification</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:peter@apache.org">Peter Donald</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Block Metadata</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          The meta-data about each block is stored in a BlockInfo file. The info
          includes details on what version the block is, what <code>Service</code>s
          it depends upon and which <code>Service</code>s it can offer to other Blocks.
          In the future the info will also store such data as the schema for configuring
          the block.
        </p>
  
        
  <p align="justify">
          The BlockInfo file has the same name as the Block except with the extention 
          <code>.xinfo</code>. Thus if you were looking up the meta info for a block named 
          <code>com.biz.cornerstone.blocks.MyBlock</code> you would look up the resource
          <code>com/biz/cornerstone/blocks/MyBlock.xinfo</code> in the same block jar file that
          the block was packaged in. The BlockInfo file is a simple XML format. An
          example of such a file follows.
        </p>
  
        
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
  
  &lt;?xml version="1.0"?&gt;
  
  &lt;blockinfo&gt;
  
    &lt;block&gt;
      &lt;version&gt;1.2.3&lt;/version&gt;
    &lt;/block&gt;
  
    &lt;services&gt;
      &lt;service name="com.biz.cornerstone.services.MyService" 
               version="2.1.3" /&gt;
    &lt;/services&gt;
  
    &lt;dependencies&gt;
      &lt;dependency&gt;
        &lt;role&gt;com.biz.cornerstone.services.Authorizer&lt;/role&gt;
        &lt;service name="com.biz.cornerstone.service.Authorizer" 
                 version="1.0"/&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
        &lt;!-- note that role is not specified and defaults
             to name of service --&gt;
        &lt;service name="com.biz.cornerstone.service.RoleMapper" 
                 version="1.0"/&gt;
      &lt;/dependency&gt;
    &lt;/dependencies&gt;
  
  &lt;/blockinfo&gt;
  
  
        </pre>
  </td>
  </tr>
  </table>
  </div>
        
  <p align="justify">
          You will notice that the information in the BlockInfo file is separated into 
          three main sections; <code>block</code>, <code>services</code> and
          <code>dependencies</code>. 
        </p>
        
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>BlockInfo 'block' Section</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br> 
          
  <p align="justify">The block section specifies the version of class. In the future this 
          section will also specify the configuration schema if the block is 
          <code>Configurable</code>.</p>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
        
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>BlockInfo 'services' Section</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
          
  <p align="justify">The services section documents the services that this block can offer other
          Blocks. The service instances indicate an interface and a version. The interface
          MUST extend <code>org.apache.phoenix.Service</code>. This section is optional
          and a Block can choose to not offer any services.</p>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
        
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="99%">
  <tr>
  <td bgcolor="ddeeff"><font face="arial,helvetica,sanserif" color="#000000" size="+0"><b>BlockInfo 'dependencies' Section</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
          
  <p align="justify">The services section documents the services that this block requires to operate.
          Required services are placed in the Blocks ComponentManager under the name
          specified by the <code>role</code> element of dependency. As is documented in the 
          <a href="http://jakarta.apache.org/avalon/framework/guide-cop-in-avalon.html">components</a> section, the
          concept of Role is more than just a behavioural contract. A <code>Service</code> is
          a behavioural contract and thus the necessity to support the role element. In most
          cases however the role element and the name attribute of the service will be
          identical. In these cases it is sufficient to just specify service element and role
          will default to name of service.</p>
        
  </font></td>
  </tr>
  </table>
  </div>
  <br>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/reference-config-xml-specification.html
  
  Index: reference-config-xml-specification.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Reference - Specification of config.xml </title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Reference - Specification of config.xml </title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Reference - Specification of config.xml </font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:peter@apache.org">Peter Donald</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          The purpose of the <code>config.xml</code> file is to provide configuration data
          to each of the blocks that require configuration data. The format of the 
          configuration data is block-specific, thus refer to documentation of Block
          for relevant details. Each element below the root element has a name coresponding
          to the name of a block specified in assembly.xml file. The contents of this
          element is the configuration data for the block.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Sample config.xml file</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
  &lt;?xml version="1.0"?&gt;
  
  &lt;config&gt;
  
      &lt;myAuthorizer&gt;
        &amp;lt;!-- ...configuration data here... --&amp;gt;
      &lt;/myAuthorizer&gt;
  
      &lt;myBlock&gt;
        &lt;param1&gt;param1-value&lt;/param1&gt;
        &lt;an-integer&gt;2&lt;/an-integer&gt;
        ...
      &lt;/myBlock&gt;
  
  &lt;/config&gt;
  
        </pre>
  </td>
  </tr>
  </table>
  </div>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  
  1.1                  jakarta-avalon-site/docs/phoenix/reference-environment-xml-specification.html
  
  Index: reference-environment-xml-specification.html
  ===================================================================
  <html>
  <head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Avalon Phoenix - Reference - Specification of environment.xml</title>
  </head>
  <body bgcolor="#ffffff" marginheight="4" marginwidth="4" leftmargin="4" topmargin="4" alink="#023264" vlink="#023264" link="#525D76" text="#000000">
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td align="left" valign="top"><a href="http://jakarta.apache.org/index.html"><img src="images/jakarta-logo.gif" border="0" vspace="0" hspace="0"></a></td><td bgcolor="#ffffff" align="left" valign="top" width="100%"><img src="images/header.gif" align="right" border="0" vspace="0" hspace="0"></td>
  </tr>
  <tr>
  <td colspan="2" height="2" width="100%">
  <hr size="1" noshade="">
  </td>
  </tr>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
  <td valign="top" width="1%"></td><td nowrap="1" valign="top" width="14%">
  <br>
  <font face="arial,helvetica,sanserif">
  <br>
  <br>
  <a href="http://jakarta.apache.org/"><font size="+1" color="#778899">Jakarta main</font></a>
  <br>
  <br>
  <a href="http://jakarta.apache.org/avalon"><font size="+1" color="#778899">Avalon main</font></a>
  <br>
  <br>
  <font size="+1" color="#000000">Essentials</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="index.html"><font size="-1">Overview</font></a>
  </li>
  <li>
  <a href="features.html"><font size="-1">Features</font></a>
  </li>
  <li>
  <a href="getting-started.html"><font size="-1">Getting started</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/builds/jakarta-avalon/release/phoenix"><font size="-1">Download</font></a>
  </li>
  <li>
  <a href="install.html"><font size="-1">Install</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Guide</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="guide-architecture.html"><font size="-1">Architectural Overview</font></a>
  </li>
  <li>
  <a href="guide-roles.html"><font size="-1">Development Roles</font></a>
  </li>
  <li>
  <a href="guide-administrator.html"><font size="-1">for Administrators</font></a>
  </li>
  <li>
  <a href="guide-deployers.html"><font size="-1">for Deployers</font></a>
  </li>
  <li>
  <a href="guide-assemblers.html"><font size="-1">for Assemblers</font></a>
  </li>
  <li>
  <a href="guide-block-developers.html"><font size="-1">for Block Developers</font></a>
  </li>
  <li>
  <a href="guide-example-configuration.html"><font size="-1">Example configuration</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">Reference</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="api/index.html.xml"><font size="-1">API Docs</font></a>
  </li>
  <li>
  <a href="reference-config-xml-specification.html"><font size="-1">config.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-assembly-xml-specification.html"><font size="-1">assembly.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-environment-xml-specification.html"><font size="-1">environment.xml Specification</font></a>
  </li>
  <li>
  <a href="reference-blockinfo-specification.html"><font size="-1">BlockInfo Specification</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  <font size="+1" color="#000000">For Developers</font>
  <br>
  <font size="-1">
  <ul>
  <li>
  <a href="for-developers-changes.html"><font size="-1">Changes</font></a>
  </li>
  <li>
  <a href="for-developers-todo.html"><font size="-1">Todo</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/avalon/code-standards.html"><font size="-1">Coding standards</font></a>
  </li>
  <li>
  <a href="for-developers-project-structure.html"><font size="-1">Project Structure</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/cvsindex.html"><font size="-1">CVS</font></a>
  </li>
  <li>
  <a href="http://jakarta.apache.org/site/mail.html"><font size="-1">Mailing Lists</font></a>
  </li>
  <li>
  <a href="for-developers-a-future.html"><font size="-1">A Future</font></a>
  </li>
  </ul>
  </font>
  <br>
  <br>
  </font></td><td align="left" valign="top" width="*">
  <title>Avalon Phoenix - Reference - Specification of environment.xml</title>
  <center>
  <table width="100%">
  <tr>
  <td bgcolor="#99aabb">
  <center>
  <b><font face="arial,helvetica,sanserif" color="#000000" size="+2">Avalon Phoenix - Reference - Specification of environment.xml</font></b>
  </center>
  </td>
  </tr>
  </table>
  </center>
  <br>
  <font size="-2" face="arial,helvetica,sanserif" color="#000000">
  <p>by <a href="mailto:peter@apache.org">Peter Donald</a>
  </p>
  </font><font face="arial,helvetica,sanserif" color="#000000"></font>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Introduction</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <p align="justify">
          The purpose of the <code>environment.xml</code> file is to configure environmental
          or Server Application wide settings. Currently this means being able to set the
          security policy and configure logging settings. A sample <code>environment.xml</code>
          follows. Previously thread pool settings were also configured in this
          section but this has been deprecated. Note that previously the information stored in
          <code>environment.xml</code> was stored in a file named <code>server.xml</code>.
        </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  <div align="right">
  <table cellspacing="0" cellpadding="2" border="0" width="100%">
  <tr>
  <td bgcolor="bbccdd"><font face="arial,helvetica,sanserif" color="#000000" size="+1"><b>Sample environment.xml file</b></font></td>
  </tr>
  <tr>
  <td><font face="arial,helvetica,sanserif" color="#000000">
  <br>
        
  <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
  &lt;?xml version="1.0"?&gt;
  
  &lt;environment&gt;
  
      &lt;logs&gt;
        &lt;category name="" target="default" priority="DEBUG" /&gt;
        &lt;category name="myAuthorizer" target="myAuthorizer-target"
                  priority="DEBUG" /&gt;
  
        &lt;log-target name="default"
                    location="/logs/default.log" /&gt;
        &lt;log-target name="myAuthorizer-target"
                    location="/logs/authorizer.log" /&gt;
      &lt;/logs&gt;
  
      &lt;policy&gt;
        &lt;keystore name="foo-keystore"
                  location="sar:/conf/keystore"
                  type="JKS" /&gt;
  
        &lt;grant code-base="file:${app.home}${/}some-dir${/}*"
                key-store="foo-keystore" &gt;
          &lt;permission class="java.io.FilePermission"
                      target="${/}tmp${/}*"
                      action="read,write" /&gt;
        &lt;/grant&gt;
  
        &lt;grant signed-by="Bob"
               code-base="file:${app.home}${/}SAR-INF${/}lib${/}*"
               key-store="foo-keystore" &gt;
          &lt;permission class="java.io.FilePermission"
                      target="${/}tmp${/}*"
                      action="read,write" /&gt;
        &lt;/grant&gt;
      &lt;/policy&gt;
  
  &lt;/environment&gt;
  
        </pre>
  </td>
  </tr>
  </table>
  </div>
        
  <p align="justify">
          The format of the policy section should be largely self evident if the assembler
          has experience with standard policy files. It should be noted that if no
          policy section is given then the Server Application runs at full permissions.
          The evaluation of properties occurs in a similar manner to standard
          policy file property expansion. There are a number of extra properties that
          will be evaluated. These include; <code>app.home</code> and <code>app.name</code>.
        </p>
        
  <p align="justify">
          One special thing to not is that the user can use URLs of the form,
          "sar:/SAR-INF/lib/*". This will apply the permissions to the jars
          contained in the .SAR file. Note that these urls must start with
          "sar:/" and must use the "/" character as file separator, regardless
          of current operating system.
        </p>
        
  <p align="justify">
          The logs section can currently have two types of elements; <em>log-target</em>s
          which represent destinations for logging and <em>category</em>s. There must be a
          log-target with the name "default". Categories are hierarchial in nature, have a
          priority and are associated with one or more log-targets. See the logging
          documentation for a further description of this section.
        </p>
        
  <p align="justify">
          There is another type of log configuration. It is more configurable.
          Specify version attribute with logs elements. See javadoc of
          org.apache.avalon.excalibur.logger package for detailed description.
          Below is example configuration.
          <div align="center">
  <table cellspacing="2" cellpadding="2" border="1">
  <tr>
  <td>
  <pre>
  &lt;logger version="1.1"&gt;
  &lt;factories&gt;
    &lt;factory type="file"
             class="org.apache.avalon.excalibur.logger.factory.FileTargetFactory"/&gt;
  &lt;/factories&gt;
  
  &lt;categories&gt;
    &lt;category name="" log-level="INFO"&gt;
      &lt;log-target id-ref="default"/&gt;
    &lt;/category&gt;
  &lt;/categories&gt;
  
  &lt;targets&gt;
    &lt;file id="default"&gt;
      &lt;filename&gt;${app.home}/logs/default-&lt;/filename&gt;
      &lt;append&gt;true&lt;/append&gt;
      &lt;rotation type="unique" pattern="yyyyMMdd" suffix=".log"&gt;
        &lt;date&gt;yyyyMMdd&lt;/date&gt;
      &lt;/rotation&gt;
    &lt;/file&gt;
  &lt;/targets&gt;
  &lt;/logger&gt;
  </pre>
  </td>
  </tr>
  </table>
  </div>
        
  </p>
      
  </font></td>
  </tr>
  </table>
  </div>
  <br>
  </td>
  </tr>
  </table>
  <br>
  <table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
  <td>
  <hr size="1" noshade="">
  </td>
  </tr>
  <tr>
  <td align="center"><font color="#525D76" size="-1" face="arial,helvetica,sanserif"><i>
                Copyright &copy;1999-2002 by the Apache Software Foundation.
                All Rights Reserved.
              </i></font></td>
  </tr>
  </table>
  </body>
  </html>
  
  
  

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>