summaryrefslogtreecommitdiffabout
path: root/kmicromail/libmailwrapper/genericwrapper.h
Unidiff
Diffstat (limited to 'kmicromail/libmailwrapper/genericwrapper.h') (more/less context) (show whitespace changes)
-rw-r--r--kmicromail/libmailwrapper/genericwrapper.h67
1 files changed, 67 insertions, 0 deletions
diff --git a/kmicromail/libmailwrapper/genericwrapper.h b/kmicromail/libmailwrapper/genericwrapper.h
new file mode 100644
index 0000000..8be9212
--- a/dev/null
+++ b/kmicromail/libmailwrapper/genericwrapper.h
@@ -0,0 +1,67 @@
1#ifndef __GENERIC_WRAPPER_H
2#define __GENERIC_WRAPPER_H
3
4#include "abstractmail.h"
5#include <qmap.h>
6#include <qstring.h>
7#include <libetpan/clist.h>
8
9class RecMail;
10class RecBody;
11class encodedString;
12struct mailpop3;
13struct mailmessage;
14struct mailmime;
15struct mailmime_mechanism;
16struct mailimf_mailbox_list;
17struct mailimf_mailbox;
18struct mailimf_date_time;
19struct mailimf_group;
20struct mailimf_address_list;
21struct mailsession;
22struct mailstorage;
23struct mailfolder;
24struct mailimf_in_reply_to;
25
26/* this class hold just the funs shared between
27 * mbox and pop3 (later mh, too) mail access.
28 * it is not desigend to make a instance of it!
29 */
30class Genericwrapper : public AbstractMail
31{
32 Q_OBJECT
33public:
34 Genericwrapper();
35 virtual ~Genericwrapper();
36
37 virtual encodedString* fetchDecodedPart(const RecMailP&mail,const RecPartP&part);
38 virtual encodedString* fetchRawPart(const RecMailP&mail,const RecPartP&part);
39 virtual QString fetchTextPart(const RecMailP&mail,const RecPartP&part);
40 virtual void cleanMimeCache();
41 virtual int deleteMbox(const Opie::Core::OSmartPointer<Folder>&){return 1;}
42 virtual void logout(){};
43 virtual void storeMessage(const char*msg,size_t length, const QString&folder){};
44
45protected:
46 RecBodyP parseMail( mailmessage * msg );
47 QString parseMailboxList( mailimf_mailbox_list *list );
48 QString parseMailbox( mailimf_mailbox *box );
49 QString parseGroup( mailimf_group *group );
50 QString parseAddressList( mailimf_address_list *list );
51 QString parseDateTime( mailimf_date_time *date );
52
53 void traverseBody(RecBodyP&target,mailmessage*message,mailmime*mime,QValueList<int>recList,unsigned int current_rek=0,int current_count=1);
54 static void fillSingleBody(RecPartP&target,mailmessage*message,mailmime*mime);
55 static void fillParameters(RecPartP&target,clist*parameters);
56 static QString getencoding(mailmime_mechanism*aEnc);
57 virtual void parseList(QValueList<Opie::Core::OSmartPointer<RecMail> > &target,mailsession*session,const QString&mailbox,bool mbox_as_to=false);
58 QStringList parseInreplies(mailimf_in_reply_to * in_replies);
59
60 QString msgTempName;
61 unsigned int last_msg_id;
62 QMap<QString,encodedString*> bodyCache;
63 mailstorage * m_storage;
64 mailfolder*m_folder;
65};
66
67#endif