X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;ds=sidebyside;f=include%2Ffreenet%2Fmessagelistxml.h;h=1cbf86108265f4b581f24e693b20a0ae80d1769b;hb=4430e7762844c66428b6f822288beb71b7f82b95;hp=54d4998d0df8ac25f382fa81c731b6a66d251c61;hpb=6b896a9e1dc143bba86795be1e9336549db9b85f;p=fms.git diff --git a/include/freenet/messagelistxml.h b/include/freenet/messagelistxml.h index 54d4998..1cbf861 100644 --- a/include/freenet/messagelistxml.h +++ b/include/freenet/messagelistxml.h @@ -7,6 +7,25 @@ class MessageListXML:public IFMSXMLDocument { +private: + struct message + { + message(const std::string &date, const long index, const std::vector &boards):m_date(date),m_index(index),m_boards(boards) {} + std::string m_date; + long m_index; + std::vector m_boards; + }; + struct externalmessage + { + externalmessage(const std::string &type, const std::string identity, const std::string &date, const long index, const std::vector &boards):m_type(type),m_identity(identity),m_date(date),m_index(index),m_boards(boards) {} + externalmessage(const std::string &type, const std::string messagekey, const std::string &date, const std::vector &boards):m_type(type),m_messagekey(messagekey),m_date(date),m_boards(boards) {} + std::string m_type; + std::string m_identity; + std::string m_messagekey; + long m_index; + std::string m_date; + std::vector m_boards; + }; public: MessageListXML(); @@ -15,25 +34,28 @@ public: void ClearMessages() { m_messages.clear(); } - void AddMessage(const std::string &date, const long index, const std::vector boards); + void AddMessage(const std::string &date, const long index, const std::vector &boards); + void AddExternalMessage(const std::string &identity, const std::string &date, const long index, const std::vector &boards); + void AddExternalMessage(const std::string &messagekey, const std::string &date, const std::vector &boards); - const long MessageCount() { return m_messages.size(); } + const std::vector::size_type MessageCount() { return m_messages.size(); } std::string GetDate(const long index); const long GetIndex(const long index); std::vector GetBoards(const long index); -private: - struct message - { - message(const std::string &date, const long index, const std::vector &boards):m_date(date),m_index(index),m_boards(boards) {} - std::string m_date; - long m_index; - std::vector m_boards; - }; + const std::vector::size_type ExternalMessageCount() { return m_externalmessages.size(); } + std::string GetExternalType(const long index); + std::string GetExternalIdentity(const long index); + std::string GetExternalMessageKey(const long index); + const long GetExternalIndex(const long index); + std::string GetExternalDate(const long index); + std::vector GetExternalBoards(const long index); +private: void Initialize(); std::vector m_messages; + std::vector m_externalmessages; };