charlesb    01/05/15 09:48:11

  Modified:    .        build.xml
  Added:       src/xdocs code-standards.xml commandsIMAP.xml index.xml
                        install.xml license.xml todo.xml
               src/xdocs/images james-logo.jpg
               src/xdocs/stylesheets project.xml
  Removed:     xdocs    code-standards.xml commandsIMAP.xml index.xml
                        install.xml license.xml todo.xml
               xdocs/images james-logo.jpg
               xdocs/stylesheets project.xml
  Log:
  Moved xdocs to src/xdocs
  
  Revision  Changes    Path
  1.61      +3 -3      jakarta-james/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-james/build.xml,v
  retrieving revision 1.60
  retrieving revision 1.61
  diff -u -r1.60 -r1.61
  --- build.xml 2001/05/15 16:30:59     1.60
  +++ build.xml 2001/05/15 16:47:11     1.61
  @@ -92,7 +92,7 @@
     <property name="conf.dir" value="conf"/>
     <property name="lib.dir" value="lib"/>
     <property name="tools.dir" value="tools"/>
  -  <property name="xdocs.dir" value="xdocs"/>
  +  <property name="xdocs.dir" value="${src.dir}/xdocs"/>
   
     <property name="dist.name" value="${name}-${version}"/>
   
  @@ -103,7 +103,7 @@
     <property name="site.dir" value="../xml-site/sources/james"/>
     <property name="site.docs" value="../xml-site/targets/james"/>
   
  -  <property name="docs.src" value="./xdocs"/>
  +  <property name="docs.src" value="${xdocs.dir}"/>
     <property name="docs.dest" value="./docs"/>
   
     <!--
  @@ -450,7 +450,7 @@
     <!-- =================================================================== -->
     <!-- Generates the documentation for James                               -->
     <!-- =================================================================== -->
  -  <target name="docs" depends="prepare-error" if="AnakiaTask.present">
  +  <target name="xdocs" depends="prepare-error" if="AnakiaTask.present">
       <taskdef name="anakia" classname="org.apache.velocity.anakia.AnakiaTask"/>
       <anakia basedir="${docs.src}" destdir="${docs.dest}/"
            extension=".html" style="./site.vsl"
  
  
  
  1.1                  jakarta-james/src/xdocs/code-standards.xml
  
  Index: code-standards.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
   <properties>
    <title>Coding Standards</title>
    <author email="[EMAIL PROTECTED]">Serge Knystautas</author>
   </properties>
  
  <body>
  
  <section name="Coding Standards">
  
  <p>
      Submissions to the James project must follow the coding conventions
      outlined in this document. James developers
      are asked to follow coding conventions already present in the code.
      (For example, if the existing code has the bracket on
      the same line as the if statement, then all subsequent code
      should also follow that convention.) Anything not
      explicitly mentioned in this document should adhere to the
      official
      <a href="http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html";>Sun
      Java Coding Conventions</a>.
  </p>
  
  <p>
      <strong>Developers who commit code that does not follow
      the coding conventions outlined in this document will be
      responsible for fixing their own code.</strong>
  </p>
  
  <p>
  1. Spaces between parentheses are optional. The preference is to exclude
  extra spaces. Both of these conventions are acceptable:
  </p>
  
  <p>
  <source><![CDATA[
  
  if (foo)
  
  or
  
  if ( foo )
  ]]></source>
  </p>
  
  <p>
  2. Four spaces. <strong>NO</strong> tabs. Period. The James
  mailing list receives cvs commit messages that are almost impossible
  to read if tabs are used.
  </p>
  
  <p>
  In Emacs-speak, this translates to the following command:
  
  (setq-default tab-width 4 indent-tabs-mode nil)
  </p>
  
  <p>
  3. Use Unix linefeeds for all .java source code files. Only platform-specific
  files (e.g. .bat files for Windows) should contain non-Unix linefeeds.
  </p>
  
  <p>
  4. Javadoc <strong>MUST</strong> exist on all methods. Contributing
  a missing javadoc for any method, class, variable, etc., will be greatly
  appreciated as this will help to improve the James project.
  </p>
  
  <p>
  5. The Jakarta Apache/James License <strong>MUST</strong> be placed
  at the top of every file.
  </p>
  
  </section>
  
  </body>
  </document>
  
  
  
  1.1                  jakarta-james/src/xdocs/commandsIMAP.xml
  
  Index: commandsIMAP.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
   <properties>
    <title>Java Apache Mail Enterprise Server</title>
    <author email="[EMAIL PROTECTED]">Charles Benett</author>
   </properties>
  
  <body>
  
  <section name="Summary">
  
    <h3>An overview of IMAP command implementation proposed for JAMES</h3>
    <blockquote>
      Objective:  A set of interfaces and basic implementations that provide:
      <ul>
        <li>The core functionality of RFC 2060, IMAP4Rev1.</li>
        <li>Mailbox referrals - RFC 2193</li>
        <li>Login referrals - RFC 2221</li>
        <li>Access Control Lists - RFC 2086</li>
        <li>Quotas - RFC 2087</li>
      </ul>
    </blockquote>
  
  </section>
  
  <section name="Background - IMAP commands">
  
  <p>The IMAP protocol is based on single socket connections. Each connection may be 
