History log of /haiku-fatelf/src/add-ons/mail_daemon/inbound_protocols/imap/imap_lib/IMAPStorage.h
Revision Date Author Comments
# 4b2c09b6 28-Oct-2011 Axel Dörfler <axeld@pinc-software.de>

* Style cleanup.
* Changed quote from double to uint64.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42946 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a68750c1 09-Feb-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Fix spelling and potential deadlock.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40414 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 81d1d0e5 09-Feb-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

To sync the mailbox a thread is started which reads the local files while in the parent thread the id list from the server is fetched. To sync both threads a BLocker was used. BLocker does not block when locked from the same thread so use a semaphore now.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40412 a95241bf-73f2-0310-859d-f6bbb57e9c96


# dc2577cf 08-Feb-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Map one or more server mailboxes two a local directory. All subscribed mailboxes are fetched automatically and populated under the root account folder. On startup the local copy is synced with the server, means all local changes are rejected. (We should think about store offline changes and apply them when online)
Also the read flags are synced with the server. This makes it easy to have the same mailbox state on different machines.

Messages could be deleted by delete them form the folder (not when moving them to trash) This maybe needs some more thoughts but its a save solution. One problem with moving it to trash is that you also want to have the option to restore it again. If it is a header only messages and you delete it from the server you lose the body part. Complete messages could theoretically be append to the mailbox again when restoring the mail form trash. Append is commented out though...

An solution for the delete problem would be to move the message to a trash folder on the server. Moving mails on the server is not implemented yet, though.

You can subscribe or unsubscribe to a mailbox using the imap pref panel. The settings are written to the server and are not stored locally.

Add some helper classes which could also be used for POP and SMTP:
ServerConnection: abstract ssl or socket connection
ConnectionReader (still a bit IMAP specific but could be easily separated IMHO): read complete lines or a bunch of data more efficient. Old implementation did it byte by byte, this class read data in bunches and buffer the left over for the next request...



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40399 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4b2c09b6b34063de5c7625c6846ff547cff23cd5 28-Oct-2011 Axel Dörfler <axeld@pinc-software.de>

* Style cleanup.
* Changed quote from double to uint64.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42946 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a68750c1ac950ddedab035c8ac2c5e532ae7ef77 09-Feb-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Fix spelling and potential deadlock.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40414 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 81d1d0e5049979895ee8f8d04f879963b52b04ce 09-Feb-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

To sync the mailbox a thread is started which reads the local files while in the parent thread the id list from the server is fetched. To sync both threads a BLocker was used. BLocker does not block when locked from the same thread so use a semaphore now.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40412 a95241bf-73f2-0310-859d-f6bbb57e9c96


# dc2577cf2dd812e84a8907a4df16b28e78ad8600 08-Feb-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Map one or more server mailboxes two a local directory. All subscribed mailboxes are fetched automatically and populated under the root account folder. On startup the local copy is synced with the server, means all local changes are rejected. (We should think about store offline changes and apply them when online)
Also the read flags are synced with the server. This makes it easy to have the same mailbox state on different machines.

Messages could be deleted by delete them form the folder (not when moving them to trash) This maybe needs some more thoughts but its a save solution. One problem with moving it to trash is that you also want to have the option to restore it again. If it is a header only messages and you delete it from the server you lose the body part. Complete messages could theoretically be append to the mailbox again when restoring the mail form trash. Append is commented out though...

An solution for the delete problem would be to move the message to a trash folder on the server. Moving mails on the server is not implemented yet, though.

You can subscribe or unsubscribe to a mailbox using the imap pref panel. The settings are written to the server and are not stored locally.

Add some helper classes which could also be used for POP and SMTP:
ServerConnection: abstract ssl or socket connection
ConnectionReader (still a bit IMAP specific but could be easily separated IMHO): read complete lines or a bunch of data more efficient. Old implementation did it byte by byte, this class read data in bunches and buffer the left over for the next request...



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40399 a95241bf-73f2-0310-859d-f6bbb57e9c96