diff --git a/composer.json b/composer.json index 17e8e2ed99bca4994c2598e05078566dcabb06cf..e783004bcccd00f0c03fb3411a37cb3885ad8afc 100644 --- a/composer.json +++ b/composer.json @@ -30,7 +30,7 @@ }, "require": { "composer-plugin-api": "^1.0.0", - "lakedrops/composer-json-utils": "^1.0.0" + "lakedrops/composer-json-utils": "^1.1.0" }, "require-dev": { "composer/composer": "^1.5.0", diff --git a/src/Handler.php b/src/Handler.php index 7f36c7f8e8b5f265472956190273c0e8c9fb1390..5e0c4370cb53a99a22c869cb8f917dbd0b4e9be4 100644 --- a/src/Handler.php +++ b/src/Handler.php @@ -2,57 +2,16 @@ namespace LakeDrops\ComposerScripts; -use Composer\Composer; -use Composer\IO\IOInterface; use Composer\Script\Event; +use LakeDrops\Component\Composer\BaseHandler; use LakeDrops\Component\Composer\Utils; /** * Class Handler. * - * @package LakeDrops\Drupal8Scaffold + * @package LakeDrops\ComposerScripts */ -class Handler { - - /** - * The composer object running this session. - * - * @var \Composer\Composer - */ - protected $composer; - - /** - * The input-output object for the composer session. - * - * @var \Composer\IO\IOInterface - */ - protected $io; - - /** - * Handler constructor. - * - * @param \Composer\Composer $composer - * The composer object. - * @param \Composer\IO\IOInterface $io - * The input-output object. - */ - public function __construct(Composer $composer, IOInterface $io) { - $this->composer = $composer; - $this->io = $io; - } - - /** - * Retrieve a package from the current composer process. - * - * @param string $name - * Name of the package to get from the current composer installation. - * - * @return \Composer\Package\PackageInterface - * The package. - */ - protected function getPackage($name) { - return $this->composer->getRepositoryManager()->getLocalRepository()->findPackage($name, '*'); - } +class Handler extends BaseHandler { /** * Update scripts of all LakeDrops plugins. diff --git a/src/Plugin.php b/src/Plugin.php index cd9dff4c938b6ac7101b5b6e538f06d4e6c0b196..30cccdb03b47c13a0a25439a3614e33a273c5776 100644 --- a/src/Plugin.php +++ b/src/Plugin.php @@ -2,30 +2,20 @@ namespace LakeDrops\ComposerScripts; -use Composer\Composer; -use Composer\EventDispatcher\EventSubscriberInterface; -use Composer\IO\IOInterface; -use Composer\Plugin\PluginInterface; use Composer\Script\Event; use Composer\Script\ScriptEvents; +use LakeDrops\Component\Composer\BasePlugin; /** * Composer plugin for handling drupal scaffold. */ -class Plugin implements PluginInterface, EventSubscriberInterface { - - /** - * The handler object for events. - * - * @var \LakeDrops\ComposerScripts\Handler - */ - protected $handler; +class Plugin extends BasePlugin { /** * {@inheritdoc} */ - public function activate(Composer $composer, IOInterface $io) { - $this->handler = new Handler($composer, $io); + public function getHandlerClass() { + return Handler::class; } /**