[week 6] - mail as a desktop service
- From: Ian Marcinkowski <ian desrt ca>
- To: gnome-soc-list gnome org
- Subject: [week 6] - mail as a desktop service
- Date: Mon, 06 Jul 2009 14:50:27 -0400
This week I am at GUADEC. I have been lucky to see a great number of
talks and talk with some great people.
I have not had an unproductive week, however.
Over the past week, I have written the code to connection asyncronously
to an IMAP server and do some -basic- IMAP parsing.
>From latest git commit (
IMAPFolder
tracks overall folder uid list
count of messages in the folder
has data_in and data_out GIO streams
change_state ()
checks if folder is in the IDLE state and
sends DONE command if necessary to perform
another command
new_search ()
creates a new search object
changes state to 'searchlist' with the tag of the
Using a basic state variable on the IMAPFolder object to
control behaviour depending on the current state.
Eg. ignore EXISTS and EXPUNGED while waiting for the
results of an IMAP serach.
IMAPSearch
keeps list of messages that match a search string
store callback reference for returning data to cache or
other interested party
update ()
update the uid_list in the IMAPSearch and run the
callback function to return the new data
Basic logic for parsing IMAP messages is nearly complete.
The async line reader provided by GIO pipes data into the
parser, which will respond to the commands as required.
Working:
Logging in
select folder
download and store list of message UIDs
respond to EXISTS and EXPUNGED while IDLE
Not Working:
EXISTS and EXPUNGED while in the mainlist (fetch main UID list)
and searchlist (fetch search UID list) states
-
Ian Marcinkowski
ian desrt ca
Gnome - Mail as a Desktop Service
http://blog.marcinkowski.ca
git://git.desrt.ca/marcinmail
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]