kioslaves/imap4
imapParser Class Reference
Inheritance diagram for imapParser:

Detailed Description
Definition at line 187 of file imapparser.h.
Public Types | |
| enum | IMAP_STATE { ISTATE_NO, ISTATE_CONNECT, ISTATE_LOGIN, ISTATE_SELECT } |
Public Member Functions | |
| imapParser () | |
| virtual | ~imapParser () |
| enum IMAP_STATE | getState () |
| void | setState (enum IMAP_STATE state) |
| const QString | getCurrentBox () |
| imapCommand * | sendCommand (imapCommand *aCmd) |
| imapCommand * | doCommand (imapCommand *aCmd) |
| bool | clientLogin (const QString &aUser, const QString &aPass, QString &resultInfo) |
| bool | clientAuthenticate (KIO::SlaveBase *slave, KIO::AuthInfo &ai, const QString &aFQDN, const QString &aAuth, bool isSSL, QString &resultInfo) |
| int | parseLoop () |
| void | parseUntagged (parseString &result) |
| void | parseRecent (ulong value, parseString &result) |
| void | parseResult (QByteArray &result, parseString &rest, const QString &command=QString::null) |
| void | parseCapability (parseString &result) |
| void | parseFlags (parseString &result) |
| void | parseList (parseString &result) |
| void | parseLsub (parseString &result) |
| void | parseListRights (parseString &result) |
| void | parseMyRights (parseString &result) |
| void | parseSearch (parseString &result) |
| void | parseStatus (parseString &result) |
| void | parseExists (ulong value, parseString &result) |
| void | parseExpunge (ulong value, parseString &result) |
| void | parseAcl (parseString &result) |
| void | parseAnnotation (parseString &result) |
| void | parseNamespace (parseString &result) |
| void | parseQuotaRoot (parseString &result) |
| void | parseQuota (parseString &result) |
| void | parseCustom (parseString &result) |
| void | parseOtherUser (parseString &result) |
| void | parseDelegate (parseString &result) |
| void | parseOutOfOffice (parseString &result) |
| void | parseFetch (ulong value, parseString &inWords) |
| mailHeader * | parseEnvelope (parseString &inWords) |
| void | parseAddressList (parseString &inWords, QPtrList< mailAddress > &list) |
| const mailAddress & | parseAddress (parseString &inWords, mailAddress &buffer) |
| void | parseBody (parseString &inWords) |
| mimeHeader * | parseBodyStructure (parseString &inWords, QString §ion, mimeHeader *inHeader=0) |
| mimeHeader * | parseSimplePart (parseString &inWords, QString §ion, mimeHeader *localPart=0) |
| QAsciiDict< QString > | parseParameters (parseString &inWords) |
| QAsciiDict< QString > | parseDisposition (parseString &inWords) |
| virtual void | parseRelay (const QByteArray &buffer) |
| virtual void | parseRelay (ulong) |
| virtual bool | parseRead (QByteArray &buffer, ulong len, ulong relay=0) |
| virtual bool | parseReadLine (QByteArray &buffer, ulong relay=0) |
| virtual void | parseWriteLine (const QString &) |
| void | parseSentence (parseString &inWords) |
| QCString | parseLiteralC (parseString &inWords, bool relay=false, bool stopAtBracket=false, int *outlen=0) |
| QByteArray | parseLiteral (parseString &inWords, bool relay=false, bool stopAtBracket=false) |
| imapCache * | getLastHandled () |
| const QStringList & | getResults () |
| const imapInfo & | getStatus () |
| const imapInfo & | getSelected () |
| const QByteArray & | getContinuation () |
| bool | hasCapability (const QString &) |
| void | removeCapability (const QString &cap) |
| QString | namespaceForBox (const QString &box) |
Static Public Member Functions | |
| static QCString | b2c (const QByteArray &ba) |
| static QCString | parseOneWordC (parseString &inWords, bool stopAtBracket=FALSE, int *len=0) |
| static bool | parseOneNumber (parseString &inWords, ulong &num) |
| static void | parseURL (const KURL &_url, QString &_box, QString &_section, QString &_type, QString &_uid, QString &_validity, QString &_info) |
| static void | skipWS (parseString &inWords) |
Protected Attributes | |
| enum IMAP_STATE | currentState |
| QString | currentBox |
| imapInfo | selectInfo |
| imapInfo | lastStatus |
| QStringList | imapCapabilities |
| QValueList< imapList > | listResponses |
| QPtrList< imapCommand > | sentQueue |
| QPtrList< imapCommand > | completeQueue |
| QStringList | unhandled |
| QByteArray | continuation |
| QString | seenUid |
| imapCache * | lastHandled |
| ulong | commandCounter |
| QStringList | lastResults |
| QMap< QString, QString > | namespaceToDelimiter |
| QStringList | imapNamespaces |
Member Enumeration Documentation
the different states the client can be in
- Enumerator:
-
ISTATE_NO Not connected. ISTATE_CONNECT Connected but not logged in. ISTATE_LOGIN Logged in. ISTATE_SELECT A folder is currently selected.
Definition at line 193 of file imapparser.h.
Member Function Documentation
| enum IMAP_STATE imapParser::getState | ( | ) | [inline] |
| void imapParser::setState | ( | enum IMAP_STATE | state | ) | [inline] |
| imapCommand * imapParser::sendCommand | ( | imapCommand * | aCmd | ) |
do setup and send the command to parseWriteLine
- Parameters:
-
aCmd The command to perform
- Returns:
- The completed command
Definition at line 104 of file imapparser.cc.
| imapCommand * imapParser::doCommand | ( | imapCommand * | aCmd | ) |
perform a command and wait to parse the result
- Parameters:
-
aCmd The command to perform
- Returns:
- The completed command
Definition at line 91 of file imapparser.cc.
| bool imapParser::clientLogin | ( | const QString & | aUser, | |
| const QString & | aPass, | |||
| QString & | resultInfo | |||
| ) |
plaintext login
- Parameters:
-
aUser Username aPass Password resultInfo The resultinfo from the command
- Returns:
- success or failure
Definition at line 149 of file imapparser.cc.
| bool imapParser::clientAuthenticate | ( | KIO::SlaveBase * | slave, | |
| KIO::AuthInfo & | ai, | |||
| const QString & | aFQDN, | |||
| const QString & | aAuth, | |||
| bool | isSSL, | |||
| QString & | resultInfo | |||
| ) |
non-plaintext login
- Parameters:
-
aUser Username aPass Password aAuth authentication method isSSL are we using SSL resultInfo The resultinfo from the command
- Returns:
- success or failure
Definition at line 218 of file imapparser.cc.
| int imapParser::parseLoop | ( | ) |
main loop for the parser reads one line and dispatches it to the appropriate sub parser
Definition at line 1747 of file imapparser.cc.
| void imapParser::parseUntagged | ( | parseString & | result | ) |
parses all untagged responses and passes them on to the following parsers
Definition at line 341 of file imapparser.cc.
| void imapParser::parseRecent | ( | ulong | value, | |
| parseString & | result | |||
| ) |
| void imapParser::parseResult | ( | QByteArray & | result, | |
| parseString & | rest, | |||
| const QString & | command = QString::null | |||
| ) |
| void imapParser::parseCapability | ( | parseString & | result | ) |
| void imapParser::parseFlags | ( | parseString & | result | ) |
| void imapParser::parseList | ( | parseString & | result | ) |
| void imapParser::parseLsub | ( | parseString & | result | ) |
| void imapParser::parseListRights | ( | parseString & | result | ) |
| void imapParser::parseMyRights | ( | parseString & | result | ) |
| void imapParser::parseSearch | ( | parseString & | result | ) |
| void imapParser::parseStatus | ( | parseString & | result | ) |
| void imapParser::parseExists | ( | ulong | value, | |
| parseString & | result | |||
| ) |
| void imapParser::parseExpunge | ( | ulong | value, | |
| parseString & | result | |||
| ) |
| void imapParser::parseAcl | ( | parseString & | result | ) |
| void imapParser::parseAnnotation | ( | parseString & | result | ) |
| void imapParser::parseNamespace | ( | parseString & | result | ) |
| void imapParser::parseQuotaRoot | ( | parseString & | result | ) |
| void imapParser::parseQuota | ( | parseString & | result | ) |
| void imapParser::parseCustom | ( | parseString & | result | ) |
| void imapParser::parseOtherUser | ( | parseString & | result | ) |
| void imapParser::parseDelegate | ( | parseString & | result | ) |
| void imapParser::parseOutOfOffice | ( | parseString & | result | ) |
| void imapParser::parseFetch | ( | ulong | value, | |
| parseString & | inWords | |||
| ) |
parses the results of a fetch command processes it with the following sub parsers
Definition at line 1464 of file imapparser.cc.
| mailHeader * imapParser::parseEnvelope | ( | parseString & | inWords | ) |
| void imapParser::parseAddressList | ( | parseString & | inWords, | |
| QPtrList< mailAddress > & | list | |||
| ) |
| const mailAddress & imapParser::parseAddress | ( | parseString & | inWords, | |
| mailAddress & | buffer | |||
| ) |
| void imapParser::parseBody | ( | parseString & | inWords | ) |
| mimeHeader * imapParser::parseBodyStructure | ( | parseString & | inWords, | |
| QString & | section, | |||
| mimeHeader * | inHeader = 0 | |||
| ) |
| mimeHeader * imapParser::parseSimplePart | ( | parseString & | inWords, | |
| QString & | section, | |||
| mimeHeader * | localPart = 0 | |||
| ) |
| QAsciiDict< QString > imapParser::parseParameters | ( | parseString & | inWords | ) |
| QAsciiDict< QString > imapParser::parseDisposition | ( | parseString & | inWords | ) |
parse the disposition list (disposition (name value pairs)) the disposition has the key 'content-disposition'
Definition at line 1018 of file imapparser.cc.
| void imapParser::parseRelay | ( | const QByteArray & | buffer | ) | [virtual] |
relay hook to send the fetched data directly to an upper level
Reimplemented in IMAP4Protocol.
Definition at line 1808 of file imapparser.cc.
| void imapParser::parseRelay | ( | ulong | ) | [virtual] |
relay hook to announce the fetched data directly to an upper level
Reimplemented in IMAP4Protocol.
Definition at line 1816 of file imapparser.cc.
| bool imapParser::parseRead | ( | QByteArray & | buffer, | |
| ulong | len, | |||
| ulong | relay = 0 | |||
| ) | [virtual] |
read at least len bytes
Reimplemented in IMAP4Protocol.
Definition at line 1823 of file imapparser.cc.
| bool imapParser::parseReadLine | ( | QByteArray & | buffer, | |
| ulong | relay = 0 | |||
| ) | [virtual] |
read at least a line (up to CRLF)
Reimplemented in IMAP4Protocol.
Definition at line 1833 of file imapparser.cc.
| void imapParser::parseWriteLine | ( | const QString & | ) | [virtual] |
write argument to server
Reimplemented in IMAP4Protocol.
Definition at line 1843 of file imapparser.cc.
| void imapParser::parseSentence | ( | parseString & | inWords | ) |
| QCString imapParser::parseLiteralC | ( | parseString & | inWords, | |
| bool | relay = false, |
|||
| bool | stopAtBracket = false, |
|||
| int * | outlen = 0 | |||
| ) |
| QCString imapParser::parseOneWordC | ( | parseString & | inWords, | |
| bool | stopAtBracket = FALSE, |
|||
| int * | len = 0 | |||
| ) | [static] |
parse one word (maybe quoted) upto next space " ) ] }
Definition at line 1959 of file imapparser.cc.
| bool imapParser::parseOneNumber | ( | parseString & | inWords, | |
| ulong & | num | |||
| ) | [static] |
| void imapParser::parseURL | ( | const KURL & | _url, | |
| QString & | _box, | |||
| QString & | _section, | |||
| QString & | _type, | |||
| QString & | _uid, | |||
| QString & | _validity, | |||
| QString & | _info | |||
| ) | [static] |
extract the box,section,list type, uid, uidvalidity,info from an url
Definition at line 1851 of file imapparser.cc.
| imapCache* imapParser::getLastHandled | ( | ) | [inline] |
return the last handled foo
- Todo:
- work out what a foo is
Definition at line 395 of file imapparser.h.
| const QStringList& imapParser::getResults | ( | ) | [inline] |
| const imapInfo& imapParser::getStatus | ( | ) | [inline] |
| const imapInfo& imapParser::getSelected | ( | ) | [inline] |
| bool imapParser::hasCapability | ( | const QString & | ) |
| QString imapParser::namespaceForBox | ( | const QString & | box | ) |
Member Data Documentation
enum IMAP_STATE imapParser::currentState [protected] |
QString imapParser::currentBox [protected] |
imapInfo imapParser::selectInfo [protected] |
here we store the result from select/examine and unsolicited updates
Definition at line 450 of file imapparser.h.
imapInfo imapParser::lastStatus [protected] |
QStringList imapParser::imapCapabilities [protected] |
QValueList< imapList > imapParser::listResponses [protected] |
QPtrList< imapCommand > imapParser::sentQueue [protected] |
QStringList imapParser::unhandled [protected] |
everything we didn't handle, everything but the greeting is bogus
Definition at line 468 of file imapparser.h.
QByteArray imapParser::continuation [protected] |
the last continuation request (there MUST not be more than one pending)
Definition at line 471 of file imapparser.h.
QString imapParser::seenUid [protected] |
QStringList imapParser::lastResults [protected] |
QMap<QString, QString> imapParser::namespaceToDelimiter [protected] |
namespace prefix - delimiter association The namespace is cleaned before so that it does not contain the delimiter
Definition at line 486 of file imapparser.h.
QStringList imapParser::imapNamespaces [protected] |
list of namespaces in the form: section=namespace=delimiter section is 0 (personal), 1 (other users) or 2 (shared)
Definition at line 492 of file imapparser.h.
The documentation for this class was generated from the following files:

