--- /dev/null
+#ifndef _identityexportxml_\r
+#define _identityexportxml_\r
+\r
+#include "../ifmsxmldocument.h"\r
+\r
+class IdentityExportXML:public IFMSXMLDocument\r
+{\r
+public:\r
+ IdentityExportXML();\r
+\r
+ std::string GetXML();\r
+ const bool ParseXML(const std::string &xml);\r
+\r
+ void AddIdentity(const std::string &name, const std::string &publickey, const std::string &privatekey, const bool singleuse=false, const bool publishtrustlist=false, const bool publishboardlist=false);\r
+\r
+ const long GetCount() { return m_identities.size(); }\r
+\r
+ const std::string GetName(const long index);\r
+ const std::string GetPublicKey(const long index);\r
+ const std::string GetPrivateKey(const long index);\r
+ const bool GetSingleUse(const long index);\r
+ const bool GetPublishTrustList(const long index);\r
+ const bool GetPublishBoardList(const long index);\r
+\r
+private:\r
+ void Initialize();\r
+\r
+ struct identity\r
+ {\r
+ identity(const std::string &name, const std::string &publickey, const std::string &privatekey, const bool singleuse, const bool publishtrustlist, const bool publishboardlist):m_name(name),m_publickey(publickey),m_privatekey(privatekey),m_singleuse(singleuse),m_publishtrustlist(publishtrustlist),m_publishboardlist(publishboardlist) {}\r
+ std::string m_name;\r
+ std::string m_publickey;\r
+ std::string m_privatekey;\r
+ bool m_singleuse;\r
+ bool m_publishtrustlist;\r
+ bool m_publishboardlist;\r
+ };\r
+\r
+ std::vector<identity> m_identities;\r
+\r
+};\r
+\r
+#endif // _identityexportxml_\r