function PanelController(
    $scope, $timeout, loadBalancersService, events
  ) {
    var ctrl = this;

    ctrl.listFunctionExtraParams = {};

    $scope.$watch(
      function() {
        return ctrl.listFunctionExtraParams;
      },
      function() {
        $timeout.cancel($scope.listTimeout);
        $scope.listTimeout = $timeout(function () {
          ctrl.listFunctionExtraParams = angular.copy(ctrl.listFunctionExtraParams);
        }, loadBalancersService.backoff.duration());
      }
    );

    $scope.$on(
      events.ACTION_DONE,
      function() {
        loadBalancersService.backoff.reset();
        ctrl.listFunctionExtraParams = angular.copy(ctrl.listFunctionExtraParams);
      }
    );

    $scope.$on(
      '$destroy',
      function() {
        $timeout.cancel($scope.listTimeout);
      }
    );
  }
/**
   * @ngdoc controller
   * @name PanelController
   *
   * @description
   * Controller for the LBaaS v2 load balancers panel.
   *
   * @param $scope The angular scope object.
   * @param $timeout The angular timeout object.
   * @param loadBalancersService The LBaaS v2 load balancers service.
   * @param events The LBaaS v2 events object.
   * @returns undefined
   */
@ngdoc controller
@name PanelController

@description
Controller for the LBaaS v2 load balancers panel.

@param $scope The angular scope object.
@param $timeout The angular timeout object.
@param loadBalancersService The LBaaS v2 load balancers service.
@param events The LBaaS v2 events object.
@returns undefined
@ngdoc controller @name PanelController @description Controller for the LBaaS v2 load balancers panel . @param $scope The angular scope object . @param $timeout The angular timeout object . @param loadBalancersService The LBaaS v2 load balancers service . @param events The LBaaS v2 events object . @returns undefined
function PanelController(
    $scope, $timeout, loadBalancersService, events
  ) {
    var ctrl = this;
    ctrl.listFunctionExtraParams = {};
    $scope.$watch(
      function() {
        return ctrl.listFunctionExtraParams;
      },
      function() {
        $timeout.cancel($scope.listTimeout);
        $scope.listTimeout = $timeout(function () {
          ctrl.listFunctionExtraParams = angular.copy(ctrl.listFunctionExtraParams);
        }, loadBalancersService.backoff.duration());
      }
    );
    $scope.$on(
      events.ACTION_DONE,
      function() {
        loadBalancersService.backoff.reset();
        ctrl.listFunctionExtraParams = angular.copy(ctrl.listFunctionExtraParams);
      }
    );
    $scope.$on(
      '$destroy',
      function() {
        $timeout.cancel($scope.listTimeout);
      }
    );
  }
function PanelController ( $scope , $timeout , loadBalancersService , events ) { var ctrl = this ; ctrl . listFunctionExtraParams = { } ; $scope . $watch ( function ( ) { return ctrl . listFunctionExtraParams ; } , function ( ) { $timeout . cancel ( $scope . listTimeout ) ; $scope . listTimeout = $timeout ( function ( ) { ctrl . listFunctionExtraParams = angular . copy ( ctrl . listFunctionExtraParams ) ; } , loadBalancersService . backoff . duration ( ) ) ; } ) ; $scope . $on ( events . ACTION_DONE , function ( ) { loadBalancersService . backoff . reset ( ) ; ctrl . listFunctionExtraParams = angular . copy ( ctrl . listFunctionExtraParams ) ; } ) ; $scope . $on ( '$destroy' , function ( ) { $timeout . cancel ( $scope . listTimeout ) ; } ) ; }
@ngdoc controller
 @name PanelController
@ngdoc controller @name PanelController