jump to navigation

InterIMAP: Async Update March 11, 2009

Posted by atmospherian in InterIMAP.

Post as moved here


InterIMAP Progress Update #1 April 11, 2008

Posted by atmospherian in Projects.
add a comment

Work on the library has been moving along quite nicely. I’ve built a new Visual Studio solution and project structure to better organize the classes and i have finished the basic object model.

The next step is to write a wrapper class that will be the main API users of the library will use to access the underlying functionality. The main goal of the API is to make connecting to an IMAP server and managing the messages stored there as easy and a quickly as possible.

One method that i plan on employing to increase the efficiency is to only fetch the message headers and message bodies when they are requested. This will be handled automatically whenver a property is accessed on either the folder or message object. For instance the first the developer accesses the Messages collection of a folder, first that folder will be examined, and the message headers will be pulled down and stored in the collection. This will give access to the bulk of the messages information. If at that point the content or attachments collection are accessed, then the full body of the message will be downloaded.

Hopefully this method will help to reduce calls to the server for unneeded information and reduce that amount of bandwidth that will be needed for the IMAP client to do its job.

I welcome any comments or criticisms on what i am planning to do. All suggestions will be given serious consideration if the community decides a different way is a better approach.

InterIMAP April 9, 2008

Posted by atmospherian in C#, Projects.
Tags: , , , ,
add a comment

It’s official. I’ve received the blessing of Rohit Joshi to continue his work on his C# IMAP client library he posted over at codeproject.

I’ve created a project at codeplex to host the library and its code. You can find it here: http://www.codeplex.com/InterIMAP

Some major features that i will be adding to the library include:

  • Complete object model for folders, messages, content (including attachments)
  • Support for SSL connections (Complete)
  • Support for saving file attachments to the file system, or any other Stream
  • Support for getting the list of folders on the server and getting the UIDs of the messages in each folder
  • Being able to do all of the above with a few API calls as possible
  • The ability to send a raw IMAP command to the server and retrieve the response. Useful for customizing the behavior of the library.

I am really excited about this opportunity to contribute to the open-source community. Hopefully people will find this library useful and maybe help contribute to it and make better.