public function __construct(AdapterFactory $adapterFactory, Config $config, $version = '@package_version@')
{
if ('@' . 'package_version@' !== $version) {
$version = ltrim($version, 'v');
}
parent::__construct('Gush', $version);
$this->adapterFactory = $adapterFactory;
$this->config = $config;
// The parent dispatcher is private and has
// no accessor, so we set it here to make it accessible.
$this->dispatcher = new EventDispatcher();
$this->registerSubscribers();
$this->addCommands($this->getCommands());
}