aboutsummaryrefslogtreecommitdiffstats
path: root/src/OpcUaMonitoredNode.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/OpcUaMonitoredNode.cpp')
-rw-r--r--src/OpcUaMonitoredNode.cpp26
1 files changed, 17 insertions, 9 deletions
diff --git a/src/OpcUaMonitoredNode.cpp b/src/OpcUaMonitoredNode.cpp
index beec934..1c125fc 100644
--- a/src/OpcUaMonitoredNode.cpp
+++ b/src/OpcUaMonitoredNode.cpp
@@ -132,7 +132,7 @@ OpcUaMonitoredNode::setupNode ()
return;
auto *client = OpcUaClient::instance ();
- if (!client || !client->connected ())
+ if (!client || !client->connected () || !client->opcuaClient ())
return;
m_node = client->opcuaClient ()->node (m_nodeId);
@@ -152,12 +152,14 @@ OpcUaMonitoredNode::setupNode ()
connect (m_node, &QOpcUaNode::disableMonitoringFinished, this,
&OpcUaMonitoredNode::handleDisableMonitoringFinished);
- m_node->readAttributes (
- QOpcUa::NodeAttribute::DisplayName | QOpcUa::NodeAttribute::Description
- | QOpcUa::NodeAttribute::NodeClass | QOpcUa::NodeAttribute::DataType
- | QOpcUa::NodeAttribute::ValueRank
- | QOpcUa::NodeAttribute::ArrayDimensions
- | QOpcUa::NodeAttribute::AccessLevel);
+ if (!m_node->readAttributes (QOpcUa::NodeAttribute::DisplayName
+ | QOpcUa::NodeAttribute::Description
+ | QOpcUa::NodeAttribute::NodeClass
+ | QOpcUa::NodeAttribute::DataType
+ | QOpcUa::NodeAttribute::ValueRank
+ | QOpcUa::NodeAttribute::ArrayDimensions
+ | QOpcUa::NodeAttribute::AccessLevel))
+ qWarning () << "OpcUaMonitoredNode: readAttributes failed for" << m_nodeId;
if (m_monitored)
startMonitoring ();
@@ -195,7 +197,10 @@ OpcUaMonitoredNode::startMonitoring ()
if (!m_node || !m_monitored)
return;
QOpcUaMonitoringParameters params (m_publishingInterval);
- m_node->enableMonitoring (QOpcUa::NodeAttribute::Value, params);
+ if (!m_node->enableMonitoring (QOpcUa::NodeAttribute::Value, params))
+ qWarning ()
+ << "OpcUaMonitoredNode: enableMonitoring failed to dispatch for"
+ << m_nodeId;
}
void
@@ -203,7 +208,10 @@ OpcUaMonitoredNode::stopMonitoring ()
{
if (!m_node)
return;
- m_node->disableMonitoring (QOpcUa::NodeAttribute::Value);
+ if (!m_node->disableMonitoring (QOpcUa::NodeAttribute::Value))
+ qWarning ()
+ << "OpcUaMonitoredNode: disableMonitoring failed to dispatch for"
+ << m_nodeId;
}
/* ======================================