MCPcopy Create free account
hub / github.com/FreeOpcUa/python-opcua / set_build_info

Method set_build_info

opcua/server/server.py:306–339  ·  view source on GitHub ↗

Update the servers build information. This needs to be added to the ServerStatus, BuildInfo and all underlying nodes

(self, product_uri, manufacturer_name, product_name, software_version, build_number, build_date)

Source from the content-addressed store, hash-verified

304 self.name = name
305
306 def set_build_info(self, product_uri, manufacturer_name, product_name, software_version, build_number, build_date):
307 """
308 Update the servers build information.
309 This needs to be added to the ServerStatus, BuildInfo and all underlying nodes
310 """
311 status_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus))
312 build_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_BuildInfo))
313 status = status_node.get_value()
314 if status is None:
315 status = ua.ServerStatusDataType()
316
317 status.BuildInfo.ProductUri = product_uri
318 status.BuildInfo.ManufacturerName = manufacturer_name
319 status.BuildInfo.ProductName = product_name
320 status.BuildInfo.SoftwareVersion = software_version
321 status.BuildInfo.BuildNumber = build_number
322 status.BuildInfo.BuildDate = build_date
323 status_node.set_value(status)
324 build_node.set_value(status.BuildInfo)
325
326 # we also need to update all individual nodes :/
327 product_uri_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_BuildInfo_ProductUri))
328 product_name_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_BuildInfo_ProductName))
329 product_manufacturer_name_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_BuildInfo_ManufacturerName))
330 product_software_version_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_BuildInfo_SoftwareVersion))
331 product_build_number_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_BuildInfo_BuildNumber))
332 product_build_date_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_BuildInfo_BuildDate))
333
334 product_uri_node.set_value(status.BuildInfo.ProductUri)
335 product_name_node.set_value(status.BuildInfo.ProductName)
336 product_manufacturer_name_node.set_value(status.BuildInfo.ManufacturerName)
337 product_software_version_node.set_value(status.BuildInfo.SoftwareVersion)
338 product_build_number_node.set_value(status.BuildInfo.BuildNumber)
339 product_build_date_node.set_value(status.BuildInfo.BuildDate)
340
341 def start(self):
342 """

Callers 1

__init__Method · 0.95

Calls 3

get_nodeMethod · 0.95
get_valueMethod · 0.80
set_valueMethod · 0.80

Tested by

no test coverage detected