Code Duplication    Length = 28-28 lines in 2 locations

main.py 2 locations

@@ 393-420 (lines=28) @@
390
        return jsonify({msg_error:
391
                        error_list}), 400
392
393
    @rest('v1/interfaces/enable', methods=['POST'])
394
    def enable_lldp(self):
395
        """Enable an interface to receive LLDP packets."""
396
        interface_ids = self._get_data(request)
397
        error_list = []  # List of interfaces that were not activated.
398
        changed_interfaces = []
399
        interface_ids = filter(None, interface_ids)
400
        interfaces = self._get_interfaces()
401
        if not interfaces:
402
            return jsonify("No interfaces were found."), 404
403
        interfaces = self._get_interfaces_dict(interfaces)
404
        for id_ in interface_ids:
405
            interface = interfaces.get(id_)
406
            if interface:
407
                interface.lldp = True
408
                changed_interfaces.append(id_)
409
            else:
410
                error_list.append(id_)
411
        if changed_interfaces:
412
            self.notify_lldp_change('enabled', changed_interfaces)
413
        if not error_list:
414
            return jsonify(
415
                "All the requested interfaces have been enabled."), 200
416
417
        # Return a list of interfaces that couldn't be enabled
418
        msg_error = "Some interfaces couldn't be found and activated: "
419
        return jsonify({msg_error:
420
                        error_list}), 400
421
422
    @rest('v1/polling_time', methods=['GET'])
423
    def get_time(self):
@@ 364-391 (lines=28) @@
361
        """Return all the interfaces that have LLDP traffic enabled."""
362
        return jsonify({"interfaces": self._get_lldp_interfaces()}), 200
363
364
    @rest('v1/interfaces/disable', methods=['POST'])
365
    def disable_lldp(self):
366
        """Disables an interface to receive LLDP packets."""
367
        interface_ids = self._get_data(request)
368
        error_list = []  # List of interfaces that were not activated.
369
        changed_interfaces = []
370
        interface_ids = filter(None, interface_ids)
371
        interfaces = self._get_interfaces()
372
        if not interfaces:
373
            return jsonify("No interfaces were found."), 404
374
        interfaces = self._get_interfaces_dict(interfaces)
375
        for id_ in interface_ids:
376
            interface = interfaces.get(id_)
377
            if interface:
378
                interface.lldp = False
379
                changed_interfaces.append(id_)
380
            else:
381
                error_list.append(id_)
382
        if changed_interfaces:
383
            self.notify_lldp_change('disabled', changed_interfaces)
384
        if not error_list:
385
            return jsonify(
386
                "All the requested interfaces have been disabled."), 200
387
388
        # Return a list of interfaces that couldn't be disabled
389
        msg_error = "Some interfaces couldn't be found and deactivated: "
390
        return jsonify({msg_error:
391
                        error_list}), 400
392
393
    @rest('v1/interfaces/enable', methods=['POST'])
394
    def enable_lldp(self):