version 0.2.11
[fms.git] / include / freenet / messagexml.h
index 7daa842..71e6e65 100644 (file)
@@ -15,14 +15,22 @@ public:
        std::string GetXML();\r
        const bool ParseXML(const std::string &xml);\r
 \r
-       std::string GetDate()                                           { return m_date; }\r
-       std::string GetTime()                                           { return m_time; }\r
-       std::string GetSubject()                                        { return m_subject; }\r
-       std::string GetMessageID()                                      { return m_messageid; }\r
-       std::string GetReplyBoard()                                     { return m_replyboard; }\r
-       std::string GetBody()                                           { return m_body; }\r
-       std::vector<std::string> GetBoards()            { return m_boards; }\r
-       std::map<long,std::string> GetInReplyTo()       { return m_inreplyto; }\r
+       struct fileattachment\r
+       {\r
+               fileattachment(const std::string &key, const int size):m_key(key),m_size(size)  {}\r
+               std::string m_key;\r
+               int m_size;\r
+       };\r
+\r
+       std::string GetDate()                                                           { return m_date; }\r
+       std::string GetTime()                                                           { return m_time; }\r
+       std::string GetSubject()                                                        { return m_subject; }\r
+       std::string GetMessageID()                                                      { return m_messageid; }\r
+       std::string GetReplyBoard()                                                     { return m_replyboard; }\r
+       std::string GetBody()                                                           { return m_body; }\r
+       std::vector<std::string> GetBoards()                            { return m_boards; }\r
+       std::map<long,std::string> GetInReplyTo()                       { return m_inreplyto; }\r
+       std::vector<fileattachment> GetFileAttachments()        { return m_fileattachments; }\r
 \r
        void SetDate(const std::string &date)                                                           { m_date=date; }\r
        void SetTime(const std::string &time)                                                           { m_time=time; }\r
@@ -32,6 +40,7 @@ public:
        void SetBody(const std::string &body)                                                           { m_body=body; }\r
        void AddBoard(const std::string &board)                                                         { m_boards.push_back(board); }\r
        void AddInReplyTo(const long index, const std::string &messageid)       { m_inreplyto[index]=messageid; }\r
+       void AddFileAttachment(const std::string &key, const int size)          { m_fileattachments.push_back(fileattachment(key,size)); }\r
 \r
 private:\r
        void Initialize();\r
@@ -43,6 +52,7 @@ private:
        std::vector<std::string> m_boards;\r
        std::string m_replyboard;\r
        std::map<long,std::string> m_inreplyto;\r
+       std::vector<fileattachment> m_fileattachments;\r
        std::string m_body;\r
 \r
 };\r