Code Duplication    Length = 12-13 lines in 3 locations

opcua/common/xmlimporter.py 3 locations

@@ 313-325 (lines=13) @@
310
        res[0].StatusCode.check()
311
        return res[0].AddedNodeId
312
313
    def add_datatype(self, obj):
314
        node = self._get_node(obj)
315
        attrs = ua.DataTypeAttributes()
316
        if obj.desc:
317
            attrs.Description = ua.LocalizedText(obj.desc)
318
        attrs.DisplayName = ua.LocalizedText(obj.displayname)
319
        if obj.abstract:
320
            attrs.IsAbstract = obj.abstract
321
        node.NodeAttributes = attrs
322
        res = self.server.iserver.isession.add_nodes([node])
323
        self._add_refs(obj)
324
        res[0].StatusCode.check()
325
        return res[0].AddedNodeId
326
327
    def _add_refs(self, obj):
328
        if not obj.refs:
@@ 159-170 (lines=12) @@
156
        res[0].StatusCode.check()
157
        return res[0].AddedNodeId
158
159
    def add_object_type(self, obj):
160
        node = self._get_node(obj)
161
        attrs = ua.ObjectTypeAttributes()
162
        if obj.desc:
163
            attrs.Description = ua.LocalizedText(obj.desc)
164
        attrs.DisplayName = ua.LocalizedText(obj.displayname)
165
        attrs.IsAbstract = obj.abstract
166
        node.NodeAttributes = attrs
167
        res = self.server.iserver.isession.add_nodes([node])
168
        self._add_refs(obj)
169
        res[0].StatusCode.check()
170
        return res[0].AddedNodeId
171
172
    def add_variable(self, obj):
173
        node = self._get_node(obj)
@@ 146-157 (lines=12) @@
143
            else:
144
                return ua.NodeId(getattr(ua.ObjectIds, nodeid))
145
146
    def add_object(self, obj):
147
        node = self._get_node(obj)
148
        attrs = ua.ObjectAttributes()
149
        if obj.desc:
150
            attrs.Description = ua.LocalizedText(obj.desc)
151
        attrs.DisplayName = ua.LocalizedText(obj.displayname)
152
        attrs.EventNotifier = obj.eventnotifier
153
        node.NodeAttributes = attrs
154
        res = self.server.iserver.isession.add_nodes([node])
155
        self._add_refs(obj)
156
        res[0].StatusCode.check()
157
        return res[0].AddedNodeId
158
159
    def add_object_type(self, obj):
160
        node = self._get_node(obj)