|
@@ 207-218 (lines=12) @@
|
| 204 |
|
self._add_refs(obj) |
| 205 |
|
return res[0].AddedNodeId |
| 206 |
|
|
| 207 |
|
def add_method(self, obj): |
| 208 |
|
node = self._get_node(obj) |
| 209 |
|
attrs = ua.MethodAttributes() |
| 210 |
|
if obj.desc: |
| 211 |
|
attrs.Description = ua.LocalizedText(obj.desc) |
| 212 |
|
attrs.DisplayName = ua.LocalizedText(obj.displayname) |
| 213 |
|
if obj.accesslevel: |
| 214 |
|
attrs.AccessLevel = obj.accesslevel |
| 215 |
|
if obj.useraccesslevel: |
| 216 |
|
attrs.UserAccessLevel = obj.useraccesslevel |
| 217 |
|
if obj.minsample: |
| 218 |
|
attrs.MinimumSamplingInterval = obj.minsample |
| 219 |
|
if obj.dimensions: |
| 220 |
|
attrs.ArrayDimensions = obj.dimensions |
| 221 |
|
node.NodeAttributes = attrs |
|
@@ 85-95 (lines=11) @@
|
| 82 |
|
def to_nodeid(self, nodeid): |
| 83 |
|
if not nodeid: |
| 84 |
|
return ua.NodeId(ua.ObjectIds.String) |
| 85 |
|
elif "=" in nodeid: |
| 86 |
|
return ua.NodeId.from_string(nodeid) |
| 87 |
|
elif hasattr(ua.ObjectIds, nodeid): |
| 88 |
|
return ua.NodeId(getattr(ua.ObjectIds, nodeid)) |
| 89 |
|
else: |
| 90 |
|
if nodeid in self.parser.aliases: |
| 91 |
|
nodeid = self.parser.aliases[nodeid] |
| 92 |
|
else: |
| 93 |
|
nodeid = "i={}".format(getattr(ua.ObjectIds, nodeid)) |
| 94 |
|
return ua.NodeId.from_string(nodeid) |
| 95 |
|
|
| 96 |
|
def add_object(self, obj): |
| 97 |
|
node = self._get_node(obj) |
| 98 |
|
attrs = ua.ObjectAttributes() |
|
@@ 73-83 (lines=11) @@
|
| 70 |
|
node = ua.AddNodesItem() |
| 71 |
|
node.RequestedNewNodeId = ua.NodeId.from_string(obj.nodeid) |
| 72 |
|
node.BrowseName = ua.QualifiedName.from_string(obj.browsename) |
| 73 |
|
node.NodeClass = getattr(ua.NodeClass, obj.nodetype[2:]) |
| 74 |
|
if obj.parent: |
| 75 |
|
node.ParentNodeId = ua.NodeId.from_string(obj.parent) |
| 76 |
|
if obj.parentlink: |
| 77 |
|
node.ReferenceTypeId = self.to_nodeid(obj.parentlink) |
| 78 |
|
if obj.typedef: |
| 79 |
|
node.TypeDefinition = ua.NodeId.from_string(obj.typedef) |
| 80 |
|
return node |
| 81 |
|
|
| 82 |
|
def to_nodeid(self, nodeid): |
| 83 |
|
if not nodeid: |
| 84 |
|
return ua.NodeId(ua.ObjectIds.String) |
| 85 |
|
elif "=" in nodeid: |
| 86 |
|
return ua.NodeId.from_string(nodeid) |