Merge pull request #37 from DanielSiepmann/feature/make-mapping-path-configurable

FEATURE: Make path to mapping file configurable
This commit is contained in:
Daniel Hürtgen 2017-03-23 12:28:30 +01:00 committed by GitHub
commit 6eeeb50ecb
2 changed files with 23 additions and 2 deletions

View file

@ -136,3 +136,19 @@ Typo3Update.LegacyClassnames.DocComment: ``allowedTags``
<property name="allowedTags" type="array" value="@param,@return,@var,@see,@throws"/> <property name="allowedTags" type="array" value="@param,@return,@var,@see,@throws"/>
</properties> </properties>
</rule> </rule>
``mappingFile``
Configure where the `LegacyClassnames.php` is located, through ``ruleset.xml`` or using
``--runtime-set``. Default is `LegacyClassnames.php` in the project root.
Example:
.. code:: xml
<config name="mappingFile" value="/projects/typo3_installation/vendor/composer/autoload_classaliasmap.php"/>
Example:
.. code:: bash
--runtime-set mappingFile /projects/typo3_installation/vendor/composer/autoload_classaliasmap.php

View file

@ -20,6 +20,7 @@ namespace Typo3Update\Sniffs\LegacyClassnames;
* 02110-1301, USA. * 02110-1301, USA.
*/ */
use PHP_CodeSniffer as PhpCs;
use PHP_CodeSniffer_File as PhpCsFile; use PHP_CodeSniffer_File as PhpCsFile;
/** /**
@ -44,10 +45,14 @@ trait ClassnameCheckerTrait
public $legacyExtensions = ['Extbase', 'Fluid']; public $legacyExtensions = ['Extbase', 'Fluid'];
/** /**
* @param string $mappingFile File containing php array for mapping. * Initialize, used internally, to not initialize if not needed inside __construct.
*/ */
private function initialize($mappingFile = __DIR__ . '/../../../../../LegacyClassnames.php') private function initialize()
{ {
$mappingFile = PhpCs::getConfigData('mappingFile');
if (!$mappingFile) {
$mappingFile = __DIR__ . '/../../../../../LegacyClassnames.php';
}
if ($this->legacyClassnames !== []) { if ($this->legacyClassnames !== []) {
return; return;
} }