version 0.3.29
[fms.git] / src / localidentity.cpp
1 #include "../include/localidentity.h"\r
2 \r
3 #ifdef XMEM\r
4         #include <xmem.h>\r
5 #endif\r
6 \r
7 LocalIdentity::LocalIdentity(SQLite3DB::DB *db):IDatabase(db)\r
8 {\r
9         Initialize();\r
10 }\r
11 \r
12 void LocalIdentity::Initialize()\r
13 {\r
14         m_id=-1;\r
15         m_name="";\r
16         m_publickey="";\r
17         m_privatekey="";        \r
18 }\r
19 \r
20 const bool LocalIdentity::Load(const int id)\r
21 {\r
22 \r
23         Initialize();\r
24 \r
25         SQLite3DB::Statement st=m_db->Prepare("SELECT LocalIdentityID,Name,PublicKey,PrivateKey FROM tblLocalIdentity WHERE LocalIdentityID=?;");\r
26         st.Bind(0,id);\r
27         st.Step();\r
28         if(st.RowReturned())\r
29         {\r
30                 st.ResultInt(0,m_id);\r
31                 st.ResultText(1,m_name);\r
32                 st.ResultText(2,m_publickey);\r
33                 st.ResultText(3,m_privatekey);\r
34                 return true;\r
35         }\r
36         else\r
37         {\r
38                 return false;\r
39         }\r
40 \r
41 }\r
42 \r
43 const bool LocalIdentity::Load(const std::string &name)\r
44 {\r
45         Initialize();\r
46 \r
47         SQLite3DB::Statement st=m_db->Prepare("SELECT LocalIdentityID FROM tblLocalIdentity WHERE Name=?;");\r
48         st.Bind(0,name);\r
49         st.Step();\r
50         if(st.RowReturned())\r
51         {\r
52                 int id=-1;\r
53                 st.ResultInt(0,id);\r
54                 return Load(id);\r
55         }\r
56         else\r
57         {\r
58                 return false;\r
59         }\r
60 }\r