Code Duplication    Length = 12-13 lines in 3 locations

opcua/common/xmlimporter.py 3 locations

@@ 321-333 (lines=13) @@
318
        res[0].StatusCode.check()
319
        return res[0].AddedNodeId
320
321
    def add_datatype(self, obj):
322
        node = self._get_node(obj)
323
        attrs = ua.DataTypeAttributes()
324
        if obj.desc:
325
            attrs.Description = ua.LocalizedText(obj.desc)
326
        attrs.DisplayName = ua.LocalizedText(obj.displayname)
327
        if obj.abstract:
328
            attrs.IsAbstract = obj.abstract
329
        node.NodeAttributes = attrs
330
        res = self.server.iserver.isession.add_nodes([node])
331
        self._add_refs(obj)
332
        res[0].StatusCode.check()
333
        return res[0].AddedNodeId
334
335
    def _add_refs(self, obj):
336
        if not obj.refs:
@@ 150-161 (lines=12) @@
147
        res[0].StatusCode.check()
148
        return res[0].AddedNodeId
149
150
    def add_object_type(self, obj):
151
        node = self._get_node(obj)
152
        attrs = ua.ObjectTypeAttributes()
153
        if obj.desc:
154
            attrs.Description = ua.LocalizedText(obj.desc)
155
        attrs.DisplayName = ua.LocalizedText(obj.displayname)
156
        attrs.IsAbstract = obj.abstract
157
        node.NodeAttributes = attrs
158
        res = self.server.iserver.isession.add_nodes([node])
159
        self._add_refs(obj)
160
        res[0].StatusCode.check()
161
        return res[0].AddedNodeId
162
163
    def add_variable(self, obj):
164
        node = self._get_node(obj)
@@ 137-148 (lines=12) @@
134
            else:
135
                return ua.NodeId(getattr(ua.ObjectIds, nodeid))
136
137
    def add_object(self, obj):
138
        node = self._get_node(obj)
139
        attrs = ua.ObjectAttributes()
140
        if obj.desc:
141
            attrs.Description = ua.LocalizedText(obj.desc)
142
        attrs.DisplayName = ua.LocalizedText(obj.displayname)
143
        attrs.EventNotifier = obj.eventnotifier
144
        node.NodeAttributes = attrs
145
        res = self.server.iserver.isession.add_nodes([node])
146
        self._add_refs(obj)
147
        res[0].StatusCode.check()
148
        return res[0].AddedNodeId
149
150
    def add_object_type(self, obj):
151
        node = self._get_node(obj)