aboutsummaryrefslogtreecommitdiff
path: root/src/client.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/client.cpp')
-rw-r--r--src/client.cpp43
1 files changed, 43 insertions, 0 deletions
diff --git a/src/client.cpp b/src/client.cpp
new file mode 100644
index 0000000..f787003
--- /dev/null
+++ b/src/client.cpp
@@ -0,0 +1,43 @@
+#include "client.h"
+
+namespace hotstuff {
+
+uint64_t CommandDummy::cnt = 0;
+
+void MsgClient::gen_reqcmd(const Command &cmd) {
+ DataStream s;
+ set_opcode(REQ_CMD);
+ s << cmd;
+ set_payload(std::move(s));
+}
+
+void MsgClient::parse_reqcmd(CommandDummy &cmd) const {
+ DataStream s(get_payload());
+ s >> cmd;
+}
+
+void MsgClient::gen_respcmd(const uint256_t &cmd_hash, const Finality &fin) {
+ DataStream s;
+ set_opcode(RESP_CMD);
+ s << cmd_hash << fin;
+ set_payload(std::move(s));
+}
+
+void MsgClient::parse_respcmd(uint256_t &cmd_hash, Finality &fin) const {
+ DataStream s(get_payload());
+ s >> cmd_hash >> fin;
+}
+
+void MsgClient::gen_chkcmd(const uint256_t &cmd_hash) {
+ DataStream s;
+ set_opcode(CHK_CMD);
+ s << cmd_hash;
+ set_payload(std::move(s));
+}
+
+void MsgClient::parse_chkcmd(uint256_t &cmd_hash) const {
+ DataStream s(get_payload());
+ s >> cmd_hash;
+}
+
+}