comparison vendor/composer/installers/src/Composer/Installers/TYPO3FlowInstaller.php @ 0:4c8ae668cc8c

Initial import (non-working)
author Chris Cannam
date Wed, 29 Nov 2017 16:09:58 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:4c8ae668cc8c
1 <?php
2 namespace Composer\Installers;
3
4 /**
5 * An installer to handle TYPO3 Flow specifics when installing packages.
6 */
7 class TYPO3FlowInstaller extends BaseInstaller
8 {
9 protected $locations = array(
10 'package' => 'Packages/Application/{$name}/',
11 'framework' => 'Packages/Framework/{$name}/',
12 'plugin' => 'Packages/Plugins/{$name}/',
13 'site' => 'Packages/Sites/{$name}/',
14 'boilerplate' => 'Packages/Boilerplates/{$name}/',
15 'build' => 'Build/{$name}/',
16 );
17
18 /**
19 * Modify the package name to be a TYPO3 Flow style key.
20 *
21 * @param array $vars
22 * @return array
23 */
24 public function inflectPackageVars($vars)
25 {
26 $autoload = $this->package->getAutoload();
27 if (isset($autoload['psr-0']) && is_array($autoload['psr-0'])) {
28 $namespace = key($autoload['psr-0']);
29 $vars['name'] = str_replace('\\', '.', $namespace);
30 }
31 if (isset($autoload['psr-4']) && is_array($autoload['psr-4'])) {
32 $namespace = key($autoload['psr-4']);
33 $vars['name'] = rtrim(str_replace('\\', '.', $namespace), '.');
34 }
35
36 return $vars;
37 }
38 }