Code Duplication    Length = 11-12 lines in 3 locations

opcua/common/xmlimporter.py 3 locations

@@ 207-218 (lines=12) @@
204
        res = self.server.add_nodes([node])
205
        self._add_refs(obj)
206
207
    def add_datatype(self, obj):
208
        node = self._get_node(obj)
209
        attrs = ua.DataTypeAttributes()
210
        if obj.desc:
211
            attrs.Description = ua.LocalizedText(obj.desc)
212
        attrs.DisplayName = ua.LocalizedText(obj.displayname)
213
        if obj.abstract:
214
            attrs.IsAbstract = obj.abstract
215
        node.NodeAttributes = attrs
216
        res = self.server.add_nodes([node])
217
        self._add_refs(obj)
218
        return res[0].AddedNodeId
219
220
    def _add_refs(self, obj):
221
        if not obj.refs:
@@ 85-95 (lines=11) @@
82
        self._add_refs(obj)
83
        return res[0].AddedNodeId
84
85
    def add_object_type(self, obj):
86
        node = self._get_node(obj)
87
        attrs = ua.ObjectTypeAttributes()
88
        if obj.desc:
89
            attrs.Description = ua.LocalizedText(obj.desc)
90
        attrs.DisplayName = ua.LocalizedText(obj.displayname)
91
        attrs.IsAbstract = obj.abstract
92
        node.NodeAttributes = attrs
93
        res = self.server.add_nodes([node])
94
        self._add_refs(obj)
95
        return res[0].AddedNodeId
96
97
    def add_variable(self, obj):
98
        node = self._get_node(obj)
@@ 73-83 (lines=11) @@
70
                nodeid = "i={}".format(getattr(ua.ObjectIds, nodeid))
71
            return ua.NodeId.from_string(nodeid)
72
73
    def add_object(self, obj):
74
        node = self._get_node(obj)
75
        attrs = ua.ObjectAttributes()
76
        if obj.desc:
77
            attrs.Description = ua.LocalizedText(obj.desc)
78
        attrs.DisplayName = ua.LocalizedText(obj.displayname)
79
        attrs.EventNotifier = obj.eventnotifier
80
        node.NodeAttributes = attrs
81
        res = self.server.add_nodes([node])
82
        self._add_refs(obj)
83
        return res[0].AddedNodeId
84
85
    def add_object_type(self, obj):
86
        node = self._get_node(obj)