tahoma2d/toonz/sources/toonzfarm/tfarm/tfarmexecutor.cpp

36 lines
834 B
C++
Raw Normal View History

2016-03-19 06:57:51 +13:00
#include "tfarmexecutor.h"
#include <QStringList>
//------------------------------------------------------------------------------
2016-06-15 18:43:10 +12:00
TFarmExecutor::TFarmExecutor(int port) : TTcpIpServer(port) {}
2016-03-19 06:57:51 +13:00
//------------------------------------------------------------------------------
static int extractArgs(const QString &s, std::vector<QString> &argv) {
2016-06-15 18:43:10 +12:00
argv.clear();
if (s == "") return 0;
2016-03-19 06:57:51 +13:00
2016-06-15 18:43:10 +12:00
QStringList sl = s.split(',');
int i;
for (i = 0; i < sl.size(); i++) argv.push_back(sl.at(i));
2016-03-19 06:57:51 +13:00
2016-06-15 18:43:10 +12:00
return argv.size();
2016-03-19 06:57:51 +13:00
}
//------------------------------------------------------------------------------
2016-06-15 18:43:10 +12:00
void TFarmExecutor::onReceive(int socket, const QString &data) {
QString reply;
2016-03-19 06:57:51 +13:00
2016-06-15 18:43:10 +12:00
try {
std::vector<QString> argv;
extractArgs(data, argv);
reply = execute(argv);
} catch (...) {
}
2016-03-19 06:57:51 +13:00
2016-06-15 18:43:10 +12:00
sendReply(socket, reply);
2016-03-19 06:57:51 +13:00
}