aboutsummaryrefslogtreecommitdiffstats
path: root/src/core/function/gpg/GpgCommandExecutor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/function/gpg/GpgCommandExecutor.cpp')
-rw-r--r--src/core/function/gpg/GpgCommandExecutor.cpp34
1 files changed, 12 insertions, 22 deletions
diff --git a/src/core/function/gpg/GpgCommandExecutor.cpp b/src/core/function/gpg/GpgCommandExecutor.cpp
index fd6d6099..713d9aba 100644
--- a/src/core/function/gpg/GpgCommandExecutor.cpp
+++ b/src/core/function/gpg/GpgCommandExecutor.cpp
@@ -27,7 +27,6 @@
*/
#include "GpgCommandExecutor.h"
-#include <boost/format.hpp>
#include <utility>
#include "core/function/basic/GpgFunctionObject.h"
@@ -45,11 +44,7 @@ auto BuildTaskFromExecCtx(const GpgCommandExecutor::ExecuteContext &context)
const auto &interact_function = context.int_func;
const auto &cmd_executor_callback = context.cb_func;
- const std::string joined_argument = std::accumulate(
- std::begin(arguments), std::end(arguments), std::string(),
- [](const std::string &a, const std::string &b) -> std::string {
- return a + (a.length() > 0 ? " " : "") + b;
- });
+ const QString joined_argument = QStringList::fromVector(arguments).join(" ");
GF_CORE_LOG_DEBUG("building task: called cmd {} arguments size: {}", cmd,
arguments.size());
@@ -59,13 +54,12 @@ auto BuildTaskFromExecCtx(const GpgCommandExecutor::ExecuteContext &context)
GF_CORE_LOG_DEBUG(
"data object args count of cmd executor result callback: {}",
data_object->GetObjectSize());
- if (!data_object
- ->Check<int, std::string, GpgCommandExecutorCallback>()) {
+ if (!data_object->Check<int, QString, GpgCommandExecutorCallback>()) {
throw std::runtime_error("invalid data object size");
}
auto exit_code = ExtractParams<int>(data_object, 0);
- auto process_stdout = ExtractParams<std::string>(data_object, 1);
+ auto process_stdout = ExtractParams<QString>(data_object, 1);
auto callback =
ExtractParams<GpgCommandExecutorCallback>(data_object, 2);
@@ -82,15 +76,15 @@ auto BuildTaskFromExecCtx(const GpgCommandExecutor::ExecuteContext &context)
GF_CORE_LOG_DEBUG("process runner called, data object size: {}",
data_object->GetObjectSize());
- if (!data_object->Check<std::string, std::vector<std::string>,
+ if (!data_object->Check<QString, std::vector<QString>,
GpgCommandExecutorInteractor,
GpgCommandExecutorCallback>()) {
throw std::runtime_error("invalid data object size");
}
// get arguments
- auto cmd = ExtractParams<std::string>(data_object, 0);
- auto arguments = ExtractParams<std::vector<std::string>>(data_object, 1);
+ auto cmd = ExtractParams<QString>(data_object, 0);
+ auto arguments = ExtractParams<std::vector<QString>>(data_object, 1);
auto interact_func =
ExtractParams<GpgCommandExecutorInteractor>(data_object, 2);
auto callback = ExtractParams<GpgCommandExecutorCallback>(data_object, 3);
@@ -103,12 +97,12 @@ auto BuildTaskFromExecCtx(const GpgCommandExecutor::ExecuteContext &context)
// set process channel mode
// this is to make sure we can get all output from stdout and stderr
cmd_process->setProcessChannelMode(QProcess::MergedChannels);
- cmd_process->setProgram(QString::fromStdString(cmd));
+ cmd_process->setProgram(cmd);
// set arguments
QStringList q_arguments;
for (const auto &argument : arguments) {
- q_arguments.append(QString::fromStdString(argument));
+ q_arguments.append(argument);
}
cmd_process->setArguments(q_arguments);
@@ -138,8 +132,7 @@ auto BuildTaskFromExecCtx(const GpgCommandExecutor::ExecuteContext &context)
cmd_process->start();
cmd_process->waitForFinished();
- std::string process_stdout =
- cmd_process->readAllStandardOutput().toStdString();
+ QString process_stdout = cmd_process->readAllStandardOutput();
int exit_code = cmd_process->exitCode();
GF_CORE_LOG_DEBUG(
@@ -160,17 +153,14 @@ auto BuildTaskFromExecCtx(const GpgCommandExecutor::ExecuteContext &context)
};
return new Thread::Task(
- std::move(runner),
- (boost::format("GpgCommamdExecutor(%1%){%2%}") % cmd % joined_argument)
- .str(),
+ std::move(runner), QString("GpgCommamdExecutor(%1){%2}").arg(cmd),
TransferParams(cmd, arguments, interact_function, cmd_executor_callback),
std::move(result_callback));
}
GpgCommandExecutor::ExecuteContext::ExecuteContext(
- std::string cmd, std::vector<std::string> arguments,
- GpgCommandExecutorCallback callback, Module::TaskRunnerPtr task_runner,
- GpgCommandExecutorInteractor int_func)
+ QString cmd, QList<QString> arguments, GpgCommandExecutorCallback callback,
+ Module::TaskRunnerPtr task_runner, GpgCommandExecutorInteractor int_func)
: cmd(std::move(cmd)),
arguments(std::move(arguments)),
cb_func(std::move(callback)),