From 73c6d4415b52eaae417120b2322bbe56fffcbd5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillaume=20Perr=C3=A9al?= <guillaume.perreal@irstea.fr> Date: Fri, 11 Mar 2016 16:45:13 +0100 Subject: [PATCH] =?UTF-8?q?Par=20d=C3=A9faut,=20utilise=20le=20filtre=20de?= =?UTF-8?q?=20s=C3=A9lection=20des=20entr=C3=A9es=20pour=20la=20d=C3=A9cor?= =?UTF-8?q?ation.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Command/GenerateCommand.php | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/Command/GenerateCommand.php b/Command/GenerateCommand.php index 70978c8..3a9706a 100644 --- a/Command/GenerateCommand.php +++ b/Command/GenerateCommand.php @@ -106,13 +106,15 @@ class GenerateCommand extends ContainerAwareCommand $config = $graphs[$name]; + list($finder, $filter) = $this->buildFinder($config['sources']); + $graph = new Graph( new ClassVisitor( - $this->buildDecorator($config['decoration']), + $this->buildDecorator($config['decoration'], $filter), $this->buildFilter($config['layout']), $this->buildNamespace($config['layout']['namespaces']) ), - $this->buildFinder($config['sources']) + $finder ); $graph->visitAll(); @@ -138,10 +140,10 @@ class GenerateCommand extends ContainerAwareCommand $filter = $this->buildFilter($config); if (!$filter) { - return $finder; + return [$finder, null]; } - return new FilteringFinder($finder, $filter); + return [new FilteringFinder($finder, $filter), $filter]; } /** @@ -169,7 +171,7 @@ class GenerateCommand extends ContainerAwareCommand * @return DecoratorInterface * @throws RuntimeException */ - protected function buildDecorator(array $config) + protected function buildDecorator(array $config, ClassFilterInterface $defaultFilter = null) { if (empty($config['decorators'])) { return NullDecorator::instance(); @@ -186,7 +188,7 @@ class GenerateCommand extends ContainerAwareCommand $decorator = new CompositeDecorator($decorators); } - $filter = $this->buildFilter($config); + $filter = $this->buildFilter($config) ?: $defaultFilter; if ($filter) { $decorator = new FilteringDecorator($decorator, $filter); } -- GitLab