summaryrefslogtreecommitdiff
path: root/noncore/net/mail/smtpwrapper.h
authoralwin <alwin>2003-12-21 10:36:22 (UTC)
committer alwin <alwin>2003-12-21 10:36:22 (UTC)
commitaf0b88049e0c77cb90ef1aca608accc32a2e2828 (patch) (side-by-side diff)
treead8a2ce76ae1ab3cf535f4d1d7addbc240ff4209 /noncore/net/mail/smtpwrapper.h
parent8e884631cc002011a9abab37be9223d4a1421ff2 (diff)
downloadopie-af0b88049e0c77cb90ef1aca608accc32a2e2828.zip
opie-af0b88049e0c77cb90ef1aca608accc32a2e2828.tar.gz
opie-af0b88049e0c77cb90ef1aca608accc32a2e2828.tar.bz2
- MailWrapper -> SMTPwrapper
- made dependies from libetpan includes somewhat cleaner - removed standalone static funs and moved to class based static methods - arguements in SMTPwrapper now always const references and not deep copies TODO: clean up GOTO statements, change QList to QValueList for a better handling of "const" arguments, store mails in queue and/or a local "Sent" folder.
Diffstat (limited to 'noncore/net/mail/smtpwrapper.h') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/smtpwrapper.h53
1 files changed, 53 insertions, 0 deletions
diff --git a/noncore/net/mail/smtpwrapper.h b/noncore/net/mail/smtpwrapper.h
new file mode 100644
index 0000000..8fdb07d
--- a/dev/null
+++ b/noncore/net/mail/smtpwrapper.h
@@ -0,0 +1,53 @@
+#ifndef SMTPwrapper_H
+#define SMTPwrapper_H
+
+#include <qpe/applnk.h>
+
+#include <qbitarray.h>
+#include <qdatetime.h>
+#include <libetpan/clist.h>
+
+#include "settings.h"
+
+class Mail;
+class Attachment;
+struct mailimf_fields;
+struct mailimf_field;
+struct mailimf_mailbox;
+struct mailmime;
+struct mailimf_address_list;
+
+class SMTPwrapper : public QObject
+{
+ Q_OBJECT
+
+public:
+ SMTPwrapper( Settings *s );
+ virtual ~SMTPwrapper(){}
+ void sendMail(const Mail& mail );
+
+protected:
+ mailimf_mailbox *newMailbox(const QString&name,const QString&mail );
+ mailimf_fields *createImfFields(const Mail &mail );
+ mailmime *createMimeMail(const Mail&mail );
+
+ mailimf_address_list *parseAddresses(const QString&addr );
+ void addFileParts( mailmime *message,const QList<Attachment>&files );
+ mailmime *buildTxtPart(const QString&str );
+ mailmime *buildFilePart(const QString&filename,const QString&mimetype );
+ void smtpSend( mailmime *mail );
+ mailimf_field *getField( mailimf_fields *fields, int type );
+ clist *createRcptList( mailimf_fields *fields );
+ char *getFrom( mailmime *mail );
+ SMTPaccount *getAccount(const QString&from );
+ void writeToFile(const QString&file, mailmime *mail );
+ void readFromFile(const QString&file, char **data, size_t *size );
+
+ static QString mailsmtpError( int err );
+ static QString getTmpFile();
+ static void progress( size_t current, size_t maximum );
+ static void addRcpts( clist *list, mailimf_address_list *addr_list );
+ Settings *settings;
+};
+
+#endif