in one of four official states: Non-Authenticated, Authenticated, Selected and Logout. 
 In addition, there is an on-connection 'state'. Connections may be pre-authenticated, 
in which case they transition directly to the Authenticated state. Connections may 
also be rejected arbitrarily, in which case a response is sent and the connection 
tranistions directly to Logout. Once a connection enters the Logout state it must 
terminate and will terminate without further client input.
  </p>
  
  <p>A connection can only 'select' one mailbox at a time, although the STATE command 
allows a limited view of another mailbox. A client may open more than one connection 
to a single server at once. The client is responsible for any coordination needed. 
Multiple connections may 'select' a mailbox at the same time. The server must 
coordinate access.
  </p>
  
  </section>
  
  <section name="Commands by State, Effect and Sensitivity">
    <p>Clients are, in general, permitted to issue multiple commands in a single 
connection.  That is they can issue a second command without waiting for a response to 
the first command. Servers may process multiple commands in parallel or in series. 
However, some combinations of commands cannot be processed in parallel, because they 
are ambiguous. According to RFC2060,
      <blockquote> "Clients MUST NOT send multiple commands without waiting if an 
ambiguity would result. If the server detects a possible ambiguity, it MUST execute 
commands to completion in the order given by the client."
      </blockquote>
  The following table aims to highlight which commands can or cannot be processed in 
parallel with other commands. In particular, commands that are sensitive to mailbox 
context or message sequence number cannot be processed in parallel with commands that 
change those respective facts.
    </p>
    <p>
  IMAP servers can support multiple namespaces with mailboxes that, for clients, would 
otherwise have identical names. For example, a user could have a private mailbox 
called James and also have access to a workgroup mailbox called James. These are 
disambiguated by namespace tokens, which a client can discover by the Namespace 
command.
    </p>
    <p>
  Mailboxes can, in general, be accessed on behalf of more than one user. Access 
Control Lists are used to on a per mailbox basis. Any command which explicitly or 
implicitly refers to a mailbox, which is every command apart from Capability, Noop, 
Logout,  can be impacted by a change of ACL. I intend to tie administer rights for an 
ACL to full read-write rights for the mailbox and  not to allow someone with 
administer rights to remove their own administer rights. Implementations not following 
this practice may need to disambiguate ACL sensitive commands.
   </p>
    <p>The state of a mailbox (name, existence, ACL, number of messages, identity of 
messages and message attributes) may be changed outside a given connection which has 
the mailbox selected. Some of these changes should be notified to a client whether or 
noe a command is in progress and some should be notified only if a command is in 
progress.
   </p>
    <p>
  The effects of a command noted here are ones which may affect processing multiple 
commands from one connection or impact multiply accessed mailboxes.
      <ul>
        <li>Connection state change: will or may change the state of the 
connection</li>
        <li>Mailbox change: will or may change the state of an existing mailbox. 
Includes: changing name, altering size of mailbox (by adding or removing message) 
changing the access control list.</li>
        <li>Mailbox context change: changes the selection of a mailbox, which is the 
context for Selected state commands.</li>
        <li>Message Sequence Number Change: will or may change the message sequence 
number of a message known to this client, for example by provoking an untagged Expunge 
response. Note that any command in the selected state may send an untagged Expunge, 
except for Fetch, Store and Search. The entry 'likely' in this column indicates a 
proposed implementation.</li>
      </ul>
  The sensitivities noted are ones which may affect processing multiple commands from 
one connection or impact multiply accessed mailboxes.
      <ul>
         <li>Current Mailbox: this command implicity refers to the currently selected 
