forward blockchain type to TransactionBody

This commit is contained in:
einhornimmond 2021-04-06 13:10:50 +02:00
parent 9ea97bfb4d
commit d659dfb886
8 changed files with 294 additions and 183 deletions

View File

@ -5,7 +5,7 @@
#include "Poco/DeflatingStream.h" #include "Poco/DeflatingStream.h"
#line 6 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 6 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
#include "../controller/NodeServer.h" #include "../controller/NodeServer.h"
@ -27,7 +27,7 @@ enum PageType
PAGE_GET_TRANSACTION_RPC_CALL PAGE_GET_TRANSACTION_RPC_CALL
}; };
#line 1 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_large.cpsp" #line 1 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\header_large.cpsp"
#include "../ServerConfig.h" #include "../ServerConfig.h"
@ -40,7 +40,7 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
if (_compressResponse) response.set("Content-Encoding", "gzip"); if (_compressResponse) response.set("Content-Encoding", "gzip");
Poco::Net::HTMLForm form(request, request.stream()); Poco::Net::HTMLForm form(request, request.stream());
#line 28 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 28 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
const char* pageName = "Node Server Test"; const char* pageName = "Node Server Test";
PageType page = PAGE_CHOOSE_TEST; PageType page = PAGE_CHOOSE_TEST;
@ -115,7 +115,7 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
auto node_servers = controller::NodeServer::load(model::table::NODE_SERVER_GRADIDO_NODE); auto node_servers = controller::NodeServer::load(model::table::NODE_SERVER_GRADIDO_NODE);
auto hedera_topics = controller::HederaTopic::listAll(); auto hedera_topics = controller::HederaTopic::listAll();
#line 3 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_large.cpsp" #line 3 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\header_large.cpsp"
bool withMaterialIcons = false; bool withMaterialIcons = false;
std::ostream& _responseStream = response.send(); std::ostream& _responseStream = response.send();
@ -130,20 +130,20 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
responseStream << "<meta charset=\"UTF-8\">\n"; responseStream << "<meta charset=\"UTF-8\">\n";
responseStream << "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1, shrink-to-fit=no\">\n"; responseStream << "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1, shrink-to-fit=no\">\n";
responseStream << "<title>Gradido Login Server: "; responseStream << "<title>Gradido Login Server: ";
#line 11 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_large.cpsp" #line 11 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\header_large.cpsp"
responseStream << ( pageName ); responseStream << ( pageName );
responseStream << "</title>\n"; responseStream << "</title>\n";
responseStream << "<link rel=\"stylesheet\" type=\"text/css\" href=\""; responseStream << "<link rel=\"stylesheet\" type=\"text/css\" href=\"";
#line 12 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_large.cpsp" #line 12 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\header_large.cpsp"
responseStream << ( ServerConfig::g_php_serverPath ); responseStream << ( ServerConfig::g_php_serverPath );
responseStream << "css/main.css\">\n"; responseStream << "css/main.css\">\n";
#line 13 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_large.cpsp" #line 13 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\header_large.cpsp"
if(withMaterialIcons) { responseStream << "\n"; if(withMaterialIcons) { responseStream << "\n";
responseStream << "<link rel=\"stylesheet\" type=\"text/css\" href=\""; responseStream << "<link rel=\"stylesheet\" type=\"text/css\" href=\"";
#line 14 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_large.cpsp" #line 14 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\header_large.cpsp"
responseStream << ( ServerConfig::g_php_serverPath ); responseStream << ( ServerConfig::g_php_serverPath );
responseStream << "css/materialdesignicons.min.css\">\n"; responseStream << "css/materialdesignicons.min.css\">\n";
#line 15 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_large.cpsp" #line 15 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\header_large.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "</head>\n"; responseStream << "</head>\n";
responseStream << "<body>\n"; responseStream << "<body>\n";
@ -152,29 +152,29 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
responseStream << "\t\t\t<div class=\"nav-vertical\">\n"; responseStream << "\t\t\t<div class=\"nav-vertical\">\n";
responseStream << "\t\t\t\t<ul>\n"; responseStream << "\t\t\t\t<ul>\n";
responseStream << "\t\t\t\t\t"; responseStream << "\t\t\t\t\t";
#line 22 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_large.cpsp" #line 22 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\header_large.cpsp"
if(!user.isNull()) { responseStream << "\n"; if(!user.isNull()) { responseStream << "\n";
responseStream << "\t\t\t\t\t\t<li><a href=\""; responseStream << "\t\t\t\t\t\t<li><a href=\"";
#line 23 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_large.cpsp" #line 23 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\header_large.cpsp"
responseStream << ( user->getGroupBaseUrl() ); responseStream << ( user->getGroupBaseUrl() );
responseStream << "/\"><span class=\"link-title\">Startseite</span></a></li>\n"; responseStream << "/\"><span class=\"link-title\">Startseite</span></a></li>\n";
responseStream << "\t\t\t\t\t"; responseStream << "\t\t\t\t\t";
#line 24 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_large.cpsp" #line 24 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\header_large.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t\t\t<li><a href=\""; responseStream << "\t\t\t\t\t<li><a href=\"";
#line 25 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_large.cpsp" #line 25 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\header_large.cpsp"
responseStream << ( getBaseUrl() ); responseStream << ( getBaseUrl() );
responseStream << "/groups\"><span class=\"link-title\">Gruppen</span></a></li>\n"; responseStream << "/groups\"><span class=\"link-title\">Gruppen</span></a></li>\n";
responseStream << "\t\t\t\t\t<li><a href=\""; responseStream << "\t\t\t\t\t<li><a href=\"";
#line 26 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_large.cpsp" #line 26 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\header_large.cpsp"
responseStream << ( getBaseUrl() ); responseStream << ( getBaseUrl() );
responseStream << "/nodes\"><span class=\"link-title\">Node Server</span></a></li>\n"; responseStream << "/nodes\"><span class=\"link-title\">Node Server</span></a></li>\n";
responseStream << "\t\t\t\t\t<li><a href=\""; responseStream << "\t\t\t\t\t<li><a href=\"";
#line 27 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_large.cpsp" #line 27 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\header_large.cpsp"
responseStream << ( getBaseUrl() ); responseStream << ( getBaseUrl() );
responseStream << "/hedera_account\"><span class=\"link-title\">Hedera Accounts</span></a></li>\n"; responseStream << "/hedera_account\"><span class=\"link-title\">Hedera Accounts</span></a></li>\n";
responseStream << "\t\t\t\t\t<li><a href=\""; responseStream << "\t\t\t\t\t<li><a href=\"";
#line 28 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_large.cpsp" #line 28 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\header_large.cpsp"
responseStream << ( getBaseUrl() ); responseStream << ( getBaseUrl() );
responseStream << "/topic\"><span class=\"link-title\">Hedera Topics</span></a></li>\n"; responseStream << "/topic\"><span class=\"link-title\">Hedera Topics</span></a></li>\n";
responseStream << "\t\t\t\t</ul>\n"; responseStream << "\t\t\t\t</ul>\n";
@ -183,131 +183,131 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
responseStream << "\t\t<div class=\"content\">"; responseStream << "\t\t<div class=\"content\">";
// end include header_large.cpsp // end include header_large.cpsp
responseStream << "\n"; responseStream << "\n";
#line 103 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 103 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( getErrorsHtml() ); responseStream << ( getErrorsHtml() );
responseStream << "\n"; responseStream << "\n";
responseStream << "<div class=\"center-form-container\">\n"; responseStream << "<div class=\"center-form-container\">\n";
responseStream << "\t<!-- Tab links -->\n"; responseStream << "\t<!-- Tab links -->\n";
responseStream << "\t<div class=\"tab\">\n"; responseStream << "\t<div class=\"tab\">\n";
responseStream << "\t <button class=\"tablinks "; responseStream << "\t <button class=\"tablinks ";
#line 107 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 107 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(PAGE_RUN_4_SET_TEST == page) { responseStream << " active "; if(PAGE_RUN_4_SET_TEST == page) { responseStream << " active ";
#line 107 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 107 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\" onclick=\"openTab(event, 'test-4')\">Test 6-Set (3 AddMember, Creation, 2 Transfer)</button>\n"; } responseStream << "\" onclick=\"openTab(event, 'test-4')\">Test 6-Set (3 AddMember, Creation, 2 Transfer)</button>\n";
responseStream << "\t <button class=\"tablinks "; responseStream << "\t <button class=\"tablinks ";
#line 108 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 108 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(PAGE_GET_TRANSACTION_RPC_CALL == page) { responseStream << " active "; if(PAGE_GET_TRANSACTION_RPC_CALL == page) { responseStream << " active ";
#line 108 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 108 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\" onclick=\"openTab(event, 'gn-jsonrpc')\" title=\"call via json-rpc to gradido node with getTransactions\">getTransactions</button>\n"; } responseStream << "\" onclick=\"openTab(event, 'gn-jsonrpc')\" title=\"call via json-rpc to gradido node with getTransactions\">getTransactions</button>\n";
responseStream << "\t</div>\n"; responseStream << "\t</div>\n";
responseStream << "\t<div id=\"test-4\" class=\"tabcontent\" "; responseStream << "\t<div id=\"test-4\" class=\"tabcontent\" ";
#line 110 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 110 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(PAGE_RUN_4_SET_TEST == page) { responseStream << " style=\"display:block\" "; if(PAGE_RUN_4_SET_TEST == page) { responseStream << " style=\"display:block\" ";
#line 110 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 110 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << ">\n"; } responseStream << ">\n";
responseStream << "\t\t<div class=\"center-form-title\">\n"; responseStream << "\t\t<div class=\"center-form-title\">\n";
responseStream << "\t\t\t<h3>Test 6-Set (3 AddMember, Creation, 2 Transfer)</</h3>\n"; responseStream << "\t\t\t<h3>Test 6-Set (3 AddMember, Creation, 2 Transfer)</</h3>\n";
responseStream << "\t\t</div>\n"; responseStream << "\t\t</div>\n";
responseStream << "\t\t<div class=\"center-form-form\">\n"; responseStream << "\t\t<div class=\"center-form-form\">\n";
responseStream << "\t\t\t<form method=\"POST\" action=\""; responseStream << "\t\t\t<form method=\"POST\" action=\"";
#line 115 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 115 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( getBaseUrl() ); responseStream << ( getBaseUrl() );
responseStream << "/adminNodeServerTest\">\n"; responseStream << "/adminNodeServerTest\">\n";
responseStream << "\t\t\t\t<p>1. Create three new accounts and show user public keys for comparisation</p>\n"; responseStream << "\t\t\t\t<p>1. Create three new accounts and show user public keys for comparisation</p>\n";
responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" "; responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" ";
#line 117 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 117 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(steps[0]) { responseStream << " checked=\"checked\" "; if(steps[0]) { responseStream << " checked=\"checked\" ";
#line 117 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 117 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << " name=\"step-2\" value=\"1\"/> 2. Send a add-member transaction to hedera topic with one signature (first user)</p>\n"; } responseStream << " name=\"step-2\" value=\"1\"/> 2. Send a add-member transaction to hedera topic with one signature (first user)</p>\n";
responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" "; responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" ";
#line 118 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 118 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(steps[1]) { responseStream << " checked=\"checked\" "; if(steps[1]) { responseStream << " checked=\"checked\" ";
#line 118 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 118 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << " name=\"step-3\" value=\"1\"/> 3. Send a add-member transaction to hedera topic with two signatures (first user and second user)</p>\n"; } responseStream << " name=\"step-3\" value=\"1\"/> 3. Send a add-member transaction to hedera topic with two signatures (first user and second user)</p>\n";
responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" "; responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" ";
#line 119 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 119 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(steps[2]) { responseStream << " checked=\"checked\" "; if(steps[2]) { responseStream << " checked=\"checked\" ";
#line 119 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 119 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << " name=\"step-4\" value=\"1\"/> 4. Send a creation transaction to second user, signed by first user</p>\n"; } responseStream << " name=\"step-4\" value=\"1\"/> 4. Send a creation transaction to second user, signed by first user</p>\n";
responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" "; responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" ";
#line 120 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 120 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(steps[3]) { responseStream << " checked=\"checked\" "; if(steps[3]) { responseStream << " checked=\"checked\" ";
#line 120 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 120 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << " name=\"step-5\" value=\"1\"/> 5. Send a transfer transaction from second user to first user signed by second user</p>\n"; } responseStream << " name=\"step-5\" value=\"1\"/> 5. Send a transfer transaction from second user to first user signed by second user</p>\n";
responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" "; responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" ";
#line 121 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 121 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(steps[4]) { responseStream << " checked=\"checked\" "; if(steps[4]) { responseStream << " checked=\"checked\" ";
#line 121 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 121 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << " name=\"step-6\" value=\"1\"/> 6. Send a add-member transaction to hedera topic 2 with one signature (third user)</p>\n"; } responseStream << " name=\"step-6\" value=\"1\"/> 6. Send a add-member transaction to hedera topic 2 with one signature (third user)</p>\n";
responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" "; responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" ";
#line 122 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 122 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(steps[5]) { responseStream << " checked=\"checked\" "; if(steps[5]) { responseStream << " checked=\"checked\" ";
#line 122 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 122 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << " name=\"step-7\" value=\"1\"/> 7. Send a cross group transfer from second user to third user signed by second user</p>\n"; } responseStream << " name=\"step-7\" value=\"1\"/> 7. Send a cross group transfer from second user to third user signed by second user</p>\n";
responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" "; responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" ";
#line 123 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 123 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(steps[6]) { responseStream << " checked=\"checked\" "; if(steps[6]) { responseStream << " checked=\"checked\" ";
#line 123 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 123 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << " name=\"step-8\" value=\"1\"/> 8. Wait x seconds to give hedera time to process transactions</p>\n"; } responseStream << " name=\"step-8\" value=\"1\"/> 8. Wait x seconds to give hedera time to process transactions</p>\n";
responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" "; responseStream << "\t\t\t\t<p><input class=\"form-checkbox\" type=\"checkbox\" ";
#line 124 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 124 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(steps[7]) { responseStream << " checked=\"checked\" "; if(steps[7]) { responseStream << " checked=\"checked\" ";
#line 124 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 124 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << " name=\"step-9\" value=\"1\"/> 9. Ask choosen node for transaction and print result</p>\n"; } responseStream << " name=\"step-9\" value=\"1\"/> 9. Ask choosen node for transaction and print result</p>\n";
responseStream << "\t\t\t\t<fieldset>\n"; responseStream << "\t\t\t\t<fieldset>\n";
responseStream << "\t\t\t\t\t<legend>Group 1 </legend>\n"; responseStream << "\t\t\t\t\t<legend>Group 1 </legend>\n";
responseStream << "\t\t\t\t\t<label class=\"form-label\" for=\"test-node-servers\">Node Server for tests</label>\n"; responseStream << "\t\t\t\t\t<label class=\"form-label\" for=\"test-node-servers\">Node Server for tests</label>\n";
responseStream << "\t\t\t\t\t"; responseStream << "\t\t\t\t\t";
#line 128 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 128 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(node_servers.size() == 0) { responseStream << "\n"; if(node_servers.size() == 0) { responseStream << "\n";
responseStream << "\t\t\t\t\t\t<a href=\""; responseStream << "\t\t\t\t\t\t<a href=\"";
#line 129 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 129 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( getBaseUrl() ); responseStream << ( getBaseUrl() );
responseStream << "/nodes\"><span class=\"link-title\">Edit Node-Servers</span></a>\n"; responseStream << "/nodes\"><span class=\"link-title\">Edit Node-Servers</span></a>\n";
responseStream << "\t\t\t\t\t"; responseStream << "\t\t\t\t\t";
#line 130 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 130 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t\t\t<select name=\"test-node-servers\" id=\"test-node-servers\">\n"; responseStream << "\t\t\t\t\t<select name=\"test-node-servers\" id=\"test-node-servers\">\n";
responseStream << "\t\t\t\t\t\t"; responseStream << "\t\t\t\t\t\t";
#line 132 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 132 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
for(auto it = node_servers.begin(); it != node_servers.end(); it++) { for(auto it = node_servers.begin(); it != node_servers.end(); it++) {
auto model = (*it)->getModel(); auto model = (*it)->getModel();
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t\t\t\t\t\t<option title=\""; responseStream << "\t\t\t\t\t\t\t<option title=\"";
#line 135 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 135 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->toString() ); responseStream << ( model->toString() );
responseStream << "\" value=\""; responseStream << "\" value=\"";
#line 135 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 135 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->getID() ); responseStream << ( model->getID() );
responseStream << "\" "; responseStream << "\" ";
#line 135 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 135 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(!node_server.isNull() && node_server->getModel()->getID() == model->getID()) { responseStream << "selected=\"selected\""; if(!node_server.isNull() && node_server->getModel()->getID() == model->getID()) { responseStream << "selected=\"selected\"";
#line 135 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 135 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << ">"; } responseStream << ">";
#line 135 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 135 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->getUrlWithPort() ); responseStream << ( model->getUrlWithPort() );
responseStream << ", group: "; responseStream << ", group: ";
#line 135 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 135 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->getGroupId() ); responseStream << ( model->getGroupId() );
responseStream << "</option>\n"; responseStream << "</option>\n";
responseStream << "\t\t\t\t\t\t"; responseStream << "\t\t\t\t\t\t";
#line 136 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 136 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t\t\t</select>\n"; responseStream << "\t\t\t\t\t</select>\n";
responseStream << "\t\t\t\t\t<label class=\"form-label\" for=\"test-hedera-topic\">Hedera Topic for tests</label>\n"; responseStream << "\t\t\t\t\t<label class=\"form-label\" for=\"test-hedera-topic\">Hedera Topic for tests</label>\n";
responseStream << "\t\t\t\t\t"; responseStream << "\t\t\t\t\t";
#line 139 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 139 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(hedera_topics.size() == 0) { responseStream << "\n"; if(hedera_topics.size() == 0) { responseStream << "\n";
responseStream << "\t\t\t\t\t\t<a href=\""; responseStream << "\t\t\t\t\t\t<a href=\"";
#line 140 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 140 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( getBaseUrl() ); responseStream << ( getBaseUrl() );
responseStream << "/topic\"><span class=\"link-title\">Edit Hedera-Topics</span></a>\n"; responseStream << "/topic\"><span class=\"link-title\">Edit Hedera-Topics</span></a>\n";
responseStream << "\t\t\t\t\t"; responseStream << "\t\t\t\t\t";
#line 141 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 141 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t\t\t<select name=\"test-hedera-topic\" id=\"test-hedera-topic\">\n"; responseStream << "\t\t\t\t\t<select name=\"test-hedera-topic\" id=\"test-hedera-topic\">\n";
responseStream << "\t\t\t\t\t\t"; responseStream << "\t\t\t\t\t\t";
#line 143 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 143 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
for(auto it = hedera_topics.begin(); it != hedera_topics.end(); it++) { for(auto it = hedera_topics.begin(); it != hedera_topics.end(); it++) {
auto model = (*it)->getModel(); auto model = (*it)->getModel();
auto hedera_account = (*it)->getAutoRenewAccount(); auto hedera_account = (*it)->getAutoRenewAccount();
@ -316,24 +316,24 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
} }
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t\t\t\t\t\t<option title=\""; responseStream << "\t\t\t\t\t\t\t<option title=\"";
#line 150 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 150 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->toString() ); responseStream << ( model->toString() );
responseStream << "\" value=\""; responseStream << "\" value=\"";
#line 150 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 150 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->getID() ); responseStream << ( model->getID() );
responseStream << "\" "; responseStream << "\" ";
#line 150 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 150 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(!hedera_topic.isNull() && hedera_topic->getModel()->getID() == model->getID()) { responseStream << "selected=\"selected\""; if(!hedera_topic.isNull() && hedera_topic->getModel()->getID() == model->getID()) { responseStream << "selected=\"selected\"";
#line 150 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 150 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << ">"; } responseStream << ">";
#line 150 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 150 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->getName() ); responseStream << ( model->getName() );
responseStream << ", group: "; responseStream << ", group: ";
#line 150 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 150 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->getGroupId() ); responseStream << ( model->getGroupId() );
responseStream << "</option>\n"; responseStream << "</option>\n";
responseStream << "\t\t\t\t\t\t"; responseStream << "\t\t\t\t\t\t";
#line 151 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 151 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t\t\t</select>\n"; responseStream << "\t\t\t\t\t</select>\n";
responseStream << "\t\t\t\t</fieldset>\n"; responseStream << "\t\t\t\t</fieldset>\n";
@ -341,56 +341,56 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
responseStream << "\t\t\t\t\t<legend>Group 2 </legend>\n"; responseStream << "\t\t\t\t\t<legend>Group 2 </legend>\n";
responseStream << "\t\t\t\t\t<label class=\"form-label\" for=\"test-node-servers2\">Node Server for tests</label>\n"; responseStream << "\t\t\t\t\t<label class=\"form-label\" for=\"test-node-servers2\">Node Server for tests</label>\n";
responseStream << "\t\t\t\t\t"; responseStream << "\t\t\t\t\t";
#line 157 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 157 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(node_servers.size() == 0) { responseStream << "\n"; if(node_servers.size() == 0) { responseStream << "\n";
responseStream << "\t\t\t\t\t\t<a href=\""; responseStream << "\t\t\t\t\t\t<a href=\"";
#line 158 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 158 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( getBaseUrl() ); responseStream << ( getBaseUrl() );
responseStream << "/nodes\"><span class=\"link-title\">Edit Node-Servers</span></a>\n"; responseStream << "/nodes\"><span class=\"link-title\">Edit Node-Servers</span></a>\n";
responseStream << "\t\t\t\t\t"; responseStream << "\t\t\t\t\t";
#line 159 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 159 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t\t\t<select name=\"test-node-servers2\" id=\"test-node-servers2\">\n"; responseStream << "\t\t\t\t\t<select name=\"test-node-servers2\" id=\"test-node-servers2\">\n";
responseStream << "\t\t\t\t\t\t"; responseStream << "\t\t\t\t\t\t";
#line 161 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 161 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
for(auto it = node_servers.begin(); it != node_servers.end(); it++) { for(auto it = node_servers.begin(); it != node_servers.end(); it++) {
auto model = (*it)->getModel(); auto model = (*it)->getModel();
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t\t\t\t\t\t<option title=\""; responseStream << "\t\t\t\t\t\t\t<option title=\"";
#line 164 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 164 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->toString() ); responseStream << ( model->toString() );
responseStream << "\" value=\""; responseStream << "\" value=\"";
#line 164 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 164 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->getID() ); responseStream << ( model->getID() );
responseStream << "\" "; responseStream << "\" ";
#line 164 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 164 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(!node_server2.isNull() && node_server2->getModel()->getID() == model->getID()) { responseStream << "selected=\"selected\""; if(!node_server2.isNull() && node_server2->getModel()->getID() == model->getID()) { responseStream << "selected=\"selected\"";
#line 164 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 164 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << ">"; } responseStream << ">";
#line 164 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 164 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->getUrlWithPort() ); responseStream << ( model->getUrlWithPort() );
responseStream << ", group: "; responseStream << ", group: ";
#line 164 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 164 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->getGroupId() ); responseStream << ( model->getGroupId() );
responseStream << "</option>\n"; responseStream << "</option>\n";
responseStream << "\t\t\t\t\t\t"; responseStream << "\t\t\t\t\t\t";
#line 165 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 165 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t\t\t</select>\n"; responseStream << "\t\t\t\t\t</select>\n";
responseStream << "\t\t\t\t\t<label class=\"form-label\" for=\"test-hedera-topic2\">Hedera Topic for tests</label>\n"; responseStream << "\t\t\t\t\t<label class=\"form-label\" for=\"test-hedera-topic2\">Hedera Topic for tests</label>\n";
responseStream << "\t\t\t\t\t"; responseStream << "\t\t\t\t\t";
#line 168 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 168 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(hedera_topics.size() == 0) { responseStream << "\n"; if(hedera_topics.size() == 0) { responseStream << "\n";
responseStream << "\t\t\t\t\t\t<a href=\""; responseStream << "\t\t\t\t\t\t<a href=\"";
#line 169 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 169 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( getBaseUrl() ); responseStream << ( getBaseUrl() );
responseStream << "/topic\"><span class=\"link-title\">Edit Hedera-Topics</span></a>\n"; responseStream << "/topic\"><span class=\"link-title\">Edit Hedera-Topics</span></a>\n";
responseStream << "\t\t\t\t\t"; responseStream << "\t\t\t\t\t";
#line 170 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 170 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t\t\t<select name=\"test-hedera-topic2\" id=\"test-hedera-topic2\">\n"; responseStream << "\t\t\t\t\t<select name=\"test-hedera-topic2\" id=\"test-hedera-topic2\">\n";
responseStream << "\t\t\t\t\t\t"; responseStream << "\t\t\t\t\t\t";
#line 172 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 172 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
for(auto it = hedera_topics.begin(); it != hedera_topics.end(); it++) { for(auto it = hedera_topics.begin(); it != hedera_topics.end(); it++) {
auto model = (*it)->getModel(); auto model = (*it)->getModel();
auto hedera_account = (*it)->getAutoRenewAccount(); auto hedera_account = (*it)->getAutoRenewAccount();
@ -399,36 +399,36 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
} }
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t\t\t\t\t\t<option title=\""; responseStream << "\t\t\t\t\t\t\t<option title=\"";
#line 179 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 179 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->toString() ); responseStream << ( model->toString() );
responseStream << "\" value=\""; responseStream << "\" value=\"";
#line 179 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 179 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->getID() ); responseStream << ( model->getID() );
responseStream << "\" "; responseStream << "\" ";
#line 179 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 179 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(!hedera_topic2.isNull() && hedera_topic2->getModel()->getID() == model->getID()) { responseStream << "selected=\"selected\""; if(!hedera_topic2.isNull() && hedera_topic2->getModel()->getID() == model->getID()) { responseStream << "selected=\"selected\"";
#line 179 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 179 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << ">"; } responseStream << ">";
#line 179 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 179 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->getName() ); responseStream << ( model->getName() );
responseStream << ", group: "; responseStream << ", group: ";
#line 179 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 179 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->getGroupId() ); responseStream << ( model->getGroupId() );
responseStream << "</option>\n"; responseStream << "</option>\n";
responseStream << "\t\t\t\t\t\t"; responseStream << "\t\t\t\t\t\t";
#line 180 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 180 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t\t\t</select>\n"; responseStream << "\t\t\t\t\t</select>\n";
responseStream << "\t\t\t\t</fieldset>\n"; responseStream << "\t\t\t\t</fieldset>\n";
responseStream << "\t\t\t\t\n"; responseStream << "\t\t\t\t\n";
responseStream << "\t\t\t\t<label class=\"form-label\" for=\"test-timeout\">Timeout waiting for hedera in seconds</label>\n"; responseStream << "\t\t\t\t<label class=\"form-label\" for=\"test-timeout\">Timeout waiting for hedera in seconds</label>\n";
responseStream << "\t\t\t\t<input name=\"test-timeout\" id=\"test-timeout\" type=\"number\" value=\""; responseStream << "\t\t\t\t<input name=\"test-timeout\" id=\"test-timeout\" type=\"number\" value=\"";
#line 185 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 185 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( hedera_timeout ); responseStream << ( hedera_timeout );
responseStream << "\"> seconds \n"; responseStream << "\"> seconds \n";
responseStream << "\t\t\t\t<label class=\"form-label\" for=\"test-part-timeout\">Timeout between transactions to prevent out-of-order</label>\n"; responseStream << "\t\t\t\t<label class=\"form-label\" for=\"test-part-timeout\">Timeout between transactions to prevent out-of-order</label>\n";
responseStream << "\t\t\t\t<input name=\"test-part-timeout\" id=\"test-part-timeout\" type=\"number\" value=\""; responseStream << "\t\t\t\t<input name=\"test-part-timeout\" id=\"test-part-timeout\" type=\"number\" value=\"";
#line 187 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 187 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( sleep_ms_between_transactions ); responseStream << ( sleep_ms_between_transactions );
responseStream << "\"> ms\n"; responseStream << "\"> ms\n";
responseStream << "\t\t\t\t<input class=\"center-form-submit form-button\" type=\"submit\" name=\"submit\" value=\"Run 6-Test\">\n"; responseStream << "\t\t\t\t<input class=\"center-form-submit form-button\" type=\"submit\" name=\"submit\" value=\"Run 6-Test\">\n";
@ -436,54 +436,54 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
responseStream << "\t\t</div>\n"; responseStream << "\t\t</div>\n";
responseStream << "\t</div>\n"; responseStream << "\t</div>\n";
responseStream << "\t<div id=\"gn-jsonrpc\" class=\"tabcontent\" "; responseStream << "\t<div id=\"gn-jsonrpc\" class=\"tabcontent\" ";
#line 192 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 192 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(PAGE_GET_TRANSACTION_RPC_CALL == page) { responseStream << " style=\"display:block\" "; if(PAGE_GET_TRANSACTION_RPC_CALL == page) { responseStream << " style=\"display:block\" ";
#line 192 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 192 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << ">\n"; } responseStream << ">\n";
responseStream << "\t\t<div class=\"center-form-title\">\n"; responseStream << "\t\t<div class=\"center-form-title\">\n";
responseStream << "\t\t\t<h3>Test 4-Set (2 AddMember, Creation, Transfer)</</h3>\n"; responseStream << "\t\t\t<h3>Test 4-Set (2 AddMember, Creation, Transfer)</</h3>\n";
responseStream << "\t\t</div>\n"; responseStream << "\t\t</div>\n";
responseStream << "\t\t<div class=\"center-form-form\">\n"; responseStream << "\t\t<div class=\"center-form-form\">\n";
responseStream << "\t\t\t<form method=\"POST\" action=\""; responseStream << "\t\t\t<form method=\"POST\" action=\"";
#line 197 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 197 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( getBaseUrl() ); responseStream << ( getBaseUrl() );
responseStream << "/adminNodeServerTest\">\n"; responseStream << "/adminNodeServerTest\">\n";
responseStream << "\t\t\t\t<label class=\"form-label\" for=\"test-node-servers\">Node Server to call</label>\n"; responseStream << "\t\t\t\t<label class=\"form-label\" for=\"test-node-servers\">Node Server to call</label>\n";
responseStream << "\t\t\t\t"; responseStream << "\t\t\t\t";
#line 199 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 199 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(node_servers.size() == 0) { responseStream << "\n"; if(node_servers.size() == 0) { responseStream << "\n";
responseStream << "\t\t\t\t\t<a href=\""; responseStream << "\t\t\t\t\t<a href=\"";
#line 200 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 200 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( getBaseUrl() ); responseStream << ( getBaseUrl() );
responseStream << "/nodes\"><span class=\"link-title\">Edit Node-Servers</span></a>\n"; responseStream << "/nodes\"><span class=\"link-title\">Edit Node-Servers</span></a>\n";
responseStream << "\t\t\t\t"; responseStream << "\t\t\t\t";
#line 201 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 201 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t\t<select name=\"test-node-servers\" id=\"test-node-servers\">\n"; responseStream << "\t\t\t\t<select name=\"test-node-servers\" id=\"test-node-servers\">\n";
responseStream << "\t\t\t\t\t"; responseStream << "\t\t\t\t\t";
#line 203 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 203 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
for(auto it = node_servers.begin(); it != node_servers.end(); it++) { for(auto it = node_servers.begin(); it != node_servers.end(); it++) {
auto model = (*it)->getModel(); auto model = (*it)->getModel();
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t\t\t\t\t<option title=\""; responseStream << "\t\t\t\t\t\t<option title=\"";
#line 206 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 206 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->toString() ); responseStream << ( model->toString() );
responseStream << "\" value=\""; responseStream << "\" value=\"";
#line 206 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 206 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->getID() ); responseStream << ( model->getID() );
responseStream << "\" "; responseStream << "\" ";
#line 206 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 206 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(!node_server.isNull() && node_server->getModel()->getID() == model->getID()) { responseStream << "selected=\"selected\""; if(!node_server.isNull() && node_server->getModel()->getID() == model->getID()) { responseStream << "selected=\"selected\"";
#line 206 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 206 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << ">"; } responseStream << ">";
#line 206 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 206 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->getUrlWithPort() ); responseStream << ( model->getUrlWithPort() );
responseStream << ", group: "; responseStream << ", group: ";
#line 206 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 206 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( model->getGroupId() ); responseStream << ( model->getGroupId() );
responseStream << "</option>\n"; responseStream << "</option>\n";
responseStream << "\t\t\t\t\t"; responseStream << "\t\t\t\t\t";
#line 207 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 207 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t\t</select>\n"; responseStream << "\t\t\t\t</select>\n";
responseStream << "\t\t\t\t<input class=\"center-form-submit form-button\" type=\"submit\" name=\"submit\" value=\"json-rpc getTransactions\">\n"; responseStream << "\t\t\t\t<input class=\"center-form-submit form-button\" type=\"submit\" name=\"submit\" value=\"json-rpc getTransactions\">\n";
@ -491,13 +491,13 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
responseStream << "\t\t</div>\n"; responseStream << "\t\t</div>\n";
responseStream << "\t</div>\n"; responseStream << "\t</div>\n";
responseStream << "\t"; responseStream << "\t";
#line 213 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 213 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(PAGE_RUN_4_SET_TEST == page && !hedera_topic.isNull() && !node_server.isNull()) { responseStream << "\n"; if(PAGE_RUN_4_SET_TEST == page && !hedera_topic.isNull() && !node_server.isNull()) { responseStream << "\n";
responseStream << "\t<ul>\n"; responseStream << "\t<ul>\n";
responseStream << "\t\t<li>\n"; responseStream << "\t\t<li>\n";
responseStream << "\t\t\t<p>1. Create three new accounts and show user public keys for comparisation: </p>\n"; responseStream << "\t\t\t<p>1. Create three new accounts and show user public keys for comparisation: </p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 217 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 217 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
Profiler time2; Profiler time2;
auto group_id = hedera_topic->getModel()->getGroupId(); auto group_id = hedera_topic->getModel()->getGroupId();
@ -528,42 +528,42 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
user_3->login(password3); user_3->login(password3);
responseStream << "\t\t\t\n"; responseStream << "\t\t\t\n";
responseStream << "\t\t\t<fieldset><legend>"; responseStream << "\t\t\t<fieldset><legend>";
#line 246 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 246 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( user_group->getModel()->getName() ); responseStream << ( user_group->getModel()->getName() );
responseStream << "</legend>\n"; responseStream << "</legend>\n";
responseStream << "\t\t\t\t<p>User 1: "; responseStream << "\t\t\t\t<p>User 1: ";
#line 247 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 247 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( user_1->getPublicHex() ); responseStream << ( user_1->getPublicHex() );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t\t\t<p>User 2: "; responseStream << "\t\t\t\t<p>User 2: ";
#line 248 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 248 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( user_2->getPublicHex() ); responseStream << ( user_2->getPublicHex() );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t\t</fieldset>\n"; responseStream << "\t\t\t</fieldset>\n";
responseStream << "\t\t\t<fieldset><legend>"; responseStream << "\t\t\t<fieldset><legend>";
#line 250 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 250 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( user_group2->getModel()->getName() ); responseStream << ( user_group2->getModel()->getName() );
responseStream << "</legend>\n"; responseStream << "</legend>\n";
responseStream << "\t\t\t\t<p>User 3: "; responseStream << "\t\t\t\t<p>User 3: ";
#line 251 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 251 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( user_3->getPublicHex() ); responseStream << ( user_3->getPublicHex() );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t\t</fieldset>\n"; responseStream << "\t\t\t</fieldset>\n";
responseStream << "\t\t\t<p>Time: "; responseStream << "\t\t\t<p>Time: ";
#line 253 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 253 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( time2.string() ); responseStream << ( time2.string() );
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t</li>\n"; responseStream << "\t\t</li>\n";
responseStream << "\t\t<li>\n"; responseStream << "\t\t<li>\n";
responseStream << "\t\t\t<p>2. Send a add-member transaction to hedera topic with one signature (first user)</p>\n"; responseStream << "\t\t\t<p>2. Send a add-member transaction to hedera topic with one signature (first user)</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 257 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 257 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
time2.reset(); time2.reset();
if(!steps[0]) { responseStream << "\n"; if(!steps[0]) { responseStream << "\n";
responseStream << "\t\t\t\t<p>skipped</p>\n"; responseStream << "\t\t\t\t<p>skipped</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 261 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 261 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} else { } else {
auto transaction1 = model::gradido::Transaction::createGroupMemberUpdate(user_1, user_group); auto transaction1 = model::gradido::Transaction::createGroupMemberUpdate(user_1, user_group);
transaction1->getTransactionBody()->getGroupMemberUpdate()->setMinSignatureCount(1); transaction1->getTransactionBody()->getGroupMemberUpdate()->setMinSignatureCount(1);
@ -571,27 +571,27 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
auto transaction1_json = transaction1->getTransactionAsJson(true); auto transaction1_json = transaction1->getTransactionAsJson(true);
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t\t<p>"; responseStream << "\t\t\t<p>";
#line 267 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 267 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( DataTypeConverter::replaceNewLineWithBr(transaction1_json) ); responseStream << ( DataTypeConverter::replaceNewLineWithBr(transaction1_json) );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 268 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 268 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t<p>Time: "; responseStream << "\t\t\t<p>Time: ";
#line 269 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 269 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( time2.string() ); responseStream << ( time2.string() );
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t</li>\n"; responseStream << "\t\t</li>\n";
responseStream << "\t\t<li>\n"; responseStream << "\t\t<li>\n";
responseStream << "\t\t\t<p>3. Send a add-member transaction to hedera topic with two signatures (first user and second user)</p>\n"; responseStream << "\t\t\t<p>3. Send a add-member transaction to hedera topic with two signatures (first user and second user)</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 273 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 273 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
time2.reset(); time2.reset();
if(!steps[1]) { responseStream << "\n"; if(!steps[1]) { responseStream << "\n";
responseStream << "\t\t\t\t<p>skipped</p>\n"; responseStream << "\t\t\t\t<p>skipped</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 277 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 277 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} else { } else {
auto transaction2 = model::gradido::Transaction::createGroupMemberUpdate(user_2, user_group); auto transaction2 = model::gradido::Transaction::createGroupMemberUpdate(user_2, user_group);
transaction2->getTransactionBody()->getGroupMemberUpdate()->setMinSignatureCount(2); transaction2->getTransactionBody()->getGroupMemberUpdate()->setMinSignatureCount(2);
@ -602,86 +602,86 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
auto transaction2_json = transaction2->getTransactionAsJson(true); auto transaction2_json = transaction2->getTransactionAsJson(true);
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t\t<p>"; responseStream << "\t\t\t<p>";
#line 286 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 286 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( DataTypeConverter::replaceNewLineWithBr(transaction2_json) ); responseStream << ( DataTypeConverter::replaceNewLineWithBr(transaction2_json) );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 287 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 287 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t<p>Time: "; responseStream << "\t\t\t<p>Time: ";
#line 288 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 288 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( time2.string() ); responseStream << ( time2.string() );
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t</li>\n"; responseStream << "\t\t</li>\n";
responseStream << "\t\t<li>\n"; responseStream << "\t\t<li>\n";
responseStream << "\t\t\t<p>4. Send a creation transaction to second user, signed by first user</p>\n"; responseStream << "\t\t\t<p>4. Send a creation transaction to second user, signed by first user</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 292 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 292 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
time2.reset(); time2.reset();
if(!steps[2]) { responseStream << "\n"; if(!steps[2]) { responseStream << "\n";
responseStream << "\t\t\t\t<p>skipped</p>\n"; responseStream << "\t\t\t\t<p>skipped</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 296 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 296 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} else { } else {
auto transaction3 = model::gradido::Transaction::createCreation(user_2, 10000000, Poco::DateTime(), "Test Creation"); auto transaction3 = model::gradido::Transaction::createCreation(user_2, 10000000, Poco::DateTime(), "Test Creation", model::gradido::BLOCKCHAIN_HEDERA);
// wait before sending fourth transaction, gn seems to crash by more than 3 transaction at nearly the same time // wait before sending fourth transaction, gn seems to crash by more than 3 transaction at nearly the same time
Poco::Thread::sleep(sleep_ms_between_transactions); Poco::Thread::sleep(sleep_ms_between_transactions);
transaction3->sign(user_1); transaction3->sign(user_1);
auto transaction3_json = transaction3->getTransactionAsJson(true); auto transaction3_json = transaction3->getTransactionAsJson(true);
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t\t<p>"; responseStream << "\t\t\t<p>";
#line 303 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 303 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( DataTypeConverter::replaceNewLineWithBr(transaction3_json) ); responseStream << ( DataTypeConverter::replaceNewLineWithBr(transaction3_json) );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 304 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 304 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t<p>Time: "; responseStream << "\t\t\t<p>Time: ";
#line 305 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 305 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( time2.string() ); responseStream << ( time2.string() );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t</li>\n"; responseStream << "\t\t</li>\n";
responseStream << "\t\t<li>\n"; responseStream << "\t\t<li>\n";
responseStream << "\t\t\t<p>5. Send a transfer transaction from second user to first user signed by second user</p>\n"; responseStream << "\t\t\t<p>5. Send a transfer transaction from second user to first user signed by second user</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 309 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 309 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
time2.reset(); time2.reset();
if(!steps[3]) { responseStream << "\n"; if(!steps[3]) { responseStream << "\n";
responseStream << "\t\t\t\t<p>skipped</p>\n"; responseStream << "\t\t\t\t<p>skipped</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 313 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 313 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} else { } else {
auto user_1_pubkey = user_1->getModel()->getPublicKeyCopy(); auto user_1_pubkey = user_1->getModel()->getPublicKeyCopy();
auto transaction4 = model::gradido::Transaction::createTransfer(user_2, user_1_pubkey, user_group, 5000000, "Test Transfer"); auto transaction4 = model::gradido::Transaction::createTransfer(user_2, user_1_pubkey, user_group, 5000000, "Test Transfer", model::gradido::BLOCKCHAIN_HEDERA);
// wait before sending fourth transaction, gn seems to crash by more than 3 transaction at nearly the same time // wait before sending fourth transaction, gn seems to crash by more than 3 transaction at nearly the same time
Poco::Thread::sleep(sleep_ms_between_transactions); Poco::Thread::sleep(sleep_ms_between_transactions);
transaction4[0]->sign(user_2); transaction4[0]->sign(user_2);
auto transaction4_json = transaction4[0]->getTransactionAsJson(true); auto transaction4_json = transaction4[0]->getTransactionAsJson(true);
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t\t<p>"; responseStream << "\t\t\t<p>";
#line 321 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 321 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( DataTypeConverter::replaceNewLineWithBr(transaction4_json) ); responseStream << ( DataTypeConverter::replaceNewLineWithBr(transaction4_json) );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 322 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 322 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t<p>Time: "; responseStream << "\t\t\t<p>Time: ";
#line 323 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 323 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( time2.string() ); responseStream << ( time2.string() );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t</li>\n"; responseStream << "\t\t</li>\n";
responseStream << "\t\t<li>\n"; responseStream << "\t\t<li>\n";
responseStream << "\t\t\t<p>6. Send a add-member transaction to hedera topic 2 with one signature (third user)</p>\n"; responseStream << "\t\t\t<p>6. Send a add-member transaction to hedera topic 2 with one signature (third user)</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 327 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 327 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
time2.reset(); time2.reset();
if(!steps[4]) { responseStream << "\n"; if(!steps[4]) { responseStream << "\n";
responseStream << "\t\t\t\t<p>skipped</p>\n"; responseStream << "\t\t\t\t<p>skipped</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 331 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 331 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} else { } else {
auto transaction5 = model::gradido::Transaction::createGroupMemberUpdate(user_3, user_group2); auto transaction5 = model::gradido::Transaction::createGroupMemberUpdate(user_3, user_group2);
transaction5->getTransactionBody()->getGroupMemberUpdate()->setMinSignatureCount(1); transaction5->getTransactionBody()->getGroupMemberUpdate()->setMinSignatureCount(1);
@ -690,30 +690,30 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
auto transaction5_json = transaction5->getTransactionAsJson(true); auto transaction5_json = transaction5->getTransactionAsJson(true);
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t\t<p>"; responseStream << "\t\t\t<p>";
#line 338 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 338 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( DataTypeConverter::replaceNewLineWithBr(transaction5_json) ); responseStream << ( DataTypeConverter::replaceNewLineWithBr(transaction5_json) );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 339 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 339 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t<p>Time: "; responseStream << "\t\t\t<p>Time: ";
#line 340 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 340 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( time2.string() ); responseStream << ( time2.string() );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t</li>\n"; responseStream << "\t\t</li>\n";
responseStream << "\t\t<li>\n"; responseStream << "\t\t<li>\n";
responseStream << "\t\t\t<p>7. Send a cross group transfer from second user to third user signed by second user</p>\n"; responseStream << "\t\t\t<p>7. Send a cross group transfer from second user to third user signed by second user</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 344 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 344 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
time2.reset(); time2.reset();
if(!steps[5]) { responseStream << "\n"; if(!steps[5]) { responseStream << "\n";
responseStream << "\t\t\t\t<p>skipped</p>\n"; responseStream << "\t\t\t\t<p>skipped</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 348 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 348 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} else { } else {
auto user_3_pubkey = user_3->getModel()->getPublicKeyCopy(); auto user_3_pubkey = user_3->getModel()->getPublicKeyCopy();
auto transaction6 = model::gradido::Transaction::createTransfer(user_2, user_3_pubkey, user_group2, 4000000, "Test Group Transfer", false); auto transaction6 = model::gradido::Transaction::createTransfer(user_2, user_3_pubkey, user_group2, 4000000, "Test Group Transfer", model::gradido::BLOCKCHAIN_HEDERA, false);
if(!transaction6.size()) { if(!transaction6.size()) {
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t\t\t<div class=\"alert alert-error\" role=\"alert\">\n"; responseStream << "\t\t\t\t<div class=\"alert alert-error\" role=\"alert\">\n";
@ -721,7 +721,7 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
responseStream << "\t\t\t\t\t<span>Error creating Transaction</span>\n"; responseStream << "\t\t\t\t\t<span>Error creating Transaction</span>\n";
responseStream << "\t\t\t\t</div>\n"; responseStream << "\t\t\t\t</div>\n";
responseStream << "\t\t\t\t"; responseStream << "\t\t\t\t";
#line 357 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 357 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} else { } else {
Poco::Thread::sleep(sleep_ms_between_transactions); Poco::Thread::sleep(sleep_ms_between_transactions);
@ -730,42 +730,42 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
auto paired_transaction = transaction6[0]->getPairedTransaction(); auto paired_transaction = transaction6[0]->getPairedTransaction();
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t\t\t\t<p>"; responseStream << "\t\t\t\t\t<p>";
#line 364 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 364 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( DataTypeConverter::replaceNewLineWithBr(transaction6_json) ); responseStream << ( DataTypeConverter::replaceNewLineWithBr(transaction6_json) );
responseStream << "</p>\t\t\n"; responseStream << "</p>\t\t\n";
responseStream << "\t\t\t\t\t"; responseStream << "\t\t\t\t\t";
#line 365 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 365 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(!paired_transaction.isNull()) { if(!paired_transaction.isNull()) {
auto transaction6_2_json = paired_transaction->getTransactionAsJson(true); auto transaction6_2_json = paired_transaction->getTransactionAsJson(true);
responseStream << "<p>"; responseStream << "<p>";
#line 367 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 367 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( DataTypeConverter::replaceNewLineWithBr(transaction6_2_json) ); responseStream << ( DataTypeConverter::replaceNewLineWithBr(transaction6_2_json) );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t\t\t\t"; responseStream << "\t\t\t\t\t";
#line 368 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 368 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t\t"; responseStream << "\t\t\t\t";
#line 369 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 369 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 370 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 370 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << " \n"; } responseStream << " \n";
responseStream << "\t\t\t<p>Time: "; responseStream << "\t\t\t<p>Time: ";
#line 371 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 371 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( time2.string() ); responseStream << ( time2.string() );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t</li>\n"; responseStream << "\t\t</li>\n";
responseStream << "\t\t<li>\n"; responseStream << "\t\t<li>\n";
responseStream << "\t\t\t<p>8. Wait "; responseStream << "\t\t\t<p>8. Wait ";
#line 374 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 374 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( hedera_timeout ); responseStream << ( hedera_timeout );
responseStream << " seconds to give hedera time to process transactions</p>\n"; responseStream << " seconds to give hedera time to process transactions</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 375 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 375 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
if(!steps[6]) { responseStream << "\n"; if(!steps[6]) { responseStream << "\n";
responseStream << "\t\t\t\t<p>skipped</p>\n"; responseStream << "\t\t\t\t<p>skipped</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 377 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 377 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} else { } else {
Poco::Thread::sleep(hedera_timeout * 1000); Poco::Thread::sleep(hedera_timeout * 1000);
} responseStream << "\n"; } responseStream << "\n";
@ -773,12 +773,12 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
responseStream << "\t\t<li>\n"; responseStream << "\t\t<li>\n";
responseStream << "\t\t\t<p>9. Ask choosen node for transaction and print result</p>\n"; responseStream << "\t\t\t<p>9. Ask choosen node for transaction and print result</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 383 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 383 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
time2.reset(); time2.reset();
if(!steps[7] || node_server.isNull()) { if(!steps[7] || node_server.isNull()) {
responseStream << "<p>skipped</p>\n"; responseStream << "<p>skipped</p>\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 386 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 386 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} else { } else {
auto node_server_model = node_server->getModel(); auto node_server_model = node_server->getModel();
JsonRPCRequest jsonrpc(node_server_model->getUrl(), node_server_model->getPort()); JsonRPCRequest jsonrpc(node_server_model->getUrl(), node_server_model->getPort());
@ -791,20 +791,20 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
Poco::JSON::Stringifier::stringify(gn_answear, ss, 4, -1, Poco::JSON_PRESERVE_KEY_ORDER); Poco::JSON::Stringifier::stringify(gn_answear, ss, 4, -1, Poco::JSON_PRESERVE_KEY_ORDER);
std::string answear_string = ss.str(); responseStream << "\n"; std::string answear_string = ss.str(); responseStream << "\n";
responseStream << "\t\t\t\t\t"; responseStream << "\t\t\t\t\t";
#line 397 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 397 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( DataTypeConverter::replaceNewLineWithBr(answear_string) ); responseStream << ( DataTypeConverter::replaceNewLineWithBr(answear_string) );
#line 397 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 397 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} }
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t\t<p>Time: "; responseStream << "\t\t\t<p>Time: ";
#line 400 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 400 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( time2.string() ); responseStream << ( time2.string() );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t</li>\n"; responseStream << "\t\t</li>\n";
responseStream << "\t</ul>\n"; responseStream << "\t</ul>\n";
responseStream << "\t"; responseStream << "\t";
#line 403 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 403 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} else if(PAGE_GET_TRANSACTION_RPC_CALL == page && !node_server.isNull()) { } else if(PAGE_GET_TRANSACTION_RPC_CALL == page && !node_server.isNull()) {
Profiler time3; Profiler time3;
auto node_server_model = node_server->getModel(); auto node_server_model = node_server->getModel();
@ -819,23 +819,23 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
Poco::JSON::Stringifier::stringify(gn_answear, ss, 4, -1, Poco::JSON_PRESERVE_KEY_ORDER); Poco::JSON::Stringifier::stringify(gn_answear, ss, 4, -1, Poco::JSON_PRESERVE_KEY_ORDER);
std::string answear_string = ss.str(); responseStream << "\n"; std::string answear_string = ss.str(); responseStream << "\n";
responseStream << "\t\t\t"; responseStream << "\t\t\t";
#line 416 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 416 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( DataTypeConverter::replaceNewLineWithBr(answear_string) ); responseStream << ( DataTypeConverter::replaceNewLineWithBr(answear_string) );
#line 416 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 416 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} }
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t<p>Time: "; responseStream << "\t\t<p>Time: ";
#line 419 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 419 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( time3.string() ); responseStream << ( time3.string() );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t"; responseStream << "\t";
#line 420 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 420 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\n"; responseStream << "\t\n";
responseStream << "</div>\n"; responseStream << "</div>\n";
responseStream << "<script type=\"text/javascript\" src=\""; responseStream << "<script type=\"text/javascript\" src=\"";
#line 423 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\adminNodeServerTest.cpsp" #line 423 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\adminNodeServerTest.cpsp"
responseStream << ( ServerConfig::g_php_serverPath ); responseStream << ( ServerConfig::g_php_serverPath );
responseStream << "/js/tabs.js\"></script>\n"; responseStream << "/js/tabs.js\"></script>\n";
// begin include footer.cpsp // begin include footer.cpsp
@ -845,14 +845,14 @@ void AdminNodeServerTestPage::handleRequest(Poco::Net::HTTPServerRequest& reques
responseStream << " </div>\n"; responseStream << " </div>\n";
responseStream << " <div class=\"bottomleft\">\n"; responseStream << " <div class=\"bottomleft\">\n";
responseStream << " "; responseStream << " ";
#line 6 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\footer.cpsp" #line 6 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\footer.cpsp"
responseStream << ( mTimeProfiler.string() ); responseStream << ( mTimeProfiler.string() );
responseStream << "\n"; responseStream << "\n";
responseStream << " </div>\n"; responseStream << " </div>\n";
responseStream << " <div class=\"bottomright\">\n"; responseStream << " <div class=\"bottomright\">\n";
responseStream << " <p>Login Server in Entwicklung</p>\n"; responseStream << " <p>Login Server in Entwicklung</p>\n";
responseStream << " <p>Alpha "; responseStream << " <p>Alpha ";
#line 10 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\footer.cpsp" #line 10 "F:\\Gradido\\gradido_stage2\\login_server\\src\\cpsp\\footer.cpsp"
responseStream << ( ServerConfig::g_versionString ); responseStream << ( ServerConfig::g_versionString );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << " </div>\n"; responseStream << " </div>\n";

View File

@ -14,6 +14,7 @@ Poco::JSON::Object* JsonCreateTransaction::handle(Poco::Dynamic::Var params)
int session_id = 0; int session_id = 0;
std::string transaction_type; std::string transaction_type;
std::string blockchain_type;
// if is json object // if is json object
if (params.type() == typeid(Poco::JSON::Object::Ptr)) { if (params.type() == typeid(Poco::JSON::Object::Ptr)) {
@ -26,6 +27,7 @@ Poco::JSON::Object* JsonCreateTransaction::handle(Poco::Dynamic::Var params)
try { try {
paramJsonObject->get("session_id").convert(session_id); paramJsonObject->get("session_id").convert(session_id);
paramJsonObject->get("transaction_type").convert(transaction_type); paramJsonObject->get("transaction_type").convert(transaction_type);
paramJsonObject->get("blockchain_type").convert(blockchain_type);
paramJsonObject->get("memo").convert(mMemo); paramJsonObject->get("memo").convert(mMemo);
} }
catch (Poco::Exception& ex) { catch (Poco::Exception& ex) {
@ -35,6 +37,10 @@ Poco::JSON::Object* JsonCreateTransaction::handle(Poco::Dynamic::Var params)
else { else {
return stateError("parameter format unknown"); return stateError("parameter format unknown");
} }
mBlockchainType = model::gradido::TransactionBody::blockchainTypeFromString(blockchain_type);
if (model::gradido::BLOCKCHAIN_UNKNOWN == mBlockchainType) {
return stateError("unknown blockchain type");
}
// allow session_id from community server (allowed caller) // allow session_id from community server (allowed caller)
// else use cookie (if call cames from vue) // else use cookie (if call cames from vue)
if (!session_id) { if (!session_id) {
@ -52,8 +58,13 @@ Poco::JSON::Object* JsonCreateTransaction::handle(Poco::Dynamic::Var params)
em->sendErrorsAsEmail(); em->sendErrorsAsEmail();
return customStateError("code error", "user is zero"); return customStateError("code error", "user is zero");
} }
getTargetGroup(params); if (mBlockchainType == model::gradido::BLOCKCHAIN_HEDERA) {
getTargetGroup(params);
}
else {
mTargetGroup = controller::Group::load(user->getModel()->getGroupId());
}
if (transaction_type == "transfer") { if (transaction_type == "transfer") {
return transfer(params); return transfer(params);
} }
@ -107,7 +118,7 @@ Poco::JSON::Object* JsonCreateTransaction::transfer(Poco::Dynamic::Var params)
} }
} }
if (!result) { if (!result) {
model::gradido::Transaction::createTransfer(mSession->getNewUser(), target_pubkey, mTargetGroup, amount, mMemo); model::gradido::Transaction::createTransfer(mSession->getNewUser(), target_pubkey, mTargetGroup, amount, mMemo, mBlockchainType);
result = stateSuccess(); result = stateSuccess();
} }
mm->releaseMemory(target_pubkey); mm->releaseMemory(target_pubkey);
@ -173,7 +184,7 @@ Poco::JSON::Object* JsonCreateTransaction::creation(Poco::Dynamic::Var params)
} }
if(!result) { if(!result) {
model::gradido::Transaction::createCreation(mReceiverUser, amount, target_date, mMemo); model::gradido::Transaction::createCreation(mReceiverUser, amount, target_date, mMemo, mBlockchainType);
result = stateSuccess(); result = stateSuccess();
} }
mm->releaseMemory(target_pubkey); mm->releaseMemory(target_pubkey);
@ -183,6 +194,9 @@ Poco::JSON::Object* JsonCreateTransaction::creation(Poco::Dynamic::Var params)
} }
Poco::JSON::Object* JsonCreateTransaction::groupMemberUpdate(Poco::Dynamic::Var params) Poco::JSON::Object* JsonCreateTransaction::groupMemberUpdate(Poco::Dynamic::Var params)
{ {
if (mBlockchainType == model::gradido::BLOCKCHAIN_MYSQL) {
return stateError("groupMemberUpdate not allowed with mysql blockchain");
}
if (mTargetGroup.isNull()) { if (mTargetGroup.isNull()) {
return stateError("target_group not found"); return stateError("target_group not found");
} }

View File

@ -4,6 +4,7 @@
#include "JsonRequestHandler.h" #include "JsonRequestHandler.h"
#include "../SingletonManager/SessionManager.h" #include "../SingletonManager/SessionManager.h"
#include "../controller/Group.h" #include "../controller/Group.h"
#include "../model/gradido/TransactionBody.h"
class JsonCreateTransaction : public JsonRequestHandler class JsonCreateTransaction : public JsonRequestHandler
{ {
@ -22,6 +23,8 @@ protected:
std::string mMemo; std::string mMemo;
Poco::AutoPtr<controller::Group> mTargetGroup; Poco::AutoPtr<controller::Group> mTargetGroup;
Poco::AutoPtr<controller::User> mReceiverUser; Poco::AutoPtr<controller::User> mReceiverUser;
model::gradido::BlockchainType mBlockchainType;
}; };
#endif // __JSON_INTERFACE_JSON_CREATE_TRANSACTION_ #endif // __JSON_INTERFACE_JSON_CREATE_TRANSACTION_

View File

@ -80,7 +80,13 @@ namespace model {
return result; return result;
} }
Poco::AutoPtr<Transaction> Transaction::createCreation(Poco::AutoPtr<controller::User> receiver, Poco::UInt32 amount, Poco::DateTime targetDate, const std::string& memo) Poco::AutoPtr<Transaction> Transaction::createCreation(
Poco::AutoPtr<controller::User> receiver,
Poco::UInt32 amount,
Poco::DateTime targetDate,
const std::string& memo,
BlockchainType blockchainType
)
{ {
auto em = ErrorManager::getInstance(); auto em = ErrorManager::getInstance();
static const char* function_name = "Transaction::create creation"; static const char* function_name = "Transaction::create creation";
@ -98,7 +104,7 @@ namespace model {
em->sendErrorsAsEmail(); em->sendErrorsAsEmail();
return nullptr; return nullptr;
} }
auto body = TransactionBody::create(memo, receiver, amount, targetDate); auto body = TransactionBody::create(memo, receiver, amount, targetDate, blockchainType);
Poco::AutoPtr<Transaction> result = new Transaction(body); Poco::AutoPtr<Transaction> result = new Transaction(body);
auto model = result->getModel(); auto model = result->getModel();
model->setHederaId(topic_id->getModel()->getID()); model->setHederaId(topic_id->getModel()->getID());
@ -107,7 +113,15 @@ namespace model {
return result; return result;
} }
std::vector<Poco::AutoPtr<Transaction>> Transaction::createTransfer(Poco::AutoPtr<controller::User> sender, const MemoryBin* receiverPubkey, Poco::AutoPtr<controller::Group> receiverGroup, Poco::UInt32 amount, const std::string& memo, bool inbound/* = true*/) std::vector<Poco::AutoPtr<Transaction>> Transaction::createTransfer(
Poco::AutoPtr<controller::User> sender,
const MemoryBin* receiverPubkey,
Poco::AutoPtr<controller::Group> receiverGroup,
Poco::UInt32 amount,
const std::string& memo,
BlockchainType blockhainType,
bool inbound/* = true*/
)
{ {
std::vector<Poco::AutoPtr<Transaction>> results; std::vector<Poco::AutoPtr<Transaction>> results;
auto em = ErrorManager::getInstance(); auto em = ErrorManager::getInstance();
@ -123,7 +137,7 @@ namespace model {
// LOCAL Transfer // LOCAL Transfer
if (receiverGroup.isNull() || sender_model->getGroupId() == receiverGroup->getModel()->getID()) if (receiverGroup.isNull() || sender_model->getGroupId() == receiverGroup->getModel()->getID())
{ {
auto body = TransactionBody::create(memo, sender, receiverPubkey, amount); auto body = TransactionBody::create(memo, sender, receiverPubkey, amount, blockhainType);
Poco::AutoPtr<Transaction> transaction = new Transaction(body); Poco::AutoPtr<Transaction> transaction = new Transaction(body);
auto topic_id = controller::HederaId::find(sender_model->getGroupId(), network_type); auto topic_id = controller::HederaId::find(sender_model->getGroupId(), network_type);
if (topic_id.isNull()) { if (topic_id.isNull()) {
@ -172,7 +186,7 @@ namespace model {
return results; return results;
} }
auto body = TransactionBody::create(memo, sender, receiverPubkey, amount, pairedTransactionId, transaction_group); auto body = TransactionBody::create(memo, sender, receiverPubkey, amount, blockhainType, pairedTransactionId, transaction_group);
Poco::AutoPtr<Transaction> transaction = new Transaction(body); Poco::AutoPtr<Transaction> transaction = new Transaction(body);
transaction->getModel()->setHederaId(topic_id->getModel()->getID()); transaction->getModel()->setHederaId(topic_id->getModel()->getID());
auto transfer_transaction = transaction->getTransactionBody()->getTransferTransaction(); auto transfer_transaction = transaction->getTransactionBody()->getTransferTransaction();
@ -216,7 +230,14 @@ namespace model {
return true; return true;
} }
Poco::AutoPtr<Transaction> Transaction::createTransfer(const MemoryBin* senderPubkey, Poco::AutoPtr<controller::User> receiver, std::string senderGroupAlias, Poco::UInt32 amount, const std::string& memo) Poco::AutoPtr<Transaction> Transaction::createTransfer(
const MemoryBin* senderPubkey,
Poco::AutoPtr<controller::User> receiver,
std::string senderGroupAlias,
Poco::UInt32 amount,
const std::string& memo,
BlockchainType blockchainType
)
{ {
Poco::AutoPtr<Transaction> result; Poco::AutoPtr<Transaction> result;
auto em = ErrorManager::getInstance(); auto em = ErrorManager::getInstance();

View File

@ -18,6 +18,9 @@
namespace model { namespace model {
namespace gradido { namespace gradido {
class Transaction : public GradidoTask class Transaction : public GradidoTask
{ {
public: public:
@ -30,10 +33,31 @@ namespace model {
static Poco::AutoPtr<Transaction> createGroupMemberUpdate(Poco::AutoPtr<controller::User> user, Poco::AutoPtr<controller::Group> group); static Poco::AutoPtr<Transaction> createGroupMemberUpdate(Poco::AutoPtr<controller::User> user, Poco::AutoPtr<controller::Group> group);
//! \brief transfer //! \brief transfer
//! \return for cross group transaction return two transactions //! \return for cross group transaction return two transactions
static std::vector<Poco::AutoPtr<Transaction>> createTransfer(Poco::AutoPtr<controller::User> sender, const MemoryBin* receiverPubkey, Poco::AutoPtr<controller::Group> receiverGroup, Poco::UInt32 amount, const std::string& memo, bool inbound = true); static std::vector<Poco::AutoPtr<Transaction>> createTransfer(
Poco::AutoPtr<Transaction> createTransfer(const MemoryBin* senderPubkey, Poco::AutoPtr<controller::User> receiver, std::string senderGroupAlias, Poco::UInt32 amount, const std::string& memo); Poco::AutoPtr<controller::User> sender,
const MemoryBin* receiverPubkey,
Poco::AutoPtr<controller::Group> receiverGroup,
Poco::UInt32 amount,
const std::string& memo,
BlockchainType blockchainType,
bool inbound = true);
Poco::AutoPtr<Transaction> createTransfer(
const MemoryBin* senderPubkey,
Poco::AutoPtr<controller::User> receiver,
std::string senderGroupAlias,
Poco::UInt32 amount,
const std::string& memo,
BlockchainType blockchainType);
//! \brief creation transaction //! \brief creation transaction
static Poco::AutoPtr<Transaction> createCreation(Poco::AutoPtr<controller::User> receiver, Poco::UInt32 amount, Poco::DateTime targetDate, const std::string& memo); static Poco::AutoPtr<Transaction> createCreation(
Poco::AutoPtr<controller::User> receiver,
Poco::UInt32 amount,
Poco::DateTime targetDate,
const std::string& memo,
BlockchainType blockchainType);
static Poco::AutoPtr<Transaction> load(model::table::PendingTask* dbModel); static Poco::AutoPtr<Transaction> load(model::table::PendingTask* dbModel);
bool sign(Poco::AutoPtr<controller::User> user); bool sign(Poco::AutoPtr<controller::User> user);

View File

@ -36,7 +36,14 @@ namespace model {
return obj; return obj;
} }
Poco::AutoPtr<TransactionBody> TransactionBody::create(const std::string& memo, Poco::AutoPtr<controller::User> sender, const MemoryBin* receiverPublicKey, Poco::UInt32 amount, Poco::Timestamp pairedTransactionId, Poco::AutoPtr<controller::Group> group/* = nullptr*/) Poco::AutoPtr<TransactionBody> TransactionBody::create(
const std::string& memo,
Poco::AutoPtr<controller::User> sender,
const MemoryBin* receiverPublicKey,
Poco::UInt32 amount,
BlockchainType blockchainType,
Poco::Timestamp pairedTransactionId,
Poco::AutoPtr<controller::Group> group/* = nullptr*/)
{ {
if (sender.isNull() || !sender->getModel()) { if (sender.isNull() || !sender->getModel()) {
return nullptr; return nullptr;
@ -78,6 +85,7 @@ namespace model {
*receiver = std::string((const char*)receiverPublicKey->data(), receiverPublicKey->size()); *receiver = std::string((const char*)receiverPublicKey->data(), receiverPublicKey->size());
obj->mType = TRANSACTION_TRANSFER; obj->mType = TRANSACTION_TRANSFER;
obj->mBlockchainType = blockchainType;
obj->mTransactionSpecific = new TransactionTransfer(memo, obj->mTransactionBody.transfer()); obj->mTransactionSpecific = new TransactionTransfer(memo, obj->mTransactionBody.transfer());
obj->mTransactionSpecific->prepare(); obj->mTransactionSpecific->prepare();
@ -173,7 +181,13 @@ namespace model {
return obj; return obj;
} }
Poco::AutoPtr<TransactionBody> TransactionBody::create(const std::string& memo, Poco::AutoPtr<controller::User> receiver, Poco::UInt32 amount, Poco::DateTime targetDate) Poco::AutoPtr<TransactionBody> TransactionBody::create(
const std::string& memo,
Poco::AutoPtr<controller::User> receiver,
Poco::UInt32 amount,
Poco::DateTime targetDate,
BlockchainType blockchainType
)
{ {
if (receiver.isNull() || !receiver->getModel()) { if (receiver.isNull() || !receiver->getModel()) {
return nullptr; return nullptr;
@ -294,5 +308,16 @@ namespace model {
{ {
return mTransactionSpecific; return mTransactionSpecific;
} }
BlockchainType TransactionBody::blockchainTypeFromString(const std::string& blockainTypeString)
{
if (blockainTypeString == "db" || blockainTypeString == "mysql" || blockainTypeString == "mariadb") {
return BLOCKCHAIN_MYSQL;
}
else if (blockainTypeString == "hedera") {
return BLOCKCHAIN_HEDERA;
}
return BLOCKCHAIN_UNKNOWN;
}
} }
} }

View File

@ -21,7 +21,14 @@ namespace model {
TRANSACTION_GROUP_MEMBER_UPDATE TRANSACTION_GROUP_MEMBER_UPDATE
}; };
enum BlockchainType
{
BLOCKCHAIN_MYSQL,
BLOCKCHAIN_HEDERA,
BLOCKCHAIN_UNKNOWN
};
class TransactionBody : public Poco::RefCountedObject, UniLib::lib::MultithreadContainer class TransactionBody : public Poco::RefCountedObject, UniLib::lib::MultithreadContainer
{ {
@ -33,11 +40,25 @@ namespace model {
//! \brief GradidoTransfer Transaction //! \brief GradidoTransfer Transaction
//! \param group if group.isNull() it is a local transfer, else cross group transfer, //! \param group if group.isNull() it is a local transfer, else cross group transfer,
//! \param group if group is same as sender group outbound, else inbound //! \param group if group is same as sender group outbound, else inbound
static Poco::AutoPtr<TransactionBody> create(const std::string& memo, Poco::AutoPtr<controller::User> sender, const MemoryBin* receiverPublicKey, Poco::UInt32 amount, Poco::Timestamp pairedTransactionId = Poco::Timestamp(), Poco::AutoPtr<controller::Group> group = nullptr); static Poco::AutoPtr<TransactionBody> create(
const std::string& memo,
Poco::AutoPtr<controller::User> sender,
const MemoryBin* receiverPublicKey,
Poco::UInt32 amount,
BlockchainType blockchainType,
Poco::Timestamp pairedTransactionId = Poco::Timestamp(),
Poco::AutoPtr<controller::Group> group = nullptr
);
static Poco::AutoPtr<TransactionBody> create(const std::string& memo, const MemoryBin* senderPublicKey, Poco::AutoPtr<controller::User> receiver, Poco::UInt32 amount, Poco::Timestamp pairedTransactionId = Poco::Timestamp(), Poco::AutoPtr<controller::Group> group = nullptr); static Poco::AutoPtr<TransactionBody> create(const std::string& memo, const MemoryBin* senderPublicKey, Poco::AutoPtr<controller::User> receiver, Poco::UInt32 amount, Poco::Timestamp pairedTransactionId = Poco::Timestamp(), Poco::AutoPtr<controller::Group> group = nullptr);
static Poco::AutoPtr<TransactionBody> create(const std::string& memo, const MemoryBin* senderPublicKey, const MemoryBin* receiverPublicKey, Poco::UInt32 amount, const std::string groupAlias, TransactionTransferType transferType, Poco::Timestamp pairedTransactionId = Poco::Timestamp()); static Poco::AutoPtr<TransactionBody> create(const std::string& memo, const MemoryBin* senderPublicKey, const MemoryBin* receiverPublicKey, Poco::UInt32 amount, const std::string groupAlias, TransactionTransferType transferType, Poco::Timestamp pairedTransactionId = Poco::Timestamp());
//! \brief GradidoCreation Transaction //! \brief GradidoCreation Transaction
static Poco::AutoPtr<TransactionBody> create(const std::string& memo, Poco::AutoPtr<controller::User> receiver, Poco::UInt32 amount, Poco::DateTime targetDate); static Poco::AutoPtr<TransactionBody> create(
const std::string& memo,
Poco::AutoPtr<controller::User> receiver,
Poco::UInt32 amount,
Poco::DateTime targetDate,
BlockchainType blockchainType
);
static Poco::AutoPtr<TransactionBody> load(const std::string& protoMessageBin); static Poco::AutoPtr<TransactionBody> load(const std::string& protoMessageBin);
@ -59,11 +80,14 @@ namespace model {
GroupMemberUpdate* getGroupMemberUpdate(); GroupMemberUpdate* getGroupMemberUpdate();
TransactionBase* getTransactionBase(); TransactionBase* getTransactionBase();
static BlockchainType blockchainTypeFromString(const std::string& blockainTypeString);
protected: protected:
TransactionBody(); TransactionBody();
proto::gradido::TransactionBody mTransactionBody; proto::gradido::TransactionBody mTransactionBody;
TransactionBase* mTransactionSpecific; TransactionBase* mTransactionSpecific;
TransactionType mType; TransactionType mType;
BlockchainType mBlockchainType;
}; };
} }
} }

View File

@ -294,7 +294,7 @@ enum PageType
if(!steps[2]) { %> if(!steps[2]) { %>
<p>skipped</p> <p>skipped</p>
<% } else { <% } else {
auto transaction3 = model::gradido::Transaction::createCreation(user_2, 10000000, Poco::DateTime(), "Test Creation"); auto transaction3 = model::gradido::Transaction::createCreation(user_2, 10000000, Poco::DateTime(), "Test Creation", model::gradido::BLOCKCHAIN_HEDERA);
// wait before sending fourth transaction, gn seems to crash by more than 3 transaction at nearly the same time // wait before sending fourth transaction, gn seems to crash by more than 3 transaction at nearly the same time
Poco::Thread::sleep(sleep_ms_between_transactions); Poco::Thread::sleep(sleep_ms_between_transactions);
transaction3->sign(user_1); transaction3->sign(user_1);
@ -312,7 +312,7 @@ enum PageType
<p>skipped</p> <p>skipped</p>
<% } else { <% } else {
auto user_1_pubkey = user_1->getModel()->getPublicKeyCopy(); auto user_1_pubkey = user_1->getModel()->getPublicKeyCopy();
auto transaction4 = model::gradido::Transaction::createTransfer(user_2, user_1_pubkey, user_group, 5000000, "Test Transfer"); auto transaction4 = model::gradido::Transaction::createTransfer(user_2, user_1_pubkey, user_group, 5000000, "Test Transfer", model::gradido::BLOCKCHAIN_HEDERA);
// wait before sending fourth transaction, gn seems to crash by more than 3 transaction at nearly the same time // wait before sending fourth transaction, gn seems to crash by more than 3 transaction at nearly the same time
Poco::Thread::sleep(sleep_ms_between_transactions); Poco::Thread::sleep(sleep_ms_between_transactions);
transaction4[0]->sign(user_2); transaction4[0]->sign(user_2);
@ -347,7 +347,7 @@ enum PageType
<p>skipped</p> <p>skipped</p>
<% } else { <% } else {
auto user_3_pubkey = user_3->getModel()->getPublicKeyCopy(); auto user_3_pubkey = user_3->getModel()->getPublicKeyCopy();
auto transaction6 = model::gradido::Transaction::createTransfer(user_2, user_3_pubkey, user_group2, 4000000, "Test Group Transfer", false); auto transaction6 = model::gradido::Transaction::createTransfer(user_2, user_3_pubkey, user_group2, 4000000, "Test Group Transfer", model::gradido::BLOCKCHAIN_HEDERA, false);
if(!transaction6.size()) { if(!transaction6.size()) {
%> %>
<div class="alert alert-error" role="alert"> <div class="alert alert-error" role="alert">