Nice to see you work hard on this. I not had time to have a closer look
at your last versions yet :-( To many work at the moment. But i will
definitly do it.. Just want you know that someone is intressted ;-)

bye
Norman

Am Montag, den 12.06.2006, 23:23 +0000 schrieb Joachim Draeger (JIRA):
>     [ 
> http://issues.apache.org/jira/browse/JAMES-502?page=comments#action_12415934 
> ] 
> 
> Joachim Draeger commented on JAMES-502:
> ---------------------------------------
> 
> 2006-06-13
> 
> Hi everybody,
> 
> after a lot of javamaildir and JavaMailStoreMailRepository i found some time 
> for IMAP again.
> 
> To safely share the JavaMail Store between MailRepository and possibly 
> multiple instances of IMAP i wrote a StoreGateKeeper in additional to the 
> FolderGateKeeper to care for caching and opening/closing Folders.
> It looks a bit complicated because everything goes through a few wrappers but 
> it makes it possible to keep parts separated.
> The reason is that javamaildir allows access by multiple threads but not at 
> multiple instances of one Folder. Additionally a Folder has to be closed 
> after a session to write Flags.
> To say it again: There is no strong dependency to JavaMail Store or 
> javamaildir. 
> I've implemented two existing interfaces: ImapMailbox and ImapHost.
> 
> This time I followed a bit the TDD and exploratory testing. It really sucks 
> to always build a jar launch James start Thunderbird and search through the 
> logs until you find an exception or the right debug message. 
> After writing a few very simple stubs/mocks I could start the server directly 
> through a static void main! (see test 
> org.apache.james.imapserver.util.ImapServerLauncher) Just create a tcp 
> directory  choose run from eclipse and have fun. Or just run it in the 
> debugger. The traffic gets logged into tcp.
> 
> In org.apache.james.imapserver.handler.session.SessionTest I'm just using a 
> ByteArrayStream pair and process it via ImapRequestHandler.handleRequest();
> Using debugger is very useful here too.
> 
> I preferred first writing my own tests (exploratory) in favor of the existing 
> original ones. But now I understand them much better and I'm sure many of 
> them could be reanimated.
> 
> For two reasons I decided to setup a public svn repository.
> 1. Putting out a "release" takes much time, even it is only a probosal.
> 2. I hope more people will join now
> 
> But of course I would like to see Imap server playing in the james sandbox 
> soon.  :-)
> 
> http://svn.joachim-draeger.de/repos/james/
> 
> It contains the latest (my) versions of javamaildir, 
> javamailstore-mailrepository and imap. The latest versions of all three are 
> needed at the moment. But they should be easy to build.
> Just download a few libs and use ant. Or just make a few clicks in sure IDE 
> and wire the source folders together.
> I had to block the directories including mixed licensed jars for known 
> reasons.
> javamaildir just needs junit,activation and javamail. 
> javamailstore-mailrepository is well documentated. :-)
> imap needs log4j, junit, jmock 1.1.0RC1, commons-io and many jars from the 
> james lib directory.
> I hope to have a convenient build like in javamailstore-mailrepositroy soon. 
> Please ask if you have any questions.
> 
> To get startet in IMAP I found this document very useful: 
> http://www.cs.nyu.edu/artg/internet/Spring2003/assignments/rfc2060_with_changes-04-23.pdf
> (with highlighted important parts and comments)
> 
> At the moment I will concentrate on Thunderbird 1.5 as client.
> For a reference it is quite helpful to watch "real life" imap sessions with a 
> packet sniffer like ethereal. As a reference server I prefer courier. If you 
> don't have access to a suitable account I could create one for you at my 
> server.
> 
> The next tasks will be:
> 
> 1. creating a build script
> 2. reanimate existing tests
> 3. maybe some fancy UML
> 4. bringing more commands to life
> 5. think of a James Imap compatible MessageRepository
> 
> I'm looking forward for your input and questions! :-) 
> 
> Joachim
> 
> 
> > IMAP support
> > ------------
> >
> >          Key: JAMES-502
> >          URL: http://issues.apache.org/jira/browse/JAMES-502
> >      Project: James
> >         Type: New Feature
> 
> >   Components: IMAPServer
> >     Reporter: Stefano Bagnara
> >      Fix For: 3.0
> >  Attachments: james-imap2-proposal-extended1.zip, james-imap2-proposal.zip
> >
> > James needs a working IMAP implementations. This is just a container for 
> > the IMAP efforts and updates.
> > Many times in the list people ask the current status, the missing steps, 
> > and more. We should add subtasks to this issue to clear up things.
> > If you're willing to help with IMAP support for James please read mailing 
> > list archives and this issue history and discuss in the list what you're 
> > willing to do.
> > I (Stefano) will be happy to help for everything related the James/Avalon 
> > integration and the correct service interactions, but I don't know anything 
> > about the IMAP protocol itself.
> 

Attachment: signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil

Reply via email to