Created
February 2, 2016 16:56
-
-
Save geerteltink/31a9972e1738ec77d8e3 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| public static function dumpVersionsClass(Event $composerEvent) | |
| { | |
| $io = $composerEvent->getIO(); | |
| $io->write('<info>Generating version class...</info>'); | |
| $composer = $composerEvent->getComposer(); | |
| // Get root package | |
| $rootPackage = $composer->getPackage(); | |
| while ($rootPackage instanceof AliasPackage) { | |
| $rootPackage = $rootPackage->getAliasOf(); | |
| } | |
| if ('ocramius/package-versions' === $rootPackage->getName()) { | |
| $baseDir = dirname($composer->getConfig()->get('vendor-dir')); | |
| } else { | |
| $baseDir = $composer->getConfig()->get('vendor-dir') . '/ocramius/package-versions'; | |
| } | |
| self::writeVersionClassToFile($baseDir, self::generateVersionsClass($composer)); | |
| self::reDumpAutoloader($composer); | |
| $io->write('<info>...done generating version class</info>'); | |
| } | |
| /** | |
| * @param string $versionClassSource | |
| */ | |
| private static function writeVersionClassToFile(string $baseDir, string $versionClassSource) | |
| { | |
| file_put_contents($baseDir . '/src/PackageVersions/Versions.php', $versionClassSource, 0664); | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment