Code Duplication    Length = 7-10 lines in 2 locations

opcua/common/subscription.py 1 location

@@ 315-324 (lines=10) @@
312
        results = self.server.delete_monitored_items(params)
313
        results[0].check()
314
        with self._lock:
315
            for k, v in self._monitoreditems_map.items():
316
                if v.server_handle == handle:
317
                    del(self._monitoreditems_map[k])
318
                    return
319
320
321
def get_event_properties_from_type_node(node):
322
    properties = []
323
    curr_node = node
324
325
    while True:
326
        properties.extend(curr_node.get_properties())
327

opcua/server/event.py 1 location

@@ 111-117 (lines=7) @@
108
109
            def __init__(self):
110
                super(CustomEvent, self).__init__(extended=True)
111
                self.EventType = node.nodeid
112
                curr_node = node
113
114
                while curr_node.nodeid.Identifier != parent_identifier:
115
                    for prop in curr_node.get_properties():
116
                        setattr(self, prop.get_browse_name().Name, prop.get_value())
117
                    parents = curr_node.get_referenced_nodes(refs=ua.ObjectIds.HasSubtype, direction=ua.BrowseDirection.Inverse, includesubtypes=False)
118
                    if len(parents) != 1: # Something went wrong
119
                        return None
120
                    curr_node = parents[0]