Code Duplication    Length = 19-20 lines in 2 locations

opcua/common/xmlimporter.py 2 locations

@@ 254-273 (lines=20) @@
251
        if obj.desc:
252
            attrs.Description = ua.LocalizedText(obj.desc)
253
        attrs.DisplayName = ua.LocalizedText(obj.displayname)
254
        attrs.DataType = self.to_nodeid(obj.datatype)
255
        if obj.value and len(obj.value) == 1:
256
            attrs.Value = obj.value[0]
257
        if obj.rank:
258
            attrs.ValueRank = obj.rank
259
        if obj.abstract:
260
            attrs.IsAbstract = obj.abstract
261
        if obj.dimensions:
262
            attrs.ArrayDimensions = obj.dimensions
263
        node.NodeAttributes = attrs
264
        res = self.server.iserver.isession.add_nodes([node])
265
        self._add_refs(obj)
266
        res[0].StatusCode.check()
267
        return res[0].AddedNodeId
268
269
    def add_method(self, obj):
270
        node = self._get_node(obj)
271
        attrs = ua.MethodAttributes()
272
        if obj.desc:
273
            attrs.Description = ua.LocalizedText(obj.desc)
274
        attrs.DisplayName = ua.LocalizedText(obj.displayname)
275
        if obj.accesslevel:
276
            attrs.AccessLevel = obj.accesslevel
@@ 275-293 (lines=19) @@
272
        if obj.desc:
273
            attrs.Description = ua.LocalizedText(obj.desc)
274
        attrs.DisplayName = ua.LocalizedText(obj.displayname)
275
        if obj.accesslevel:
276
            attrs.AccessLevel = obj.accesslevel
277
        if obj.useraccesslevel:
278
            attrs.UserAccessLevel = obj.useraccesslevel
279
        if obj.minsample:
280
            attrs.MinimumSamplingInterval = obj.minsample
281
        if obj.dimensions:
282
            attrs.ArrayDimensions = obj.dimensions
283
        node.NodeAttributes = attrs
284
        res = self.server.iserver.isession.add_nodes([node])
285
        self._add_refs(obj)
286
        res[0].StatusCode.check()
287
        return res[0].AddedNodeId
288
289
    def add_reference_type(self, obj):
290
        node = self._get_node(obj)
291
        attrs = ua.ReferenceTypeAttributes()
292
        if obj.desc:
293
            attrs.Description = ua.LocalizedText(obj.desc)
294
        attrs.DisplayName = ua.LocalizedText(obj.displayname)
295
        if obj. inversename:
296
            attrs.InverseName = ua.LocalizedText(obj.inversename)