MessagePlugin.php in Drupal 8
File
composer/Plugin/ProjectMessage/MessagePlugin.php
View source
<?php
namespace Drupal\Composer\Plugin\ProjectMessage;
use Composer\Composer;
use Composer\EventDispatcher\EventSubscriberInterface;
use Composer\IO\IOInterface;
use Composer\Plugin\PluginInterface;
use Composer\Script\Event;
use Composer\Script\ScriptEvents;
class MessagePlugin implements PluginInterface, EventSubscriberInterface {
protected $composer;
protected $io;
protected $config;
public function activate(Composer $composer, IOInterface $io) {
$this->composer = $composer;
$this->io = $io;
}
public function deactivate(Composer $composer, IOInterface $io) {
}
public function uninstall(Composer $composer, IOInterface $io) {
}
public static function getSubscribedEvents() {
return [
ScriptEvents::POST_CREATE_PROJECT_CMD => 'displayPostCreateMessage',
ScriptEvents::POST_INSTALL_CMD => 'displayPostCreateMessage',
];
}
public function displayPostCreateMessage(Event $event) {
$message = new Message($this->composer
->getPackage(), $event
->getName());
if ($message = $message
->getText()) {
$this->io
->write($message);
}
}
}
Classes
Name |
Description |
MessagePlugin |
A Composer plugin to display a message after creating a project. |