mailbox so is sensitive to either a mailbox change or a mailbox context change</li>
        <li>Message sequence number change: this command may take an MSN as an 
argument</li>
      </ul>
  All commands which explicitly or implicitly refers to a mailbox, which is every 
command apart from Capability, Noop, Logout,  can be impacted by a Mailbox change.
    </p>
  
  <table border="1">
    <tr>
      <th colspan="1"></th>
      <th colspan="3">State in which valid</th>
      <th colspan="4">Effects</th>
      <th colspan="2">Sensitivity</th>
    </tr>
    <tr>
      <th colspan="1">Command</th>
      <th>Non-Authenticated</th>
      <th>Authenticated</th>
      <th>Selected</th>
      <th>Connection State change</th>
      <th>Mailbox change</th>
      <th>Mailbox context change</th>
      <th>Message Sequence Number Change</th>
      <th>Mailbox context</th>
      <th>Message Sequence Number</th>
    </tr>
   <tr>
      <td colspan="10" align="left" ><i>Core IMAP4 rev1 commands (RFC2060)</i></td>
   </tr>
    <tr>
      <td colspan="1">Capability</td>
      <td>Yes</td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>Noop</td>
      <td>Yes</td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td>likely</td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>Logout</td>
      <td>Yes</td>
      <td>Yes</td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>Authenticate</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>Login</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>Select</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>Examine</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>Create</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>Delete</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>Rename</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>Subscribe</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>Unsubscribe</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>List</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>LSUB</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>Status</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>Append</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>Check</td>
      <td></td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td>likely</td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>Close</td>
      <td></td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td>Must not</td>
      <td>Yes</td>
      <td></td>
    </tr>
   <tr>
      <td>Expunge</td>
      <td></td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td>Must</td>
      <td>Yes</td>
      <td></td>
    </tr>
   <tr>
      <td>Search</td>
      <td></td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td>Must not</td>
      <td>Yes</td>
      <td>Yes</td>
    </tr>
    <tr>
      <td>Fetch</td>
      <td></td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td>Must not</td>
      <td>Yes</td>
      <td>Yes</td>
    </tr>
    <tr>
      <td>Store</td>
      <td></td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td>Must not</td>
      <td>Yes</td>
      <td>Yes</td>
    </tr>
    <tr>
      <td>Copy</td>
      <td></td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td>likely</td>
      <td>Yes</td>
      <td>Yes</td>
    </tr>
    <tr>
      <td>UID</td>
      <td></td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td>likely</td>
      <td>Yes</td>
      <td></td>
    </tr>
    <tr>
      <td colspan="10" align="left" ><i>Access Control List commands (RFC2086)</i></td>
    </tr>
    <tr>
      <td colspan="1">SetACL</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>DeleteACL</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>GetACL</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>ListRights</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>MyRights</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td colspan="10" align="left" ><i>Namespace commands (RFC2342)</i></td>
    </tr>
    <tr>
      <td colspan="1">Namespace</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td colspan="10" align="left" ><i>Mailbox Referral commands (RFC2193)</i></td>
    </tr>
    <tr>
      <td colspan="1">RList</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>RLSUB</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td colspan="10" align="left" ><i>Quota commands (RFC2087)</i></td>
    </tr>
    <tr>
      <td colspan="1">SetQuota</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>GetQuota</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
    <tr>
      <td>GetQuotaRoot</td>
      <td></td>
      <td>Yes</td>
      <td>Yes</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>
  
  </table>
  
  </section>
  
  
  </body>
  </document>
  
  
  
  1.1                  jakarta-james/src/xdocs/index.xml
  
  Index: index.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
   <properties>
    <title>Java Apache Mail Enterprise Server</title>
    <author email="[EMAIL PROTECTED]">Serge Knystautas</author>
   </properties>
  
  <body>
  
  <section name="What is it?">
  
    <p>
    The Java Apache Mail Enterprise Server (a.k.a. Apache James) is a 100% pure
    Java server, designed to be a complete and portable enterprise mail engine solution
    based on currently available open protocols (SMTP, POP3, IMAP, HTTP).  It requires
    Java 2 (minimum requirement is the JRE 1.2).
    </p>
  </section>
  
  <section name="Design Objectives">
  
    <p>These are some of the currently implemented features:</p>
    <p><i><b>Complete portability</b></i>  Apache James is be a 100% pure Java 
application
         based on the Java 2 platform and the JavaMail 1.2 API.
    </p>
    <p><i><b>Protocol abstraction</b></i>  Unlike other mail engines, protocols are 
