Code Duplication    Length = 87-88 lines in 2 locations

gmp/xml.py 2 locations

@@ 1038-1125 (lines=88) @@
1035
1036
        return etree.tostring(xmlRoot).decode('utf-8')
1037
1038
    def modify_credential_command(self, credential_id, kwargs):
1039
        if not credential_id:
1040
            raise ValueError('modify_credential requires '
1041
                             'a credential_id attribute')
1042
1043
        xmlRoot = etree.Element('modify_credential',
1044
                                credential_id=credential_id)
1045
1046
        comment = kwargs.get('comment', '')
1047
        if comment:
1048
            _xmlComment = etree.SubElement(xmlRoot, 'comment')
1049
            _xmlComment.text = comment
1050
1051
        name = kwargs.get('name', '')
1052
        if name:
1053
            _xmlName = etree.SubElement(xmlRoot, 'name')
1054
            _xmlName.text = name
1055
1056
        allow_insecure = kwargs.get('allow_insecure', '')
1057
        if allow_insecure:
1058
            _xmlAllowinsecure = etree.SubElement(xmlRoot, 'allow_insecure')
1059
            _xmlAllowinsecure.text = allow_insecure
1060
1061
        certificate = kwargs.get('certificate', '')
1062
        if certificate:
1063
            _xmlCertificate = etree.SubElement(xmlRoot, 'certificate')
1064
            _xmlCertificate.text = certificate
1065
1066
        key = kwargs.get('key', '')
1067
        if key:
1068
            phrase = key['phrase']
1069
            private = key['private']
1070
            if not phrase:
1071
                raise ValueError('modify_credential requires a phrase element')
1072
            if not private:
1073
                raise ValueError('modify_credential requires '
1074
                                 'a private element')
1075
            _xmlKey = etree.SubElement(xmlRoot, 'key')
1076
            _xmlKeyphrase = etree.SubElement(_xmlKey, 'phrase')
1077
            _xmlKeyphrase.text = phrase
1078
            _xmlKeyprivate = etree.SubElement(_xmlKey, 'private')
1079
            _xmlKeyprivate.text = private
1080
1081
        login = kwargs.get('login', '')
1082
        if login:
1083
            _xmlLogin = etree.SubElement(xmlRoot, 'login')
1084
            _xmlLogin.text = login
1085
1086
        password = kwargs.get('password', '')
1087
        if password:
1088
            _xmlPass = etree.SubElement(xmlRoot, 'password')
1089
            _xmlPass.text = password
1090
1091
        auth_algorithm = kwargs.get('auth_algorithm', '')
1092
        if auth_algorithm:
1093
            if auth_algorithm not in ('md5', 'sha1'):
1094
                raise ValueError('modify_credential requires auth_algorithm '
1095
                                 'to be either md5 or sha1')
1096
            _xmlAuthalg = etree.SubElement(xmlRoot, 'auth_algorithm')
1097
            _xmlAuthalg.text = auth_algorithm
1098
1099
        community = kwargs.get('community', '')
1100
        if community:
1101
            _xmlCommunity = etree.SubElement(xmlRoot, 'community')
1102
            _xmlCommunity.text = community
1103
1104
        privacy = kwargs.get('privacy', '')
1105
        if privacy:
1106
            algorithm = privacy.algorithm
1107
            if algorithm not in ('aes', 'des'):
1108
                raise ValueError('modify_credential requires algorithm '
1109
                                 'to be either aes or des')
1110
            p_password = privacy.password
1111
            _xmlPrivacy = etree.SubElement(xmlRoot, 'privacy')
1112
            _xmlAlgorithm = etree.SubElement(_xmlPrivacy, 'algorithm')
1113
            _xmlAlgorithm.text = algorithm
1114
            _xmlPpass = etree.SubElement(_xmlPrivacy, 'password')
1115
            _xmlPpass.text = p_password
1116
1117
        cred_type = kwargs.get('type', '')
1118
        if cred_type:
1119
            if cred_type not in ('cc', 'snmp', 'up', 'usk'):
1120
                raise ValueError('modify_credential requires type '
1121
                                 'to be either cc, snmp, up or usk')
1122
            _xmlCredtype = etree.SubElement(xmlRoot, 'type')
1123
            _xmlCredtype.text = cred_type
