@@ 426-436 (lines=11) @@ | ||
423 | ns_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_NamespaceArray)) |
|
424 | return ns_node.read_value() |
|
425 | ||
426 | async def register_namespace(self, uri) -> int: |
|
427 | """ |
|
428 | Register a new namespace. Nodes should in custom namespace, not 0. |
|
429 | """ |
|
430 | ns_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_NamespaceArray)) |
|
431 | uries = await ns_node.read_value() |
|
432 | if uri in uries: |
|
433 | return uries.index(uri) |
|
434 | uries.append(uri) |
|
435 | await ns_node.write_value(uries) |
|
436 | return len(uries) - 1 |
|
437 | ||
438 | async def get_namespace_index(self, uri): |
|
439 | """ |
@@ 532-543 (lines=12) @@ | ||
529 | await exp.build_etree(nodes) |
|
530 | await exp.write_xml(path) |
|
531 | ||
532 | async def register_namespace(self, uri): |
|
533 | """ |
|
534 | Register a new namespace. Nodes should in custom namespace, not 0. |
|
535 | This method is mainly implemented for symetry with server |
|
536 | """ |
|
537 | ns_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_NamespaceArray)) |
|
538 | uries = await ns_node.read_value() |
|
539 | if uri in uries: |
|
540 | return uries.index(uri) |
|
541 | uries.append(uri) |
|
542 | await ns_node.write_value(uries) |
|
543 | return len(uries) - 1 |
|
544 | ||
545 | def load_type_definitions(self, nodes=None) -> Coroutine: |
|
546 | """ |