seen only
         like "communication languages" ruling comunications between clients and
         the server. Apache James is not be tied to any particular protocol but
         follow an abstracted server design (like JavaMail did on the
         client side)</p>
      <p><i><b>Complete solution</b></i>  the mail system is able to handle both mail
         transport and storage in a single server application. Apache James
         works alone without the need for any other server or solution.</p>
      <p><i><b>Mailet support</b></i>  Apache James supports the Apache Mailet API. A 
Mailet
         is a discrete piece of mail-processing logic which is incorporated into
         a Mailet-compliant mail-server's processing. This easy-to-write,
         easy-to-use pattern allows developers to build powerful customized mail
         systems. Examples of the services a Mailet might provide include: a
         mail-to-fax or mail-to-phone transformer, a filter, a language translator, a 
mailling
         list manager, etc. Several Mailets are included in the JAMES
         distribution (see <a href="configuration.html">Configuration</a>).</p>
      <p><i><b>Resource abstraction</b></i>  Like protocols, resources are abstracted 
and,
         accessed through defined interfaces (JavaMail for transport, JDBC for
         spool storage or user accounts in RDBMS's, Apache Mailet API). The server is
         highly modular and reuse solutions from other projects.</p>
      <p><i><b>Secure and multi-threaded design</b></i>  Based on the technology 
developed
         for the Apache JServ servlet engine, Apache James has a careful,
         security-oriented, full multi-threaded design, to allow performance,
         scalability and mission-critical use.</p>
      <p>Anything else you may want if you help us write it :-)</p>
  </section>
  <section name="Feature Status">
      <table>
        <tr>
          <th>Item</th>
          <th>Status (v1.2.1)</th>
          <th>Since</th>
          <th>First released</th>
        </tr>
        <tr>
          <td>SMTP server</td>
          <td>Stable</td>
          <td>1.0</td>
          <td>0.95</td>
        </tr>
        <tr>
          <td>Mailet Engine</td>
          <td>Stable</td>
          <td>1.2</td>
          <td>0.95</td>
        </tr>
        <tr>
          <td>FileSystem mailboxes/spool</td>
          <td>Stable</td>
          <td>1.2</td>
          <td>1.0</td>
        </tr>
        <tr>
          <td>RDBMS mailboxes/spool</td>
          <td>Stable</td>
          <td>1.2</td>
          <td>1.2</td>
        </tr>
        <tr>
          <td>POP3 server</td>
          <td>Stable</td>
          <td>1.1</td>
          <td>1.0</td>
        </tr>
        <tr>
          <td>RDBMS - Users</td>
          <td>Stable</td>
          <td>1.2.1</td>
          <td>1.2.1</td>
        </tr>
        <tr>
          <td>LDAP Support - Users</td>
          <td>Experimental</td>
          <td>1.2</td>
          <td>1.2</td>
        </tr>
        <tr>
          <td>TLS Support - POP3</td>
          <td>Experimental</td>
          <td>1.2</td>
          <td>1.2</td>
        </tr>
        <tr>
          <td>Remote Manager</td>
          <td>Stable</td>
          <td>1.0</td>
          <td>1.0</td>
        </tr>
        <tr>
          <td>TLS Support - Remote Manager</td>
          <td>Stable</td>
          <td>1.2</td>
          <td>1.2</td>
        </tr>
        <tr>
          <td>NNTP server</td>
          <td>Experimental</td>
          <td>1.2</td>
          <td>1.2</td>
        </tr>
      </table>
  
  </section>
  
  </body>
  </document>
  
  
  
  1.1                  jakarta-james/src/xdocs/install.xml
  
  Index: install.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
   <properties>
    <title>Installation</title>
    <author email="[EMAIL PROTECTED]">Serge Knystautas</author>
   </properties>
  
  <body>
  
  <section name="Step 0: Building. (only necessary for daily snapshots)">
  
    <p>
      If you have downloaded a regular distribution, you do not need to
      build James.  Proceed directory to Step 1.
    </p>
  
    <p>
      To compile James from sources you will need <a 
href="http://jakarta.apache.org/ant/";>Ant</a>.
      This is a Java-tailored, XML-configured, extensible build or make system.
      We are currently using Ant 1.1, although documentation generation requires Ant 
