Exemplo n.º 1
0
 def _process_received_message(self, msg):
     if msg is None:
         pass
     elif isinstance(msg, ua.Message):
         self._call_callback(msg.request_id(), msg.body())
     elif isinstance(msg, ua.Acknowledge):
         self._call_callback(0, msg)
     elif isinstance(msg, ua.ErrorMessage):
         self.logger.fatal("Received an error: %r", msg)
         self._call_callback(0, ua.UaStatusCodeError(msg.Error.value))
     else:
         raise ua.UaError(f"Unsupported message type: {msg}")
Exemplo n.º 2
0
 async def delete_reference(self, target, reftype, forward=True, bidirectional=True):
     """
     Delete given node's references from address space
     """
     known_refs = await self.get_references(reftype, includesubtypes=False)
     targetid = _to_nodeid(target)
     for r in known_refs:
         if r.NodeId == targetid and r.IsForward == forward:
             rdesc = r
             break
     else:
         raise ua.UaStatusCodeError(ua.StatusCodes.BadNotFound)
     ditem = self._fill_delete_reference_item(rdesc, bidirectional)
     (await self.server.delete_references([ditem]))[0].check()