james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Donald <dona...@apache.org>
Subject Re: NNTP Implementation General Comments.
Date Wed, 11 Apr 2001 04:47:07 GMT
Well done ! Sounds good - downloading it now ;)

At 09:14  10/4/01 -0700, Harmeet Bedi wrote:
>Checked in NNTP Server, configuration files, etc.
>To turn it on set Attribute NNTP="true" in file assembly.xml.
>'NNTP' is attribute of element 'services'
>NNTP is defined in RFC 977. The Extensions are in RFC 2980.
>The James NNTP implementation is based on draft 13 of NNTP. This draft was
>published on 2nd April, 2001. Draft 13, clarifies RFC 977 and is backwardly
>compatible with it. The NNTP-James implementation contains additional
>extensions to be compatible with NNTP clients.
>NNTP uses a file system based repository.
>When a message is sent to the NNTP Server, it gets streamed into a temporary
>After the message is Streamed, it is moved to Spool Directory,
>Multiple Spool threads may be monitoring the Spool Directory. A new message
>is detected, and moved to the newsgroups that it belongs to. If the message
>is POST(ed) by a client it may not have a message ID. In that case a message
>ID is generated and added.
>The articleID directory contains the association between message id and a
>message stored in a NewsGroup. This association is created by the spooler.
>ArticleID lookup is needed to satisfy some of the NNTP protocol commands.
>The various newsgroups exist as sub-directories in under the repository
>root. A client looks up the newsgroups and gets articles from it. The number
>of article matches the file name of the article. The Spooler may add
>articles in this directory on behalf of a NNTP Client or another
>synchronizing NNTP Server.
>NNTP uses the James User Repository for authentication. NNTP does not use
>the general repository abstraction present in the James and Avalon. The
>ideas are same but there is room for reusing more ideas.
>Fedora Karpelevitch is the original author and code contributor. His work
>and insight has facilitated the protocol implementation. Some of his
>abstractions are currently not used, but they could be refactored in as NNTP
>Server becomes more widely reviewed and used. Attempt has been made to get
>the first cut out, and then improve.
>Harmeet Bedi has written code, added repository, merged with James, complied
>with RFC, tested and remained awake for a few nights. :-)
>This is first pass and experimental.
>The attempt has been made to
>- be standard compliant
>- the code patterns need to be similar to other protocol servers SMTP, POP3,
>- the wildpattern matching is done using Jakarta-oro. The GlobPatterMatcher
>does about 90% or so of the things NNTP RFC wants.
>- Have repository that provide persistent store
>- First pass at testing and integration with NNTP Client.
>The next few passes could do this.
>- Features that would make the NNTP Server comply with de-facto INN Server.
>Fedor pointed out that most clients would be INN Compatible and not with
>2001 released draft 13.
>- The repository for other James servers is more flexible. The patterns and
>flexibility for other repositories should be mapped for NNTP. Move the
>package structure and other things in repository closer to what other
>protocol servers do. Have RDB, LDAP(?) repositories
>- Borrow more ideas from Jannet. Did not have sufficient time to mine as
>well as one can. Newslet interface in Jannet has not showed up. Sorry about
>that, but
>hopefully soon. The James mailet architecture is not used. Would have been
>good to do that.
>- Add ability to synchronize with other NNTP Servers.
>- Implement Article expiry mechanism.
>Basically a ton of things,
>- Tested with Java code. Added test class to org.apache.james.testing
>- Tested with outlook express: with and without authentication.
>Hope this email and checkins clarfies some things. Will add more details as
>per need and cycles.
>Do You Yahoo!?
>Get your free @yahoo.com address at http://mail.yahoo.com
>To unsubscribe, e-mail: james-dev-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: james-dev-help@jakarta.apache.org


| "Faced with the choice between changing one's mind, |
| and proving that there is no need to do so - almost |
| everyone gets busy on the proof."                   |
|              - John Kenneth Galbraith               |

To unsubscribe, e-mail: james-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: james-dev-help@jakarta.apache.org

View raw message