From 62828e20d483647a9d27bb42cb65943da0f75b78 Mon Sep 17 00:00:00 2001 From: Vincent Richard Date: Tue, 16 Jul 2013 12:09:37 +0200 Subject: Renamed net::*{part|structure} to net::*message{Part|Structure}. Splitted code in multiple files. --- src/net/maildir/maildirMessage.cpp | 203 ++----------------------------------- 1 file changed, 9 insertions(+), 194 deletions(-) (limited to 'src/net/maildir/maildirMessage.cpp') diff --git a/src/net/maildir/maildirMessage.cpp b/src/net/maildir/maildirMessage.cpp index b6c12053..e63d5edf 100644 --- a/src/net/maildir/maildirMessage.cpp +++ b/src/net/maildir/maildirMessage.cpp @@ -28,6 +28,8 @@ #include "vmime/net/maildir/maildirMessage.hpp" +#include "vmime/net/maildir/maildirMessagePart.hpp" +#include "vmime/net/maildir/maildirMessageStructure.hpp" #include "vmime/net/maildir/maildirFolder.hpp" #include "vmime/net/maildir/maildirUtils.hpp" #include "vmime/net/maildir/maildirStore.hpp" @@ -45,193 +47,6 @@ namespace net { namespace maildir { -// -// maildirPart -// - -class maildirStructure; - -class maildirPart : public part -{ -public: - - maildirPart(ref parent, const int number, const bodyPart& part); - ~maildirPart(); - - - ref getStructure() const; - ref getStructure(); - - weak_ref getParent() const { return (m_parent); } - - const mediaType& getType() const { return (m_mediaType); } - int getSize() const { return (m_size); } - int getNumber() const { return (m_number); } - - ref getHeader() const - { - if (m_header == NULL) - throw exceptions::unfetched_object(); - else - return m_header; - } - - header& getOrCreateHeader() - { - if (m_header != NULL) - return (*m_header); - else - return (*(m_header = vmime::create
())); - } - - int getHeaderParsedOffset() const { return (m_headerParsedOffset); } - int getHeaderParsedLength() const { return (m_headerParsedLength); } - - int getBodyParsedOffset() const { return (m_bodyParsedOffset); } - int getBodyParsedLength() const { return (m_bodyParsedLength); } - - void initStructure(const bodyPart& part); - -private: - - ref m_structure; - weak_ref m_parent; - ref
m_header; - - int m_number; - int m_size; - mediaType m_mediaType; - - int m_headerParsedOffset; - int m_headerParsedLength; - - int m_bodyParsedOffset; - int m_bodyParsedLength; -}; - - - -// -// maildirStructure -// - -class maildirStructure : public structure -{ -public: - - maildirStructure() - { - } - - maildirStructure(ref parent, const bodyPart& part) - { - vmime::ref mpart = vmime::create (parent, 0, part); - mpart->initStructure(part); - - m_parts.push_back(mpart); - } - - maildirStructure(ref parent, const std::vector >& list) - { - for (unsigned int i = 0 ; i < list.size() ; ++i) - { - vmime::ref mpart = vmime::create (parent, i, *list[i]); - mpart->initStructure(*list[i]); - - m_parts.push_back(mpart); - } - } - - - ref getPartAt(const size_t x) const - { - return m_parts[x]; - } - - ref getPartAt(const size_t x) - { - return m_parts[x]; - } - - size_t getPartCount() const - { - return m_parts.size(); - } - - - static ref emptyStructure() - { - return m_emptyStructure; - } - -private: - - static ref m_emptyStructure; - - std::vector > m_parts; -}; - - -ref maildirStructure::m_emptyStructure = vmime::create (); - - - -maildirPart::maildirPart(ref parent, const int number, const bodyPart& part) - : m_parent(parent), m_header(NULL), m_number(number) -{ - m_headerParsedOffset = part.getHeader()->getParsedOffset(); - m_headerParsedLength = part.getHeader()->getParsedLength(); - - m_bodyParsedOffset = part.getBody()->getParsedOffset(); - m_bodyParsedLength = part.getBody()->getParsedLength(); - - m_size = part.getBody()->getContents()->getLength(); - - m_mediaType = part.getBody()->getContentType(); -} - - -maildirPart::~maildirPart() -{ -} - - -void maildirPart::initStructure(const bodyPart& part) -{ - if (part.getBody()->getPartList().size() == 0) - m_structure = NULL; - else - { - m_structure = vmime::create - (thisRef().dynamicCast (), - part.getBody()->getPartList()); - } -} - - -ref maildirPart::getStructure() const -{ - if (m_structure != NULL) - return m_structure; - else - return maildirStructure::emptyStructure(); -} - - -ref maildirPart::getStructure() -{ - if (m_structure != NULL) - return m_structure; - else - return maildirStructure::emptyStructure(); -} - - - -// -// maildirMessage -// - maildirMessage::maildirMessage(ref folder, const int num) : m_folder(folder), m_num(num), m_size(-1), m_flags(FLAG_UNDEFINED), m_expunged(false), m_structure(NULL) @@ -282,7 +97,7 @@ bool maildirMessage::isExpunged() const } -ref maildirMessage::getStructure() const +ref maildirMessage::getStructure() const { if (m_structure == NULL) throw exceptions::unfetched_object(); @@ -291,7 +106,7 @@ ref maildirMessage::getStructure() const } -ref maildirMessage::getStructure() +ref maildirMessage::getStructure() { if (m_structure == NULL) throw exceptions::unfetched_object(); @@ -337,11 +152,11 @@ void maildirMessage::extract(utility::outputStream& os, } -void maildirMessage::extractPart(ref p, utility::outputStream& os, +void maildirMessage::extractPart(ref p, utility::outputStream& os, utility::progressListener* progress, const int start, const int length, const bool peek) const { - ref mp = p.dynamicCast (); + ref mp = p.dynamicCast (); extractImpl(os, progress, mp->getBodyParsedOffset(), mp->getBodyParsedLength(), start, length, peek); @@ -395,11 +210,11 @@ void maildirMessage::extractImpl(utility::outputStream& os, utility::progressLis } -void maildirMessage::fetchPartHeader(ref p) +void maildirMessage::fetchPartHeader(ref p) { ref folder = m_folder.acquire(); - ref mp = p.dynamicCast (); + ref mp = p.dynamicCast (); ref fsf = platform::getHandler()->getFileSystemFactory(); @@ -508,7 +323,7 @@ void maildirMessage::fetch(ref msgFolder, const int options) // Extract structure if (options & folder::FETCH_STRUCTURE) { - m_structure = vmime::create (null, msg); + m_structure = vmime::create (null, msg); } // Extract some header fields or whole header -- cgit