aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/rfc822
diff options
context:
space:
mode:
authorGravatar Scott Herscher <scott@porchdogsoft.com>2013-02-03 11:02:00 -0800
committerGravatar Scott Herscher <scott@porchdogsoft.com>2013-02-03 11:02:00 -0800
commit57ef6b75d7465a78c09ddbba07379625072077f5 (patch)
tree3619bb2742a957d4618123460c72bf12644e9837 /src/core/rfc822
parent54b038df296c4bb85bcd1a586f7c90c4c76d09e0 (diff)
parent61e978ca00aab50aed44c82aaf5d98177629e82c (diff)
Merge branch 'master' of github.com:MailCore/mailcore2
Diffstat (limited to 'src/core/rfc822')
-rw-r--r--src/core/rfc822/MCAttachment.cc9
-rw-r--r--src/core/rfc822/MCAttachment.h5
-rw-r--r--src/core/rfc822/MCMessageBuilder.cc7
-rw-r--r--src/core/rfc822/MCMessageParser.cc22
-rw-r--r--src/core/rfc822/MCMessageParser.h7
-rw-r--r--src/core/rfc822/MCMessagePart.cc7
-rw-r--r--src/core/rfc822/MCMultipart.cc7
7 files changed, 28 insertions, 36 deletions
diff --git a/src/core/rfc822/MCAttachment.cc b/src/core/rfc822/MCAttachment.cc
index 91b8fde3..7926baa9 100644
--- a/src/core/rfc822/MCAttachment.cc
+++ b/src/core/rfc822/MCAttachment.cc
@@ -231,13 +231,6 @@ String * Attachment::description()
return result;
}
-#if 0
-String * Attachment::className()
-{
- return MCSTR("Attachment");
-}
-#endif
-
Object * Attachment::copy()
{
return new Attachment(this);
@@ -464,6 +457,8 @@ Attachment * Attachment::attachmentWithSingleMIME(struct mailmime * mime)
MCAssert(mime->mm_type == MAILMIME_SINGLE);
result = new Attachment();
+ result->setUniqueID(mailcore::String::uuidString());
+
data = mime->mm_data.mm_single;
bytes = data->dt_data.dt_text.dt_data;
length = data->dt_data.dt_text.dt_length;
diff --git a/src/core/rfc822/MCAttachment.h b/src/core/rfc822/MCAttachment.h
index 0be168aa..ac12a5b5 100644
--- a/src/core/rfc822/MCAttachment.h
+++ b/src/core/rfc822/MCAttachment.h
@@ -27,13 +27,14 @@ namespace mailcore {
virtual void setData(Data * data);
virtual Data * data();
- static AbstractPart * attachmentsWithMIME(struct mailmime * mime);
-
public: // subclass behavior
Attachment(Attachment * other);
virtual String * description();
virtual Object * copy();
+ public: // private
+ static AbstractPart * attachmentsWithMIME(struct mailmime * mime);
+
private:
Data * mData;
void init();
diff --git a/src/core/rfc822/MCMessageBuilder.cc b/src/core/rfc822/MCMessageBuilder.cc
index 62482564..07febfbb 100644
--- a/src/core/rfc822/MCMessageBuilder.cc
+++ b/src/core/rfc822/MCMessageBuilder.cc
@@ -524,13 +524,6 @@ String * MessageBuilder::description()
return result;
}
-#if 0
-String * MessageBuilder::className()
-{
- return MCSTR("MessageBuilder");
-}
-#endif
-
Object * MessageBuilder::copy()
{
return new MessageBuilder(this);
diff --git a/src/core/rfc822/MCMessageParser.cc b/src/core/rfc822/MCMessageParser.cc
index f301ce3e..a0dcf142 100644
--- a/src/core/rfc822/MCMessageParser.cc
+++ b/src/core/rfc822/MCMessageParser.cc
@@ -2,6 +2,7 @@
#include "MCAttachment.h"
#include "MCMessageHeader.h"
+#include "MCHTMLRenderer.h"
using namespace mailcore;
@@ -69,14 +70,23 @@ String * MessageParser::description()
return result;
}
-#if 0
-String * MessageParser::className()
+Object * MessageParser::copy()
{
- return MCSTR("MessageParser");
+ return new MessageParser(this);
}
-#endif
-Object * MessageParser::copy()
+AbstractPart * MessageParser::partForContentID(String * contentID)
{
- return new MessageParser(this);
+ return mainPart()->partForContentID(contentID);
}
+
+AbstractPart * MessageParser::partForUniqueID(String * uniqueID)
+{
+ return mainPart()->partForUniqueID(uniqueID);
+}
+
+String * MessageParser::htmlRendering(HTMLRendererTemplateCallback * htmlCallback)
+{
+ return HTMLRenderer::htmlForRFC822Message(this, htmlCallback);
+}
+
diff --git a/src/core/rfc822/MCMessageParser.h b/src/core/rfc822/MCMessageParser.h
index 06673ec4..ff2f1f50 100644
--- a/src/core/rfc822/MCMessageParser.h
+++ b/src/core/rfc822/MCMessageParser.h
@@ -10,6 +10,8 @@
namespace mailcore {
+ class HTMLRendererTemplateCallback;
+
class MessageParser : public AbstractMessage {
public:
static MessageParser * messageParserWithData(Data * data);
@@ -20,6 +22,11 @@ namespace mailcore {
virtual AbstractPart * mainPart();
virtual Data * data();
+ virtual AbstractPart * partForContentID(String * contentID);
+ virtual AbstractPart * partForUniqueID(String * uniqueID);
+
+ virtual String * htmlRendering(HTMLRendererTemplateCallback * htmlCallback = NULL);
+
public: // subclass behavior
MessageParser(MessageParser * other);
virtual String * description();
diff --git a/src/core/rfc822/MCMessagePart.cc b/src/core/rfc822/MCMessagePart.cc
index 8a2122c3..21d61181 100644
--- a/src/core/rfc822/MCMessagePart.cc
+++ b/src/core/rfc822/MCMessagePart.cc
@@ -14,13 +14,6 @@ MessagePart::~MessagePart()
{
}
-#if 0
-String * MessagePart::className()
-{
- return MCSTR("MessagePart");
-}
-#endif
-
Object * MessagePart::copy()
{
return new MessagePart(this);
diff --git a/src/core/rfc822/MCMultipart.cc b/src/core/rfc822/MCMultipart.cc
index 6ab1f0db..e048669e 100644
--- a/src/core/rfc822/MCMultipart.cc
+++ b/src/core/rfc822/MCMultipart.cc
@@ -14,13 +14,6 @@ Multipart::~Multipart()
{
}
-#if 0
-String * Multipart::className()
-{
- return MCSTR("Multipart");
-}
-#endif
-
Object * Multipart::copy()
{
return new Multipart(this);