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. >
signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil