SSH: Add parent object to SshConnection constructor.

There's no mandatory use of shared pointers anymore, so client code
should be able to make use of QObject-based ownership.

Change-Id: I2344ca66a40c310ef739b32502eb8471da98c03a
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
This commit is contained in:
Christian Kandeler
2012-06-08 08:48:03 +02:00
parent 92c7dce14f
commit c310f1671c
4 changed files with 5 additions and 8 deletions

View File

@@ -107,7 +107,8 @@ bool operator!=(const SshConnectionParameters &p1, const SshConnectionParameters
// TODO: Mechanism for checking the host key. First connection to host: save, later: compare // TODO: Mechanism for checking the host key. First connection to host: save, later: compare
SshConnection::SshConnection(const SshConnectionParameters &serverInfo) SshConnection::SshConnection(const SshConnectionParameters &serverInfo, QObject *parent)
: QObject(parent)
{ {
doStaticInitializationsIfNecessary(); doStaticInitializationsIfNecessary();

View File

@@ -91,7 +91,7 @@ class QSSH_EXPORT SshConnection : public QObject
public: public:
enum State { Unconnected, Connecting, Connected }; enum State { Unconnected, Connecting, Connected };
SshConnection(const SshConnectionParameters &serverInfo); explicit SshConnection(const SshConnectionParameters &serverInfo, QObject *parent = 0);
void connectToHost(); void connectToHost();
void disconnectFromHost(); void disconnectFromHost();

View File

@@ -76,8 +76,6 @@ GenericLinuxDeviceTester::GenericLinuxDeviceTester(QObject *parent)
GenericLinuxDeviceTester::~GenericLinuxDeviceTester() GenericLinuxDeviceTester::~GenericLinuxDeviceTester()
{ {
if (d->connection)
d->connection->deleteLater();
delete d; delete d;
} }
@@ -86,7 +84,7 @@ void GenericLinuxDeviceTester::testDevice(const LinuxDeviceConfiguration::ConstP
QTC_ASSERT(d->state == Inactive, return); QTC_ASSERT(d->state == Inactive, return);
d->deviceConfiguration = deviceConfiguration; d->deviceConfiguration = deviceConfiguration;
d->connection = new SshConnection(deviceConfiguration->sshParameters()); d->connection = new SshConnection(deviceConfiguration->sshParameters(), this);
connect(d->connection, SIGNAL(connected()), SLOT(handleConnected())); connect(d->connection, SIGNAL(connected()), SLOT(handleConnected()));
connect(d->connection, SIGNAL(error(QSsh::SshError)), connect(d->connection, SIGNAL(error(QSsh::SshError)),
SLOT(handleConnectionFailure())); SLOT(handleConnectionFailure()));

View File

@@ -167,8 +167,6 @@ RemoteValgrindProcess::RemoteValgrindProcess(QSsh::SshConnection *connection, QO
RemoteValgrindProcess::~RemoteValgrindProcess() RemoteValgrindProcess::~RemoteValgrindProcess()
{ {
if (m_connection)
m_connection->deleteLater();
} }
bool RemoteValgrindProcess::isRunning() const bool RemoteValgrindProcess::isRunning() const
@@ -186,7 +184,7 @@ void RemoteValgrindProcess::run(const QString &valgrindExecutable, const QString
// connect to host and wait for connection // connect to host and wait for connection
if (!m_connection) if (!m_connection)
m_connection = new QSsh::SshConnection(m_params); m_connection = new QSsh::SshConnection(m_params, this);
if (m_connection->state() != QSsh::SshConnection::Connected) { if (m_connection->state() != QSsh::SshConnection::Connected) {
connect(m_connection, SIGNAL(connected()), this, SLOT(connected())); connect(m_connection, SIGNAL(connected()), this, SLOT(connected()));