Ssh: Drop ProcessMode from c'tors and creator methods

Change-Id: I2db51f26d9a841f60d5ab3722fa82b3a89d57146
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Jarek Kobus
2022-02-18 10:06:56 +01:00
parent a056aa8f95
commit 97264e0591
9 changed files with 17 additions and 24 deletions

View File

@@ -58,7 +58,7 @@ struct Command
struct SftpSession::SftpSessionPrivate struct SftpSession::SftpSessionPrivate
{ {
SshProcess sftpProc = {ProcessMode::Writer}; SshProcess sftpProc;
QStringList connectionArgs; QStringList connectionArgs;
QByteArray output; QByteArray output;
QQueue<Command> pendingCommands; QQueue<Command> pendingCommands;
@@ -111,6 +111,7 @@ static QByteArray prompt() { return "sftp> "; }
SftpSession::SftpSession(const QStringList &connectionArgs) : d(new SftpSessionPrivate) SftpSession::SftpSession(const QStringList &connectionArgs) : d(new SftpSessionPrivate)
{ {
d->sftpProc.setProcessMode(ProcessMode::Writer);
d->connectionArgs = connectionArgs; d->connectionArgs = connectionArgs;
connect(&d->sftpProc, &QtcProcess::started, [this] { connect(&d->sftpProc, &QtcProcess::started, [this] {
qCDebug(sshLog) << "sftp process started"; qCDebug(sshLog) << "sftp process started";

View File

@@ -307,17 +307,16 @@ SshConnection::~SshConnection()
delete d; delete d;
} }
SshRemoteProcessPtr SshConnection::createRemoteProcess(const QString &command, ProcessMode processMode) SshRemoteProcessPtr SshConnection::createRemoteProcess(const QString &command)
{ {
QTC_ASSERT(state() == Connected, return SshRemoteProcessPtr()); QTC_ASSERT(state() == Connected, return SshRemoteProcessPtr());
return SshRemoteProcessPtr(new SshRemoteProcess(command, return SshRemoteProcessPtr(new SshRemoteProcess(command,
d->connectionArgs(SshSettings::sshFilePath()), d->connectionArgs(SshSettings::sshFilePath())));
processMode));
} }
SshRemoteProcessPtr SshConnection::createRemoteShell(ProcessMode processMode) SshRemoteProcessPtr SshConnection::createRemoteShell()
{ {
return createRemoteProcess({}, processMode); return createRemoteProcess({});
} }
SftpTransferPtr SshConnection::createUpload(const FilesToTransfer &files, SftpTransferPtr SshConnection::createUpload(const FilesToTransfer &files,

View File

@@ -29,7 +29,6 @@
#include "ssh_global.h" #include "ssh_global.h"
#include <utils/filepath.h> #include <utils/filepath.h>
#include <utils/processutils.h>
#include <QFlags> #include <QFlags>
#include <QHostAddress> #include <QHostAddress>
@@ -115,10 +114,8 @@ public:
bool sharingEnabled() const; bool sharingEnabled() const;
~SshConnection(); ~SshConnection();
SshRemoteProcessPtr createRemoteProcess(const QString &command, Utils::ProcessMode processMode SshRemoteProcessPtr createRemoteProcess(const QString &command);
= Utils::ProcessMode::Reader); SshRemoteProcessPtr createRemoteShell();
SshRemoteProcessPtr createRemoteShell(Utils::ProcessMode processMode
= Utils::ProcessMode::Reader);
SftpTransferPtr createUpload(const FilesToTransfer &files, SftpTransferPtr createUpload(const FilesToTransfer &files,
FileTransferErrorHandling errorHandlingMode); FileTransferErrorHandling errorHandlingMode);
SftpTransferPtr createDownload(const FilesToTransfer &files, SftpTransferPtr createDownload(const FilesToTransfer &files,

View File

@@ -31,10 +31,8 @@
namespace QSsh { namespace QSsh {
SshProcess::SshProcess(Utils::ProcessMode processMode) SshProcess::SshProcess()
{ {
setProcessMode(processMode);
Utils::Environment env = Utils::Environment::systemEnvironment(); Utils::Environment env = Utils::Environment::systemEnvironment();
if (SshSettings::askpassFilePath().exists()) { if (SshSettings::askpassFilePath().exists()) {
env.set("SSH_ASKPASS", SshSettings::askpassFilePath().toUserOutput()); env.set("SSH_ASKPASS", SshSettings::askpassFilePath().toUserOutput());

View File

@@ -34,7 +34,7 @@ namespace QSsh {
class QSSH_EXPORT SshProcess : public Utils::QtcProcess class QSSH_EXPORT SshProcess : public Utils::QtcProcess
{ {
public: public:
SshProcess(Utils::ProcessMode processMode = Utils::ProcessMode::Reader); SshProcess();
}; };
} // namespace QSsh } // namespace QSsh

View File

@@ -49,9 +49,8 @@ using namespace QSsh::Internal;
namespace QSsh { namespace QSsh {
SshRemoteProcess::SshRemoteProcess(const QString &command, const QStringList &connectionArgs, SshRemoteProcess::SshRemoteProcess(const QString &command, const QStringList &connectionArgs)
Utils::ProcessMode processMode) : SshProcess()
: SshProcess(processMode)
{ {
m_remoteCommand = command; m_remoteCommand = command;
m_connectionArgs = connectionArgs; m_connectionArgs = connectionArgs;

View File

@@ -37,8 +37,7 @@ class QSSH_EXPORT SshRemoteProcess : public SshProcess
Q_OBJECT Q_OBJECT
public: public:
SshRemoteProcess(const QString &command, const QStringList &connectionArgs, SshRemoteProcess(const QString &command, const QStringList &connectionArgs);
Utils::ProcessMode processMode = Utils::ProcessMode::Reader);
void requestX11Forwarding(const QString &displayName); void requestX11Forwarding(const QString &displayName);
void start(); void start();

View File

@@ -209,8 +209,8 @@ public:
// connect to it // connect to it
// wait for connected // wait for connected
m_shell = new SshRemoteProcess("/bin/sh", m_shell = new SshRemoteProcess("/bin/sh",
parameters.connectionOptions(SshSettings::sshFilePath()) << parameters.host(), parameters.connectionOptions(SshSettings::sshFilePath()) << parameters.host());
ProcessMode::Writer); m_shell->setProcessMode(ProcessMode::Writer);
m_shell->start(); m_shell->start();
const bool startOK = m_shell->waitForStarted(); const bool startOK = m_shell->waitForStarted();
if (!startOK) if (!startOK)

View File

@@ -330,8 +330,8 @@ void tst_Ssh::remoteProcessInput()
SshConnection connection(params); SshConnection connection(params);
QVERIFY(waitForConnection(connection)); QVERIFY(waitForConnection(connection));
SshRemoteProcessPtr catProcess = connection.createRemoteProcess("/bin/cat", SshRemoteProcessPtr catProcess = connection.createRemoteProcess("/bin/cat");
Utils::ProcessMode::Writer); catProcess->setProcessMode(Utils::ProcessMode::Writer);
QEventLoop loop; QEventLoop loop;
connect(catProcess.get(), &SshRemoteProcess::started, &loop, &QEventLoop::quit); connect(catProcess.get(), &SshRemoteProcess::started, &loop, &QEventLoop::quit);
connect(catProcess.get(), &SshRemoteProcess::done, &loop, &QEventLoop::quit); connect(catProcess.get(), &SshRemoteProcess::done, &loop, &QEventLoop::quit);