/**
  * Show the plugin list to the user, until "all" or "exit" was entered
  *
  * @param callable $callback
  * @param array    $params
  */
 public function operationLoop($callback, $params)
 {
     $plugins = $this->pluginProvider->getPlugins();
     while (true) {
         $response = $this->pluginSelector->selectPlugin($plugins, array('all', 'exit'));
         if ($response == 'exit') {
             return;
         }
         $this->ioService->cls();
         $responsePlugins = $this->getPluginsFromResponse($response, $plugins);
         foreach ($responsePlugins as $plugin) {
             $this->executeMethodCallback($plugin, $callback, $params);
         }
         $this->ioService->ask("\n<error>Done, hit enter to continue.</error>");
         $this->ioService->cls();
     }
 }