Code Duplication    Length = 20-21 lines in 4 locations

opcua/common/xmlexporter.py 4 locations

@@ 183-203 (lines=21) @@
180
        # add any references that get used to aliases dict; this gets handled later
181
        self.aliases[datatype] = datatype_nodeid
182
183
    def add_etree_variable_type(self, obj):
184
        """
185
        Add a UA variable type element to the XML etree
186
        """
187
        browsename = obj.get_browse_name().to_string()
188
        nodeid = obj.nodeid.to_string()
189
        valuerank = None  # TODO when to export this?
190
191
        displayname = obj.get_display_name().Text.decode(encoding='UTF8')
192
193
        refs = obj.get_references()
194
195
        obj_el = Et.SubElement(self.etree.getroot(),
196
                               'UAObject',
197
                               BrowseName=browsename,
198
                               NodeId=nodeid)
199
200
        disp_el = Et.SubElement(obj_el, 'DisplayName', )
201
        disp_el.text = displayname
202
203
        self._add_ref_els(obj_el, refs)
204
205
    def add_etree_method(self, obj):
206
        raise NotImplemented
@@ 211-230 (lines=20) @@
208
    def add_etree_reference(self, obj):
209
        raise NotImplemented
210
211
    def add_etree_datatype(self, obj):
212
        """
213
        Add a UA data type element to the XML etree
214
        """
215
        browsename = obj.get_browse_name().to_string()
216
        nodeid = obj.nodeid.to_string()
217
218
        displayname = obj.get_display_name().Text.decode(encoding='UTF8')
219
220
        refs = obj.get_references()
221
222
        obj_el = Et.SubElement(self.etree.getroot(),
223
                               'UAObject',
224
                               BrowseName=browsename,
225
                               NodeId=nodeid)
226
227
        disp_el = Et.SubElement(obj_el, 'DisplayName', )
228
        disp_el.text = displayname
229
230
        self._add_ref_els(obj_el, refs)
231
232
    def _add_namespace_uri_els(self, uris):
233
        nuris_el = Et.Element('NamespaceUris')
@@ 121-140 (lines=20) @@
118
119
        self._add_ref_els(obj_el, refs)
120
121
    def add_etree_object_type(self, obj):
122
        """
123
        Add a UA object type element to the XML etree
124
        """
125
        browsename = obj.get_browse_name().to_string()
126
        nodeid = obj.nodeid.to_string()
127
128
        displayname = obj.get_display_name().Text.decode(encoding='UTF8')
129
130
        refs = obj.get_references()
131
132
        obj_el = Et.SubElement(self.etree.getroot(),
133
                               'UAObject',
134
                               BrowseName=browsename,
135
                               NodeId=nodeid)
136
137
        disp_el = Et.SubElement(obj_el, 'DisplayName', )
138
        disp_el.text = displayname
139
140
        self._add_ref_els(obj_el, refs)
141
142
    def add_etree_variable(self, obj):
143
        """
@@ 100-119 (lines=20) @@
97
        else:
98
            self.logger.info("Exporting node class not implemented: %s ", node_class)
99
100
    def add_etree_object(self, obj):
101
        """
102
        Add a UA object element to the XML etree
103
        """
104
        browsename = obj.get_browse_name().to_string()
105
        nodeid = obj.nodeid.to_string()
106
107
        displayname = obj.get_display_name().Text.decode(encoding='UTF8')
108
109
        refs = obj.get_references()
110
111
        obj_el = Et.SubElement(self.etree.getroot(),
112
                               'UAObject',
113
                               BrowseName=browsename,
114
                               NodeId=nodeid)
115
116
        disp_el = Et.SubElement(obj_el, 'DisplayName', )
117
        disp_el.text = displayname
118
119
        self._add_ref_els(obj_el, refs)
120
121
    def add_etree_object_type(self, obj):
122
        """