1.2.
    </p>
  
    <p>
      If you have downloaded a daily snapshot, you need to build a
      distribution.  James uses Ant (<a 
href="http://jakarta.apache.org/ant/";>http://jakarta.apache.org/ant/</a>) to
      compile and package its distribution.  Once you have installed Ant,
      extracted the snapshot to your favorite folder, cd to that folder
      and run the "dist" task by calling "ant dist".  This will create the
      distribution in the "./dist" folder as well as create .tgz and .zip
      copies of this folder.  This "./dist" folder is the distribution
      folder used in Step 1 and beyond.  You may either cd to ./dist, or
      you may copy and rename the dist folder to your new favorite folder.
    </p>
  </section>
  
  <section name="Step 1: Installation.">
    <p>
      Download distibution. Extract all files in your favorite folder.
    </p>
  </section>
  
  <section name="Step 2: Configuration.">
    <p>
      Read the short and snappy documentation at docs/index.html for a proper
      overview of configuring the system.
    </p>
    <p>
      <b>Summary</b> (for impatient people)
    </p>
    <p>
      M$ users should just run /bin/run.bat. Unix users will find run.sh
      under the same folder. A JVM must be in the path.
      Running [run* -help] will provide a simple command line help.
    </p>
    <p>
      Most UNIX systems require superuser privileges to open sockets below 1024,
      which includes the IANA-standard SMTP (on port 25) and POP3 (on port 110).
      These default ports can be changed in the conf.xml file. (Obviously, you
      would then need to reconfigure your clients. This may not be an option if
      you want to receive mail from external mailservers.)
    </p>
    <p>
      The Avalon framework will unpack the neccessay configuration files and wait
      for you to configure them. For basic use, you only need to set two items
      in the JAMES.conf.xml file: a root password for the remote administration
      facility and the IP address of a DNS server. Once you have edited the
      configuration files, press 'Enter' on the terminal where Avalon is waiting.
    </p>
  </section>
  
  <section name="Step 4: Kickstart.">
    <p>
      Once started you'll see a message saying Avalon is running. This means that
      Avalon has loaded JAMES and every other needed Block (see /logs/avalon.log)
      and is now waiting for a socket request.
      Since at the beginning James is empty, it will not have any local users
      registered.
      To register a local user open a telnet session with localhost on port 4555,
      log in as root ("root[enter]  &lt;password-you-set-in-conf.xml&gt;[enter]") and
      type "help" for a list of available commands in the "JAMES remote
      administrator tool". It is really a basic set but should allow you to test
      installation.
    </p>
    <p>
      Once you have some local users registered, try sending mail to one of them
      @localhost with SMTP (port 25) (assuming you have not changed the default
      server names in the conf.xml file). You'll see the mail appear under
      ../var/mail/localinbox/[user].
      Try now to retrieve that mail using POP3 (port 110).
      Trace out JAMES actions in /logs/*info.log.
      Action that will be taken by JAMES on incoming mail are configurated in
      the mailet pipe line (/conf/james.conf.xml). Look at it if you want to
      understand what's happening.
    </p>
    <p>
    Good luck :)
    </p>
  </section>
  
  </body>
  </document>
  
  
  
  1.1                  jakarta-james/src/xdocs/license.xml
  
  Index: license.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
   <properties>
    <title>Apache Software License</title>
    <author email="[EMAIL PROTECTED]">Serge Knystautas</author>
   </properties>
  
  <body>
  <section name="Apache Software License">
  <p>
      James is released under the Apache Software License
      listed below:
  </p>
  
  <source><![CDATA[
  
   The Apache Software License, Version 1.1
  
   Copyright (c) 2001 The Apache Software Foundation.  All rights
   reserved.
  
   Redistribution and use in source and binary forms, with or without
   modification, are permitted provided that the following conditions
   are met:
  
   1. Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.
  
   2. Redistributions in binary form must reproduce the above copyright
      notice, this list of conditions and the following disclaimer in
      the documentation and/or other materials provided with the
      distribution.
  
   3. The end-user documentation included with the redistribution, if
      any, must include the following acknowlegement:
         "This product includes software developed by the
          Apache Software Foundation (http://www.apache.org/)."
      Alternately, this acknowlegement may appear in the software itself,
      if and wherever such third-party acknowlegements normally appear.
  
   4. The names "The Jakarta Project", "James", and "Apache Software
      Foundation" must not be used to endorse or promote products derived
      from this software without prior written permission. For written
      permission, please contact [EMAIL PROTECTED]
  
   5. Products derived from this software may not be called "Apache"
      nor may "Apache" appear in their names without prior written
      permission of the Apache Group.
  
   THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
   WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
   ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
   USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
   ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   SUCH DAMAGE.
   ====================================================================
  
   This software consists of voluntary contributions made by many
   individuals on behalf of the Apache Software Foundation.  For more
   information on the Apache Software Foundation, please see
   <http://www.apache.org/>.
  ]]></source>
  
  </section>
  
  </body>
  </document>
  
  
  
  
  1.1                  jakarta-james/src/xdocs/todo.xml
  
  Index: todo.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
  
   <properties>
    <title>TODO</title>
    <author email="[EMAIL PROTECTED]">Serge Knystautas</author>
    <author email="[EMAIL PROTECTED]">Charles Benett</author>
   </properties>
  
  <body>
  
  <section name="TODO">
  <p>This is a living document that will give new and existing volunteers some areas 
where we need help.  As always, any help is appreciated, be it documentation, code, 
suggestions, or feedback.
  Last Updated 26 April 2001.</p>
  </section>
  <section name="High Priority">
  <p>Port existing documentation to xdocs format</p>
  <p>Bundle docs in dist</p>
  <p>Allow RemoteManager to change passwords of users (change attribute) </p>
  <p>Revive RDBMS support for messages and users. Possibly move from town to straight 
jdbc, or jakarta-turbine.</p>
  <p>Enable multiple domains</p>
  </section>
  
  <section name="Medium Priority">
  <p>Let RemoteDelivery send all messages to a single remote server (acting like a 
gateway or a relay host) </p>
  <p>Improve exception management in RemoteDelivery mailet and general notices of why 
delivery failures occur.</p>
  <p>Add support for regex inside most matchers and thereby consolidate a few of 
them.</p>
  <p>Write more documentation. </p>
  <p>Make James stoppable (elegantly)</p>
  <p>Get IMAP server to alpha standard, ie basic interoperation with e-mail 
clients.</p>
  <p>Add #news namespace to IMAP system</p>
  <p>Revisit UserRepository - after doing IMAP List &amp; Subscribe</p>
  <p>Make James reconfigurable/contextualizable/composable.</p>
  <p>Reinject error/spam mails incorrecty handled.</p>
  <p>Add needed functions to RemoteManager, Including Stop and ReConfigure, Reinject 
mail, Store RemoteManger password securely.</p>
  <p>Add support for better mailet router/processing (maybe like RequestDispatcher) - 
Use Stage/Pipline pattern</p>
  <p>Add support for deployable message processing apps using Camelot pattern</p>
  <p>Give admins option to enforce one access at a time to a POP3 mailbox.</p>
  <p>Simplify email aliasing</p>
  </section>
  
  <section name="Low Priority">
  <p>Tie in the NNTP Repository with POP/SMTP/IMAP repository structure.</p>
  <p>Add support for DRAC login/relay allowing</p>
  <p>Review threadpooling - is it dynamic?</p>
  </section>
  
  </body>
  </document>
  
  
  
  
  1.1                  jakarta-james/src/xdocs/images/james-logo.jpg
  
        <<Binary file>>
  
  
  1.1                  jakarta-james/src/xdocs/stylesheets/project.xml
  
  Index: project.xml
  ===================================================================
  <?xml version="1.0" encoding="ISO-8859-1"?>
  <project name="JAMES"
          href="http://jakarta.apache.org/james/";>
  
      <title>The Jakarta Site</title>
      <logo href="/images/james-logo.jpg">JAMES - Java Apache Mail Enterprise 
Server</logo>
  
      <body>
      <menu name="About">
          <item name="Overview"       href="/index.html"/>
          <item name="Install"        href="/install.html"/>
          <item name="Mailets Concept"    href="/mailets.html"/>
  <!--        <item name="Architecture"   href="/architecture.html"/> -->
          <item name="Coding Standards"   href="/code-standards.html"/>
          <item name="License"        href="/license.html"/>
          <item name="TODO"       href="/todo.html"/>
      </menu>
  
      <menu name="Guides">
          <item name="Mailet API"     href="/javadoc/mailet/index.html"/>
          <item name="Using LDAP"     href="/usingLDAP.html"/>
  <!--        <item name="Bundled Mailets"    href="/mailet_list.html"/>
          <item name="Bundled Matchers"   href="/matcher_list.html"/> -->
      </menu>
  
      </body>
  </project>
  
  
  

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

Reply via email to