Commit 52223d88 authored by olivier R-D's avatar olivier R-D

split _add_node method

parent 15238d7e
......@@ -222,6 +222,19 @@ class NodeManagementService(object):
self._aspace[nodedata.nodeid] = nodedata
if not item.ParentNodeId.is_null():
self._add_ref_from_parent(nodedata, item)
self._add_ref_to_parent(nodedata, item, user)
# add type definition
if item.TypeDefinition != ua.NodeId():
self._add_type_definition(nodedata, item, user)
result.StatusCode = ua.StatusCode()
result.AddedNodeId = nodedata.nodeid
return result
def _add_ref_from_parent(self, nodedata, item):
desc = ua.ReferenceDescription()
desc.ReferenceTypeId = item.ReferenceTypeId
desc.NodeId = nodedata.nodeid
......@@ -232,6 +245,7 @@ class NodeManagementService(object):
desc.IsForward = True
self._aspace[item.ParentNodeId].references.append(desc)
def _add_ref_to_parent(self, nodedata, item, user):
addref = ua.AddReferencesItem()
addref.ReferenceTypeId = item.ReferenceTypeId
addref.SourceNodeId = nodedata.nodeid
......@@ -240,8 +254,7 @@ class NodeManagementService(object):
addref.IsForward = False
self._add_reference(addref, user)
# add type definition
if item.TypeDefinition != ua.NodeId():
def _add_type_definition(self, nodedata, item, user):
addref = ua.AddReferencesItem()
addref.SourceNodeId = nodedata.nodeid
addref.IsForward = True
......@@ -250,11 +263,6 @@ class NodeManagementService(object):
addref.TargetNodeClass = ua.NodeClass.DataType
self._add_reference(addref, user)
result.StatusCode = ua.StatusCode()
result.AddedNodeId = nodedata.nodeid
return result
def delete_nodes(self, deletenodeitems, user=User.Admin):
results = []
for item in deletenodeitems:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment