version 0.1.0
[fms.git] / include / freenet / messagelistxml.h
diff --git a/include/freenet/messagelistxml.h b/include/freenet/messagelistxml.h
new file mode 100644 (file)
index 0000000..54d4998
--- /dev/null
@@ -0,0 +1,40 @@
+#ifndef _messagelistxml_\r
+#define _messagelistxml_\r
+\r
+#include "../ifmsxmldocument.h"\r
+\r
+#include <vector>\r
+\r
+class MessageListXML:public IFMSXMLDocument\r
+{\r
+public:\r
+       MessageListXML();\r
+\r
+       std::string GetXML();\r
+       const bool ParseXML(const std::string &xml);\r
+\r
+       void ClearMessages()    { m_messages.clear(); }\r
+\r
+       void AddMessage(const std::string &date, const long index, const std::vector<std::string> boards);\r
+\r
+       const long MessageCount()       { return m_messages.size(); }\r
+       std::string GetDate(const long index);\r
+       const long GetIndex(const long index);\r
+       std::vector<std::string> GetBoards(const long index);\r
+\r
+private:\r
+       struct message\r
+       {\r
+               message(const std::string &date, const long index, const std::vector<std::string> &boards):m_date(date),m_index(index),m_boards(boards) {}\r
+               std::string m_date;\r
+               long m_index;\r
+               std::vector<std::string> m_boards;\r
+       };\r
+\r
+       void Initialize();\r
+\r
+       std::vector<message> m_messages;\r
+\r
+};\r
+\r
+#endif // _messagelistxml_\r