Reformat NetstatAgent

remotes/origin/HEAD
markuspg 6 years ago
parent c3e623f236
commit c2d4f6024c

@ -1,5 +1,5 @@
/*
* Copyright 2014-2016 Markus Prasser
* Copyright 2014-2018 Markus Prasser, Tobias Weiss
*
* This file is part of Labcontrol.
*
@ -19,32 +19,30 @@
#include "netstatagent.h"
lc::NetstatAgent::NetstatAgent( const QString &argNetstatCommand, QObject *argParent ) :
lc::NetstatAgent::NetstatAgent(const QString &argNetstatCommand,
QObject *argParent) :
QObject{argParent},
extractionRegexp{ "\\d+\\.\\d+\\.\\d+\\.\\d+" },
netstatArguments{ QStringList{} << "-anp" << "--tcp" },
netstatCommand{ argNetstatCommand },
netstatQueryProcess{ this },
searchRegexp{ "\\W(ESTABLISHED|VERBUNDEN)( +)(\\d+)(/ztree.exe)\\W", QRegularExpression::CaseInsensitiveOption }
netstatCommand{argNetstatCommand}
{
QProcessEnvironment env = QProcessEnvironment::systemEnvironment();
netstatQueryProcess.setProcessEnvironment( env );
netstatQueryProcess.setProcessEnvironment(QProcessEnvironment::systemEnvironment());
}
void lc::NetstatAgent::QueryClientConnections() {
void lc::NetstatAgent::QueryClientConnections()
{
netstatQueryProcess.start(netstatCommand, netstatArguments);
if (!netstatQueryProcess.waitForFinished(400)) {
emit QueryFinished(nullptr);
} else {
// Get all 'netstat_query_process' standard output and store it temporarily in 'temp_strings'
QByteArray netstatQueryProcessOutputByteArray = netstatQueryProcess.readAllStandardOutput();
QString netstatQueryProcessOutputString( netstatQueryProcessOutputByteArray );
QStringList tempStrings = netstatQueryProcessOutputString.split( '\n', QString::SkipEmptyParts );
const QString netstatQueryProcessOutputString{netstatQueryProcess.readAllStandardOutput()};
const QStringList tempStrings{
netstatQueryProcessOutputString.split('\n', QString::SkipEmptyParts)};
QStringList *netstatQueryProcessOutput = new QStringList;
for ( auto s: tempStrings ) {
const auto netstatQueryProcessOutput = new QStringList;
for (const auto &s : tempStrings) {
if (s.contains(searchRegexp)) {
QRegularExpressionMatch match = extractionRegexp.match( s, s.indexOf( ':', 0, Qt::CaseInsensitive ) );
QRegularExpressionMatch match{extractionRegexp.match(s, s.indexOf(':', 0,
Qt::CaseInsensitive))};
netstatQueryProcessOutput->append(match.captured());
}
}

@ -1,5 +1,5 @@
/*
* Copyright 2014-2016 Markus Prasser
* Copyright 2014-2018 Markus Prasser, Tobias Weiss
*
* This file is part of Labcontrol.
*
@ -31,11 +31,13 @@ namespace lc {
/*!
This class is just used for repetive executions of netstat.
*/
class NetstatAgent : public QObject {
class NetstatAgent : public QObject
{
Q_OBJECT
public:
explicit NetstatAgent( const QString &argNetstatCommand, QObject *argParent = nullptr );
explicit NetstatAgent(const QString &argNetstatCommand,
QObject *argParent = nullptr);
signals:
//! This signal is emitted if the query of the currently active zLeaf connections finished
@ -45,13 +47,17 @@ public slots:
void QueryClientConnections();
private:
const QRegularExpression extractionRegexp;
const QStringList netstatArguments;
const QString &netstatCommand;
const QRegularExpression extractionRegexp
= QRegularExpression{"\\d+\\.\\d+\\.\\d+\\.\\d+"};
const QStringList netstatArguments
= QStringList{"-anp", "--tcp"};
const QString netstatCommand;
QProcess netstatQueryProcess;
const QRegularExpression searchRegexp;
const QRegularExpression searchRegexp
= QRegularExpression{"\\W(ESTABLISHED|VERBUNDEN)( +)(\\d+)(/ztree.exe)\\W",
QRegularExpression::CaseInsensitiveOption};
};
}
} // namespace lc
#endif // NETSTATAGENT_H

Loading…
Cancel
Save