|
@@ -13,7 +13,7 @@
|
|
|
using boost::asio::buffer;
|
|
|
|
|
|
void MachineIoManager::run() {
|
|
|
- std::cout << "MachineIoManager::run() says hello!" << std::endl;
|
|
|
+ std::cerr << "MachineIoManager::run() says hello!" << std::endl;
|
|
|
|
|
|
boost::asio::streambuf recvbuf;
|
|
|
|
|
@@ -83,8 +83,6 @@ void MachineIoManager::run() {
|
|
|
|
|
|
// dump received data to stdout for gui to handle
|
|
|
std::cout << recv;
|
|
|
- //~ recvjson = boost::asio::buffer_cast<const char *>(recvbuf.data());
|
|
|
- //~ std::cout << recvjson;
|
|
|
|
|
|
break;
|
|
|
}
|
|
@@ -104,7 +102,7 @@ void MachineIoManager::run() {
|
|
|
size = fs.tellg();
|
|
|
fs.seekg(0, fs.beg);
|
|
|
chunks = size / BLOCKSIZE + ((size % BLOCKSIZE)?1:0);
|
|
|
- std::cout << "size is " << size << " chunks are " << chunks << std::endl;
|
|
|
+ std::cerr << "size is " << size << " chunks are " << chunks << std::endl;
|
|
|
|
|
|
if(!size) {
|
|
|
std::cerr << "not sending empty file" << std::endl;
|
|
@@ -117,7 +115,7 @@ void MachineIoManager::run() {
|
|
|
root["file"] = pathtemp.back();
|
|
|
root["size"] = size;
|
|
|
|
|
|
- std::cout << root;
|
|
|
+ std::cerr << root;
|
|
|
|
|
|
if(!sendJson(root) | !receiveJson(recvbuf) | !parseJson(&recv, recvbuf)) {
|
|
|
// error occured, stop working
|
|
@@ -133,7 +131,7 @@ void MachineIoManager::run() {
|
|
|
root["command"] = "put";
|
|
|
root["cancel"] = false;
|
|
|
|
|
|
- std::cout << root;
|
|
|
+ std::cerr << root;
|
|
|
|
|
|
while(chunks) {
|
|
|
haveread = fs.readsome(rbuf, BLOCKSIZE);
|
|
@@ -149,7 +147,6 @@ void MachineIoManager::run() {
|
|
|
break;
|
|
|
}
|
|
|
std::cout << root;
|
|
|
- std::this_thread::sleep_for (std::chrono::seconds(1));
|
|
|
}
|
|
|
if(chunks) std::cerr << "not all data sent, remain chunks " << chunks << std::endl;
|
|
|
}
|
|
@@ -177,6 +174,7 @@ void MachineIoManager::run() {
|
|
|
break;
|
|
|
}
|
|
|
|
|
|
+ // dump received data for GUI
|
|
|
std::cout << recv << std::endl;
|
|
|
|
|
|
if(recv["accept"].asBool()) {
|
|
@@ -185,11 +183,12 @@ void MachineIoManager::run() {
|
|
|
root["cancel"] = false;
|
|
|
// request ok, start receiving
|
|
|
chunks = std::numeric_limits<int>::max();
|
|
|
- std::cout << "survive" << std::endl;
|
|
|
+ std::cerr << "survive" << std::endl;
|
|
|
while(chunks) {
|
|
|
- std::cout << "survive" << std::endl;
|
|
|
+ std::cerr << "survive" << std::endl;
|
|
|
if(!receiveJson(recvbuf) | !parseJson(&recv, recvbuf)) break;
|
|
|
- std::cout << "survive" << std::endl;
|
|
|
+ std::cerr << "survive" << std::endl;
|
|
|
+ // dump received data for GUI
|
|
|
std::cout << recv << std::endl;
|
|
|
wtmp = base64::decodeVector(recv["data"].asString());
|
|
|
fs.write(wtmp.data(), wtmp.size());
|