mirror of https://github.com/nymea/nymea.git
Unfriend the discovery class from the monitor
parent
e4ff2d9422
commit
61bbd3cbdf
|
|
@ -431,7 +431,7 @@ void NetworkDeviceDiscoveryImpl::evaluateMonitor(NetworkDeviceMonitorImpl *monit
|
|||
|
||||
// Try to ping first
|
||||
qCDebug(dcNetworkDeviceDiscovery()) << monitor << "try to ping" << monitor->networkDeviceInfo().address().toString();
|
||||
monitor->m_lastConnectionAttempt = currentDateTime;
|
||||
monitor->setLastConnectionAttempt(currentDateTime);
|
||||
|
||||
PingReply *reply = m_ping->ping(monitor->networkDeviceInfo().address());
|
||||
connect(reply, &PingReply::finished, monitor, [=](){
|
||||
|
|
@ -457,7 +457,9 @@ void NetworkDeviceDiscoveryImpl::processArpTraffic(const QNetworkInterface &inte
|
|||
monitor->setLastSeen(now);
|
||||
monitor->setReachable(true);
|
||||
if (monitor->networkDeviceInfo().address() != address) {
|
||||
monitor->m_networkDeviceInfo.setAddress(address);
|
||||
NetworkDeviceInfo info = monitor->networkDeviceInfo();
|
||||
info.setAddress(address);
|
||||
monitor->setNetworkDeviceInfo(info);
|
||||
qCDebug(dcNetworkDeviceDiscovery()) << "NetworkDeviceMonitor" << monitor << "ip address changed";
|
||||
emit monitor->networkDeviceInfoChanged(monitor->networkDeviceInfo());
|
||||
}
|
||||
|
|
@ -546,7 +548,7 @@ void NetworkDeviceDiscoveryImpl::evaluateMonitors()
|
|||
evaluateMonitor(monitor);
|
||||
|
||||
// Check if there is any monitor which has not be seen since
|
||||
if (monitor->m_lastConnectionAttempt.isValid() && longerAgoThan(monitor->lastSeen(), m_monitorInterval)) {
|
||||
if (monitor->lastConnectionAttempt().isValid() && longerAgoThan(monitor->lastSeen(), m_monitorInterval)) {
|
||||
monitorRequiresRediscovery = true;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -82,7 +82,7 @@ QDateTime NetworkDeviceMonitorImpl::lastSeen() const
|
|||
return m_lastSeen;
|
||||
}
|
||||
|
||||
void NetworkDeviceMonitorImpl::setLastSeen(const QDateTime lastSeen)
|
||||
void NetworkDeviceMonitorImpl::setLastSeen(const QDateTime &lastSeen)
|
||||
{
|
||||
if (m_lastSeen == lastSeen)
|
||||
return;
|
||||
|
|
@ -92,4 +92,14 @@ void NetworkDeviceMonitorImpl::setLastSeen(const QDateTime lastSeen)
|
|||
emit lastSeenChanged(m_lastSeen);
|
||||
}
|
||||
|
||||
QDateTime NetworkDeviceMonitorImpl::lastConnectionAttempt() const
|
||||
{
|
||||
return m_lastConnectionAttempt;
|
||||
}
|
||||
|
||||
void NetworkDeviceMonitorImpl::setLastConnectionAttempt(const QDateTime &lastConnectionAttempt)
|
||||
{
|
||||
m_lastConnectionAttempt = lastConnectionAttempt;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -42,8 +42,6 @@ class NetworkDeviceMonitorImpl : public NetworkDeviceMonitor
|
|||
{
|
||||
Q_OBJECT
|
||||
|
||||
friend class NetworkDeviceDiscoveryImpl;
|
||||
|
||||
public:
|
||||
explicit NetworkDeviceMonitorImpl(const MacAddress &macAddress, QObject *parent = nullptr);
|
||||
~NetworkDeviceMonitorImpl();
|
||||
|
|
@ -57,7 +55,10 @@ public:
|
|||
void setReachable(bool reachable);
|
||||
|
||||
QDateTime lastSeen() const override;
|
||||
void setLastSeen(const QDateTime lastSeen);
|
||||
void setLastSeen(const QDateTime &lastSeen);
|
||||
|
||||
QDateTime lastConnectionAttempt() const;
|
||||
void setLastConnectionAttempt(const QDateTime &lastConnectionAttempt);
|
||||
|
||||
private:
|
||||
NetworkDeviceInfo m_networkDeviceInfo;
|
||||
|
|
|
|||
Loading…
Reference in New Issue