diff options
author | Vincent Richard <[email protected]> | 2004-12-15 22:17:03 +0000 |
---|---|---|
committer | Vincent Richard <[email protected]> | 2004-12-15 22:17:03 +0000 |
commit | 78b3909d9b3e88589e1b28a362bbc54913bca959 (patch) | |
tree | 853146fc5746adf25d8ed859a3a299537088c4d4 /src/messaging/IMAPMessage.cpp | |
parent | Added parsing bounds on 'component'. (diff) | |
download | vmime-78b3909d9b3e88589e1b28a362bbc54913bca959.tar.gz vmime-78b3909d9b3e88589e1b28a362bbc54913bca959.zip |
Working on 'maildir' implementation.
Diffstat (limited to 'src/messaging/IMAPMessage.cpp')
-rw-r--r-- | src/messaging/IMAPMessage.cpp | 55 |
1 files changed, 16 insertions, 39 deletions
diff --git a/src/messaging/IMAPMessage.cpp b/src/messaging/IMAPMessage.cpp index 72f9ce31..d5ede663 100644 --- a/src/messaging/IMAPMessage.cpp +++ b/src/messaging/IMAPMessage.cpp @@ -33,30 +33,11 @@ namespace messaging { // -// IMAPheader -// - - -class IMAPheader : public header -{ -public: - - IMAPheader() - { - } - - void parse(const string& str) - { - header::parse(str); - } -}; - - - -// // IMAPpart // +class IMAPstructure; + class IMAPpart : public part { private: @@ -75,7 +56,13 @@ public: const int getSize() const { return (m_size); } const int getNumber() const { return (m_number); } - const header& getHeader() const; + const header& getHeader() const + { + if (m_header == NULL) + throw exceptions::unfetched_object(); + else + return (*m_header); + } static IMAPpart* create(IMAPpart* parent, const int number, const IMAPParser::body* body) @@ -87,19 +74,19 @@ public: } - IMAPheader& getOrCreateHeader() + header& getOrCreateHeader() { if (m_header != NULL) return (*m_header); else - return (*(m_header = new IMAPheader())); + return (*(m_header = new header())); } private: IMAPstructure* m_structure; IMAPpart* m_parent; - IMAPheader* m_header; + header* m_header; int m_number; int m_size; @@ -112,7 +99,6 @@ private: // IMAPstructure // - class IMAPstructure : public structure { private: @@ -213,15 +199,6 @@ IMAPpart::IMAPpart(IMAPpart* parent, const int number, const IMAPParser::body_ty } -const class header& IMAPpart::getHeader() const -{ - if (m_header == NULL) - throw exceptions::unfetched_object(); - else - return (*m_header); -} - - const class structure& IMAPpart::getStructure() const { if (m_structure != NULL) @@ -297,7 +274,7 @@ IMAPMessage::~IMAPMessage() if (m_folder) m_folder->unregisterMessage(this); - delete dynamic_cast <IMAPheader*>(m_header); + delete dynamic_cast <header*>(m_header); } @@ -674,7 +651,7 @@ void IMAPMessage::processFetchResponse (*it)->section()->section_text1()->type() == IMAPParser::section_text::HEADER_FIELDS) { - IMAPheader tempHeader; + header tempHeader; tempHeader.parse((*it)->nstring()->value()); vmime::header& hdr = getOrCreateHeader(); @@ -706,12 +683,12 @@ void IMAPMessage::processFetchResponse } -IMAPheader& IMAPMessage::getOrCreateHeader() +header& IMAPMessage::getOrCreateHeader() { if (m_header != NULL) return (*m_header); else - return (*(m_header = new IMAPheader())); + return (*(m_header = new header())); } |