james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Darrell DeBoer <darr...@apache.org>
Subject It's IMAP, Jim, but not as we know it...
Date Fri, 22 Nov 2002 02:32:03 GMT
Howdy folks,

Well since I last emailed a bit over a week ago, I've been busily coding away 
on an Imap proposal. After a bit of struggling with the old code, I made a 
clean break and started again - just pulling in the bits I needed as I needed 

Because these changes are so radical, I've opted to put them into a new 
proposal (imap2), and leave the existing one intact.

The new proposal is IMHO heaps simpler, and easier to develop on, although 
functionally not as complete. Some of the design ideas have stayed the same, 
while others have been scrapped and overhauled. There's still heaps of work 
to do, but I wanted to get it into CVS as it stands, so that I can get 
feedback and (hopefully) collaboration.

Remember, this is very much a work-in-progress. I'm very much of the 
design->code->*[refactor] approach, so nothing is set in stone. The only 
storage implementation is currently in-memory, so the IMAP server is probably 
only suitable for storing your worst spam ;). Being in-memory makes it easier 
to test and refactor, though, so it's ideal for development. There are heaps 
of TODO markers throughout the code, for bits I wanted to leave til later.

So, what does it do? Not much, really. Currently, the code passes the Unit 
tests I've  written for various components, and the server builds and runs 
OK. The functionality implemented is limited to CREATE, DELETE, RENAME (need 
way I've tested it is via telnet, and through the various protocol test 
files. I haven't bothered to try to connect an email client.

If you want to have a play, you can build the server by cd-ing to 
proposals/imap2, and running "ant -f build.xml". 

The unit tests can be run by "ant -f build-test.xml unit-tests"
The protocol tests can be run by "ant -f build-test.xml protocol-tests". For 
this to work you'll need to have started James first. (I need to see if I can 
get my JamesTask working, so I can stop/start james from within ant).

Anyway, have a look, and let me know. It would be great if anyone wanted to 
pitch in and help out.


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

View raw message