<?xml version="1.0"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one
  or more contributor license agreements.  See the NOTICE file
  distributed with this work for additional information
  regarding copyright ownership.  The ASF licenses this file
  to you under the Apache License, Version 2.0 (the
  "License"); you may not use this file except in compliance
  with the License.  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing,
  software distributed under the License is distributed on an
  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  KIND, either express or implied.  See the License for the
  specific language governing permissions and limitations
  under the License.    
-->
<document>

 <properties>
  <title>Notes for developers</title>
  <author email="sergek@lokitech.com">Serge Knystautas</author>
 </properties>

<body>

<section name="Architecture">

  <p>
    James is a multi-protocol message processing and storage engine. James
    currently consists of:
    <ul>
      <li> two mail prototcol servers (SMTP and POP3),</li>
      <li> a remote administration server,</li>
      <li> an NNTP server,</li>
      <li> a mail processing engine that supports the Mailet API</li>
      <li> file-system message storage and a message storage interface to RDBMS's</li>
      <li> file-system user record storage and an experimental interface to LDAP directories</li>
      <li> support for TLS (SSL) for POP3 and remote administration</li>
      <li> support for SMTP auth</li>
    </ul>
  </p>

  <p>
    James is built on top of Avalon, the Java Apache Server Framework.
    Versions 2.3 of James use a modified trunk version of Avalon code.
    Please the JAMES_PHOENIX.txt file shipped with the src for information.
    
    The <code>lib</code> directory includes date-stamped jars of the various Avalon libraries.
  </p>
    

</section>

</body>
</document>