1124
1125
        return etree.tostring(xmlRoot).decode('utf-8')
1126
1127
    def modify_filter_command(self, filter_id, kwargs):
1128
        if not filter_id:
@@ 180-266 (lines=87) @@
177
        _xmlName.text = name
178
        return etree.tostring(xmlRoot).decode('utf-8')
179
180
    def create_credential_command(self, name, kwargs):
181
182
        xmlRoot = etree.Element('create_credential')
183
        _xmlName = etree.SubElement(xmlRoot, 'name')
184
        _xmlName.text = name
185
186
        comment = kwargs.get('comment', '')
187
        if comment:
188
            _xmlComment = etree.SubElement(xmlRoot, 'comment')
189
            _xmlComment.text = comment
190
191
        copy = kwargs.get('copy', '')
192
        if copy:
193
            _xmlCopy = etree.SubElement(xmlRoot, 'copy')
194
            _xmlCopy.text = copy
195
196
        allow_insecure = kwargs.get('allow_insecure', '')
197
        if allow_insecure:
198
            _xmlAllowinsecure = etree.SubElement(xmlRoot, 'allow_insecure')
199
            _xmlAllowinsecure.text = allow_insecure
200
201
        certificate = kwargs.get('certificate', '')
202
        if certificate:
203
            _xmlCertificate = etree.SubElement(xmlRoot, 'certificate')
204
            _xmlCertificate.text = certificate
205
206
        key = kwargs.get('key', '')
207
        if key:
208
            phrase = key['phrase']
209
            private = key['private']
210
            if not phrase:
211
                raise ValueError('create_credential requires a phrase element')
212
            if not private:
213
                raise ValueError('create_credential requires a '
214
                                 'private element')
215
216
            _xmlKey = etree.SubElement(xmlRoot, 'key')
217
            _xmlKeyphrase = etree.SubElement(_xmlKey, 'phrase')
218
            _xmlKeyphrase.text = phrase
219
            _xmlKeyprivate = etree.SubElement(_xmlKey, 'private')
220
            _xmlKeyprivate.text = private
221
222
        login = kwargs.get('login', '')
223
        if login:
224
            _xmlLogin = etree.SubElement(xmlRoot, 'login')
225
            _xmlLogin.text = login
226
227
        password = kwargs.get('password', '')
228
        if password:
229
            _xmlPass = etree.SubElement(xmlRoot, 'password')
230
            _xmlPass.text = password
231
232
        auth_algorithm = kwargs.get('auth_algorithm', '')
233
        if auth_algorithm:
234
            if auth_algorithm not in ('md5', 'sha1'):
235
                raise ValueError('create_credential requires auth_algorithm '
236
                                 'to be either md5 or sha1')
237
            _xmlAuthalg = etree.SubElement(xmlRoot, 'auth_algorithm')
238
            _xmlAuthalg.text = auth_algorithm
239
240
        community = kwargs.get('community', '')
241
        if community:
242
            _xmlCommunity = etree.SubElement(xmlRoot, 'community')
243
            _xmlCommunity.text = community
244
245
        privacy = kwargs.get('privacy', '')
246
        if privacy:
247
            algorithm = privacy.algorithm
248
            if algorithm not in ('aes', 'des'):
249
                raise ValueError('create_credential requires algorithm '
250
                                 'to be either aes or des')
251
            p_password = privacy.password
252
            _xmlPrivacy = etree.SubElement(xmlRoot, 'privacy')
253
            _xmlAlgorithm = etree.SubElement(_xmlPrivacy, 'algorithm')
254
            _xmlAlgorithm.text = algorithm
255
            _xmlPpass = etree.SubElement(_xmlPrivacy, 'password')
256
            _xmlPpass.text = p_password
257
258
        cred_type = kwargs.get('type', '')
259
        if cred_type:
260
            if cred_type not in ('cc', 'snmp', 'up', 'usk'):
261
                raise ValueError('create_credential requires type '
262
                                 'to be either cc, snmp, up or usk')
263
            _xmlCredtype = etree.SubElement(xmlRoot, 'type')
264
            _xmlCredtype.text = cred_type
265
266
        return etree.tostring(xmlRoot).decode('utf-8')
267
268
    def create_filter_command(self, name, make_unique, kwargs):
269