You are here

protected function ListCommand::execute in Devel 8.3

Same name and namespace in other branches
  1. 8 webprofiler/src/Command/ListCommand.php \Drupal\webprofiler\Command\ListCommand::execute()
  2. 8.2 webprofiler/src/Command/ListCommand.php \Drupal\webprofiler\Command\ListCommand::execute()
  3. 4.x webprofiler/src/Command/ListCommand.php \Drupal\webprofiler\Command\ListCommand::execute()

File

webprofiler/src/Command/ListCommand.php, line 40

Class

ListCommand
Class ListCommand.

Namespace

Drupal\webprofiler\Command

Code

protected function execute(InputInterface $input, OutputInterface $output) {
  $ip = $input
    ->getOption('ip');
  $url = $input
    ->getOption('url');
  $method = $input
    ->getOption('method');
  $limit = $input
    ->getOption('limit');

  /** @var \Drupal\webprofiler\Profiler\Profiler $profiler */
  $profiler = $this->container
    ->get('profiler');
  $profiles = $profiler
    ->find($ip, $url, $limit, $method, '', '');
  $rows = [];
  foreach ($profiles as $profile) {
    $row = [];
    $row[] = $profile['token'];
    $row[] = $profile['ip'];
    $row[] = $profile['method'];
    $row[] = $profile['url'];
    $row[] = date($this
      ->trans('commands.webprofiler.list.rows.time'), $profile['time']);
    $rows[] = $row;
  }
  $table = new Table($output);
  $table
    ->setHeaders([
    $this
      ->trans('commands.webprofiler.list.header.token'),
    $this
      ->trans('commands.webprofiler.list.header.ip'),
    $this
      ->trans('commands.webprofiler.list.header.method'),
    $this
      ->trans('commands.webprofiler.list.header.url'),
    $this
      ->trans('commands.webprofiler.list.header.time'),
  ])
    ->setRows($rows);
  $table
    ->render();
}