|
6 | 6 |
|
7 | 7 | use Composer\Autoload\AutoloadGenerator;
|
8 | 8 | use Composer\Composer;
|
| 9 | +use Composer\EventDispatcher\EventDispatcher; |
9 | 10 | use Composer\Filter\PlatformRequirementFilter\PlatformRequirementFilterFactory;
|
| 11 | +use Composer\IO\ConsoleIO; |
| 12 | +use Composer\IO\IOInterface; |
| 13 | +use Composer\IO\NullIO; |
| 14 | +use Composer\PartialComposer; |
10 | 15 | use Inpsyde\VipComposer\Config;
|
11 | 16 | use Inpsyde\VipComposer\Utils\InstalledPackages;
|
12 | 17 | use Inpsyde\VipComposer\Io;
|
13 | 18 | use Inpsyde\VipComposer\VipDirectories;
|
| 19 | +use Seld\JsonLint\ParsingException; |
14 | 20 |
|
15 | 21 | final class GenerateProductionAutoload implements Task
|
16 | 22 | {
|
@@ -47,14 +53,32 @@ public function enabled(TaskConfig $taskConfig): bool
|
47 | 53 | || $taskConfig->generateProdAutoload();
|
48 | 54 | }
|
49 | 55 |
|
| 56 | + /** |
| 57 | + * @return void |
| 58 | + */ |
| 59 | + public function autorun(): void |
| 60 | + { |
| 61 | + $this->doRun(null); |
| 62 | + } |
| 63 | + |
50 | 64 | /**
|
51 | 65 | * @param Io $io
|
52 | 66 | * @param TaskConfig $taskConfig
|
53 | 67 | * @return void
|
54 | 68 | */
|
55 | 69 | public function run(Io $io, TaskConfig $taskConfig): void
|
56 | 70 | {
|
57 |
| - $io->commentLine('Building production autoload...'); |
| 71 | + $this->doRun($io); |
| 72 | + } |
| 73 | + |
| 74 | + /** |
| 75 | + * @param Io $io |
| 76 | + * @return void |
| 77 | + * @throws ParsingException |
| 78 | + */ |
| 79 | + private function doRun(?Io $io): void |
| 80 | + { |
| 81 | + $io?->commentLine('Building production autoload...'); |
58 | 82 |
|
59 | 83 | $vendorDir = $this->config->composerConfigValue('vendor-dir');
|
60 | 84 | $prodAutoloadDirname = $this->config->prodAutoloadDir();
|
@@ -94,7 +118,7 @@ public function run(Io $io, TaskConfig $taskConfig): void
|
94 | 118 | file_put_contents("{$vendorDir}/autoload.php", $composerAutoloadContents);
|
95 | 119 | }
|
96 | 120 |
|
97 |
| - $io->infoLine('Done!'); |
| 121 | + $io?->infoLine('Done!'); |
98 | 122 | }
|
99 | 123 |
|
100 | 124 | /**
|
|
0 commit comments