1<?php
2namespace ILIAS\UI\Implementation\Component\Table;
3
4use ILIAS\UI\Component\Table as T;
5use ILIAS\UI\Implementation\Component\SignalGeneratorInterface;
6
7/**
8 * Implementation of factory for tables
9 *
10 * @author Nils Haagen <nhaageng@concepts-and-training.de>
11 */
12class Factory implements T\Factory
13{
14
15    /**
16     * @var SignalGeneratorInterface
17     */
18    protected $signal_generator;
19
20    /**
21     * @param SignalGeneratorInterface $signal_generator
22     */
23    public function __construct(SignalGeneratorInterface $signal_generator)
24    {
25        $this->signal_generator = $signal_generator;
26    }
27
28    /**
29     * @inheritdoc
30     */
31    public function presentation($title, array $view_controls, \Closure $row_mapping)
32    {
33        return new Presentation($title, $view_controls, $row_mapping, $this->signal_generator);
34    }
35}
36