Mercurial > hg > isophonics-drupal-site
diff vendor/consolidation/output-formatters/src/FormatterManager.php @ 13:5fb285c0d0e3
Update Drupal core to 8.4.7 via Composer. Security update; I *think* we've
been lucky to get away with this so far, as we don't support self-registration
which seems to be used by the so-called "drupalgeddon 2" attack that 8.4.5
was vulnerable to.
author | Chris Cannam |
---|---|
date | Mon, 23 Apr 2018 09:33:26 +0100 |
parents | 4c8ae668cc8c |
children | 129ea1e6d783 |
line wrap: on
line diff
--- a/vendor/consolidation/output-formatters/src/FormatterManager.php Fri Feb 23 15:52:07 2018 +0000 +++ b/vendor/consolidation/output-formatters/src/FormatterManager.php Mon Apr 23 09:33:26 2018 +0100 @@ -4,10 +4,13 @@ use Consolidation\OutputFormatters\Exception\IncompatibleDataException; use Consolidation\OutputFormatters\Exception\InvalidFormatException; use Consolidation\OutputFormatters\Exception\UnknownFormatException; +use Consolidation\OutputFormatters\Formatters\FormatterAwareInterface; use Consolidation\OutputFormatters\Formatters\FormatterInterface; +use Consolidation\OutputFormatters\Formatters\MetadataFormatterInterface; use Consolidation\OutputFormatters\Formatters\RenderDataInterface; use Consolidation\OutputFormatters\Options\FormatterOptions; use Consolidation\OutputFormatters\Options\OverrideOptionsInterface; +use Consolidation\OutputFormatters\StructuredData\MetadataInterface; use Consolidation\OutputFormatters\StructuredData\RestructureInterface; use Consolidation\OutputFormatters\Transformations\DomToArraySimplifier; use Consolidation\OutputFormatters\Transformations\OverrideRestructureInterface; @@ -47,6 +50,9 @@ 'table' => '\Consolidation\OutputFormatters\Formatters\TableFormatter', 'sections' => '\Consolidation\OutputFormatters\Formatters\SectionsFormatter', ]; + if (class_exists('Symfony\Component\VarDumper\Dumper\CliDumper')) { + $defaultFormatters['var_dump'] = '\Consolidation\OutputFormatters\Formatters\VarDumpFormatter'; + } foreach ($defaultFormatters as $id => $formatterClassname) { $formatter = new $formatterClassname; $this->addFormatter($id, $formatter); @@ -202,10 +208,16 @@ $validFormats = $this->validFormats($structuredOutput); throw new InvalidFormatException((string)$format, $structuredOutput, $validFormats); } + if ($structuredOutput instanceof FormatterAwareInterface) { + $structuredOutput->setFormatter($formatter); + } // Give the formatter a chance to override the options $options = $this->overrideOptions($formatter, $structuredOutput, $options); - $structuredOutput = $this->validateAndRestructure($formatter, $structuredOutput, $options); - $formatter->write($output, $structuredOutput, $options); + $restructuredOutput = $this->validateAndRestructure($formatter, $structuredOutput, $options); + if ($formatter instanceof MetadataFormatterInterface) { + $formatter->writeMetadata($output, $structuredOutput, $options); + } + $formatter->write($output, $restructuredOutput, $options); } protected function validateAndRestructure(FormatterInterface $formatter, $structuredOutput, FormatterOptions $options)