Code Duplication    Length = 28-28 lines in 2 locations

main.py 2 locations

@@ 366-393 (lines=28) @@
363
        return jsonify({msg_error:
364
                        error_list}), 400
365
366
    @rest('v1/interfaces/enable', methods=['POST'])
367
    def enable_lldp(self):
368
        """Enable an interface to receive LLDP packets."""
369
        interface_ids = self._get_data(request)
370
        error_list = []  # List of interfaces that were not activated.
371
        changed_interfaces = []
372
        interface_ids = filter(None, interface_ids)
373
        interfaces = self._get_interfaces()
374
        if not interfaces:
375
            return jsonify("No interfaces were found."), 404
376
        interfaces = self._get_interfaces_dict(interfaces)
377
        for id_ in interface_ids:
378
            interface = interfaces.get(id_)
379
            if interface:
380
                interface.lldp = True
381
                changed_interfaces.append(id_)
382
            else:
383
                error_list.append(id_)
384
        if changed_interfaces:
385
            self.notify_lldp_change('enabled', changed_interfaces)
386
        if not error_list:
387
            return jsonify(
388
                "All the requested interfaces have been enabled."), 200
389
390
        # Return a list of interfaces that couldn't be enabled
391
        msg_error = "Some interfaces couldn't be found and activated: "
392
        return jsonify({msg_error:
393
                        error_list}), 400
394
395
    @rest('v1/polling_time', methods=['GET'])
396
    def get_time(self):
@@ 337-364 (lines=28) @@
334
        """Return all the interfaces that have LLDP traffic enabled."""
335
        return jsonify({"interfaces": self._get_lldp_interfaces()}), 200
336
337
    @rest('v1/interfaces/disable', methods=['POST'])
338
    def disable_lldp(self):
339
        """Disables an interface to receive LLDP packets."""
340
        interface_ids = self._get_data(request)
341
        error_list = []  # List of interfaces that were not activated.
342
        changed_interfaces = []
343
        interface_ids = filter(None, interface_ids)
344
        interfaces = self._get_interfaces()
345
        if not interfaces:
346
            return jsonify("No interfaces were found."), 404
347
        interfaces = self._get_interfaces_dict(interfaces)
348
        for id_ in interface_ids:
349
            interface = interfaces.get(id_)
350
            if interface:
351
                interface.lldp = False
352
                changed_interfaces.append(id_)
353
            else:
354
                error_list.append(id_)
355
        if changed_interfaces:
356
            self.notify_lldp_change('disabled', changed_interfaces)
357
        if not error_list:
358
            return jsonify(
359
                "All the requested interfaces have been disabled."), 200
360
361
        # Return a list of interfaces that couldn't be disabled
362
        msg_error = "Some interfaces couldn't be found and deactivated: "
363
        return jsonify({msg_error:
364
                        error_list}), 400
365
366
    @rest('v1/interfaces/enable', methods=['POST'])
367
    def enable_lldp(self):