12345678910111213141516171819202122232425262728 |
- <?php
- namespace think\composer;
- use Composer\Package\PackageInterface;
- use Composer\Repository\InstalledRepositoryInterface;
- use React\Promise\PromiseInterface;
- abstract class LibraryInstaller extends \Composer\Installer\LibraryInstaller
- {
- public function install(InstalledRepositoryInterface $repo, PackageInterface $package)
- {
- return $this->makePromise(parent::install($repo, $package));
- }
- public function update(InstalledRepositoryInterface $repo, PackageInterface $initial, PackageInterface $target)
- {
- return $this->makePromise(parent::update($repo, $initial, $target));
- }
- protected function makePromise($promise)
- {
- if ($promise instanceof PromiseInterface) {
- return $promise;
- }
- return new Promise();
- }
- }
|