/** * Get instance of DateTime * * @return \Magento\Framework\Stdlib\DateTime\DateTime */ public function get() { if (!$this->dateTime) { $this->dateTime = $this->objectManagerProvider->get()->create('Magento\\Framework\\Stdlib\\DateTime\\DateTime', ['localeDate' => $this->tzProvider->get()]); } return $this->dateTime; }
/** * {@inheritdoc} */ protected function execute(InputInterface $input, OutputInterface $output) { if (!$this->deploymentConfig->isAvailable()) { $output->writeln("<info>No information is available: the Magento application is not installed.</info>"); return; } /** @var DbVersionInfo $dbVersionInfo */ $dbVersionInfo = $this->objectManagerProvider->get()->get('Magento\\Framework\\Module\\DbVersionInfo'); $outdated = $dbVersionInfo->getDbVersionErrors(); if (!empty($outdated)) { $output->writeln("<info>The module code base doesn't match the DB schema and data.</info>"); $versionParser = new VersionParser(); $codebaseUpdateNeeded = false; foreach ($outdated as $row) { if (!$codebaseUpdateNeeded && $row[DbVersionInfo::KEY_CURRENT] !== 'none') { // check if module code base update is needed $currentVersion = $versionParser->parseConstraints($row[DbVersionInfo::KEY_CURRENT]); $requiredVersion = $versionParser->parseConstraints('>' . $row[DbVersionInfo::KEY_REQUIRED]); if ($requiredVersion->matches($currentVersion)) { $codebaseUpdateNeeded = true; } } $output->writeln(sprintf("<info>%20s %10s: %11s -> %-11s</info>", $row[DbVersionInfo::KEY_MODULE], $row[DbVersionInfo::KEY_TYPE], $row[DbVersionInfo::KEY_CURRENT], $row[DbVersionInfo::KEY_REQUIRED])); } if ($codebaseUpdateNeeded) { $output->writeln('<info>Some modules use code versions newer or older than the database. ' . "First update the module code, then run 'setup:upgrade'.</info>"); // we must have an exit code higher than zero to indicate something was wrong return \Magento\Framework\Console\Cli::RETURN_FAILURE; } else { $output->writeln("<info>Run 'setup:upgrade' to update your DB schema and data.</info>"); } } else { $output->writeln('<info>All modules are up to date.</info>'); } }
/** * Get instance of Timezone * * @return \Magento\Framework\Stdlib\DateTime\Timezone */ public function get() { if (!$this->timezone) { $this->timezone = $this->objectManagerProvider->get()->create('Magento\\Framework\\Stdlib\\DateTime\\Timezone', ['scopeType' => ScopeConfigInterface::SCOPE_TYPE_DEFAULT]); } return $this->timezone; }
public function testGet() { $this->locator->expects($this->once())->method('get')->with(InitParamListener::BOOTSTRAP_PARAM)->willReturn([]); $objectManager = $this->object->get(); $this->assertInstanceOf('Magento\\Framework\\ObjectManagerInterface', $objectManager); $this->assertSame($objectManager, $this->object->get()); }
/** * Creates setup * * @param ResourceConnection $appResource * @return Setup */ public function create(ResourceConnection $appResource = null) { $objectManager = $this->objectManagerProvider->get(); if ($appResource === null) { $appResource = $objectManager->get('Magento\\Framework\\App\\ResourceConnection'); } return new Setup($appResource); }
/** * Constructor * * @param \Magento\Setup\Model\ObjectManagerProvider $objectManagerProvider * @param \Symfony\Component\Console\Output\OutputInterface $output * @param \Magento\Setup\Model\Cron\Status $status * @param array $name * @param array $params */ public function __construct(\Magento\Setup\Model\ObjectManagerProvider $objectManagerProvider, \Symfony\Component\Console\Output\OutputInterface $output, \Magento\Setup\Model\Cron\Status $status, $name, $params = []) { $this->cleanupFiles = $objectManagerProvider->get()->get('Magento\\Framework\\App\\State\\CleanupFiles'); $this->cache = $objectManagerProvider->get()->get('Magento\\Framework\\App\\Cache'); $this->output = $output; $this->status = $status; parent::__construct($output, $status, $objectManagerProvider, $name, $params); }
/** * @return ViewModel */ public function indexAction() { if ($this->moduleList->has('Magento_SampleData')) { /** @var \Magento\Framework\Setup\SampleData\State $sampleData */ $sampleData = $this->objectManagerProvider->get()->get('Magento\\Framework\\Setup\\SampleData\\State'); $isSampleDataErrorInstallation = $sampleData->hasError(); } else { $isSampleDataErrorInstallation = false; } $view = new ViewModel(['isSampleDataErrorInstallation' => $isSampleDataErrorInstallation]); $view->setTerminal(true); return $view; }
/** * Constructor * * @param ObjectManagerProvider $objectManagerProvider * @param \Magento\Framework\Composer\Remove $remove * @param UninstallCollector $collector * @param \Magento\Setup\Module\SetupFactory $setupFactory */ public function __construct(ObjectManagerProvider $objectManagerProvider, \Magento\Framework\Composer\Remove $remove, UninstallCollector $collector, \Magento\Setup\Module\SetupFactory $setupFactory) { $this->objectManager = $objectManagerProvider->get(); $this->remove = $remove; $this->collector = $collector; $this->setupFactory = $setupFactory; }
/** * Constructor * * @param MagentoComposerApplicationFactory $applicationFactory * @param \Magento\Framework\Filesystem $filesystem * @param ComposerInformation $composerInformation * @param ObjectManagerProvider $objectManagerProvider * @throws \Exception */ public function __construct(MagentoComposerApplicationFactory $applicationFactory, Filesystem $filesystem, ComposerInformation $composerInformation, ObjectManagerProvider $objectManagerProvider) { $this->application = $applicationFactory->create(); $this->directory = $filesystem->getDirectoryWrite(DirectoryList::VAR_DIR); $this->objectManager = $objectManagerProvider->get(); $this->composerInformation = $composerInformation; }
/** * Constructor * * @param ObjectManagerProvider $objectManagerProvider * @param WebLogger $logger * @param DirectoryList $directoryList * @param Filesystem $fileSystem */ public function __construct(ObjectManagerProvider $objectManagerProvider, WebLogger $logger, DirectoryList $directoryList, Filesystem $fileSystem) { $objectManager = $objectManagerProvider->get(); $this->backupHandler = $objectManager->create('Magento\\Framework\\Setup\\BackupRollback', ['log' => $logger]); $this->directoryList = $directoryList; $this->fileSystem = $fileSystem; }
/** * Retrieve all available versions for a package * * @param string $package * @return array * @throws \RuntimeException */ private function getPackageAvailableVersions($package) { $magentoRepositories = $this->composerInformation->getRootRepositories(); // Check we have only one repo.magento.com repository if (count($magentoRepositories) === 1 && strpos($magentoRepositories[0], $this->packagesAuth->getCredentialBaseUrl())) { $packagesJsonData = $this->getPackagesJson(); if ($packagesJsonData) { $packagesJsonData = json_decode($packagesJsonData, true); } else { $packagesJsonData['packages'] = []; } if (isset($packagesJsonData['packages'][$package])) { $packageVersions = $packagesJsonData['packages'][$package]; uksort($packageVersions, 'version_compare'); $packageVersions = array_reverse($packageVersions); return array_keys($packageVersions); } } else { $versionsPattern = '/^versions\\s*\\:\\s(.+)$/m'; $commandParams = [self::PARAM_COMMAND => self::COMPOSER_SHOW, self::PARAM_PACKAGE => $package, self::PARAM_AVAILABLE => true]; $applicationFactory = $this->objectManagerProvider->get()->get('Magento\\Framework\\Composer\\MagentoComposerApplicationFactory'); /** @var \Magento\Composer\MagentoComposerApplication $application */ $application = $applicationFactory->create(); $result = $application->runComposerCommand($commandParams); $matches = []; preg_match($versionsPattern, $result, $matches); if (isset($matches[1])) { return explode(', ', $matches[1]); } } throw new \RuntimeException(sprintf('Couldn\'t get available versions for package %s', $package)); }
/** * @return ViewModel */ public function indexAction() { $sampleDataDeployed = $this->moduleList->has('Magento_SampleData'); if ($sampleDataDeployed) { /** @var \Magento\Framework\Setup\SampleData\State $sampleData */ $sampleData = $this->objectManagerProvider->get()->get('Magento\\Framework\\Setup\\SampleData\\State'); $isSampleDataInstalled = $sampleData->isInstalled(); $isSampleDataErrorInstallation = $sampleData->hasError(); } else { $isSampleDataInstalled = false; $isSampleDataErrorInstallation = false; } $view = new ViewModel(['timezone' => $this->list->getTimezoneList(), 'currency' => $this->list->getCurrencyList(), 'language' => $this->list->getLocaleList(), 'isSampleDataInstalled' => $isSampleDataInstalled, 'isSampleDataErrorInstallation' => $isSampleDataErrorInstallation]); $view->setTerminal(true); return $view; }
/** * Inject dependencies * * @param InstallerFactory $installerFactory * @param DeploymentConfig $deploymentConfig * @param ObjectManagerProvider $objectManagerProvider */ public function __construct(InstallerFactory $installerFactory, DeploymentConfig $deploymentConfig, ObjectManagerProvider $objectManagerProvider) { $this->installerFactory = $installerFactory; $this->deploymentConfig = $deploymentConfig; $this->objectManager = $objectManagerProvider->get(); parent::__construct(); }
/** * Constructor * * @param ObjectManagerProvider $objectManagerProvider * @param MaintenanceMode $maintenanceMode * @param DeploymentConfig $deploymentConfig */ public function __construct(ObjectManagerProvider $objectManagerProvider, MaintenanceMode $maintenanceMode, DeploymentConfig $deploymentConfig) { $this->objectManager = $objectManagerProvider->get(); $this->maintenanceMode = $maintenanceMode; $this->backupRollbackFactory = $this->objectManager->get('Magento\\Framework\\Setup\\BackupRollbackFactory'); $this->deploymentConfig = $deploymentConfig; parent::__construct(); }
/** * Constructor * * @param ModuleLoader $moduleLoader * @param DeploymentConfig $deploymentConfig * @param ObjectManagerProvider $objectManagerProvider */ public function __construct(ModuleLoader $moduleLoader, DeploymentConfig $deploymentConfig, ObjectManagerProvider $objectManagerProvider) { $this->allModules = $moduleLoader->load(); foreach (array_keys($this->allModules) as $module) { $this->allModules[$module]['selected'] = true; $this->allModules[$module]['disabled'] = true; } $this->deploymentConfig = $deploymentConfig; $this->dependencyChecker = $objectManagerProvider->get()->get('Magento\\Framework\\Module\\DependencyChecker'); }
/** * @param \Magento\Framework\Composer\ComposerInformation $composerInformation * @param \Magento\Setup\Model\ObjectManagerProvider $objectManagerProvider * @param \Magento\Setup\Model\ConnectManager $connectManager * @param \Magento\Setup\Model\UpdatePackagesCache $updatePackagesCache */ public function __construct(\Magento\Framework\Composer\ComposerInformation $composerInformation, \Magento\Setup\Model\ObjectManagerProvider $objectManagerProvider, \Magento\Setup\Model\UpdatePackagesCache $updatePackagesCache, \Magento\Setup\Model\ConnectManager $connectManager) { $this->composerInformation = $composerInformation; $objectManager = $objectManagerProvider->get(); $this->enabledModuleList = $objectManager->get('Magento\\Framework\\Module\\ModuleList'); $this->fullModuleList = $objectManager->get('Magento\\Framework\\Module\\FullModuleList'); $this->packageInfo = $objectManager->get('Magento\\Framework\\Module\\PackageInfoFactory')->create(); $this->connectManager = $connectManager; $this->updatePackagesCache = $updatePackagesCache; }
/** * Prolong session * * @return string */ public function prolongAction() { try { if ($this->serviceManager->get('Magento\\Framework\\App\\DeploymentConfig')->isAvailable()) { $objectManager = $this->objectManagerProvider->get(); /** @var \Magento\Framework\App\State $adminAppState */ $adminAppState = $objectManager->get('Magento\\Framework\\App\\State'); $adminAppState->setAreaCode(\Magento\Framework\App\Area::AREA_ADMIN); /* @var \Magento\Backend\Model\Auth\Session $session */ $sessionConfig = $objectManager->get('Magento\\Backend\\Model\\Session\\AdminConfig'); $sessionConfig->setCookiePath('/setup'); $session = $objectManager->create('Magento\\Backend\\Model\\Auth\\Session', ['sessionConfig' => $sessionConfig, 'appState' => $adminAppState]); $session->prolong(); return new JsonModel(['success' => true]); } } catch (\Exception $e) { } return new JsonModel(['success' => false]); }
/** * Constructor * * @param \Magento\Framework\Composer\ComposerInformation $composerInformation * @param Helper\ModuleUninstall $moduleUninstall * @param Helper\ThemeUninstall $themeUninstall * @param \Magento\Setup\Model\ObjectManagerProvider $objectManagerProvider * @param \Symfony\Component\Console\Output\OutputInterface $output * @param \Magento\Setup\Model\Cron\Queue $queue * @param \Magento\Setup\Model\Cron\Status $status * @param \Magento\Setup\Model\Updater $updater * @param string $name * @param array $params */ public function __construct(\Magento\Framework\Composer\ComposerInformation $composerInformation, Helper\ModuleUninstall $moduleUninstall, Helper\ThemeUninstall $themeUninstall, \Magento\Setup\Model\ObjectManagerProvider $objectManagerProvider, \Symfony\Component\Console\Output\OutputInterface $output, \Magento\Setup\Model\Cron\Queue $queue, \Magento\Setup\Model\Cron\Status $status, \Magento\Setup\Model\Updater $updater, $name, $params = []) { $this->composerInformation = $composerInformation; $this->moduleUninstall = $moduleUninstall; $this->themeUninstall = $themeUninstall; $this->objectManager = $objectManagerProvider->get(); $this->updater = $updater; $this->queue = $queue; parent::__construct($output, $status, $objectManagerProvider, $name, $params); }
/** * Constructor * * @param DeploymentConfig $deploymentConfig * @param DirectoryList $directoryList * @param Manager $taskManager * @param ObjectManagerProvider $objectManagerProvider * @param Filesystem $filesystem * @param DriverInterface $fileDriver * @param \Magento\Framework\Component\ComponentRegistrar $componentRegistrar */ public function __construct(DeploymentConfig $deploymentConfig, DirectoryList $directoryList, Manager $taskManager, ObjectManagerProvider $objectManagerProvider, Filesystem $filesystem, DriverInterface $fileDriver, ComponentRegistrar $componentRegistrar) { $this->deploymentConfig = $deploymentConfig; $this->directoryList = $directoryList; $this->objectManager = $objectManagerProvider->get(); $this->taskManager = $taskManager; $this->filesystem = $filesystem; $this->fileDriver = $fileDriver; $this->componentRegistrar = $componentRegistrar; parent::__construct(); }
/** * @param \Magento\Framework\Composer\ComposerInformation $composerInformation * @param \Magento\Setup\Model\ObjectManagerProvider $objectManagerProvider * @param \Magento\Setup\Model\MarketplaceManager $marketplaceManager * @param \Magento\Setup\Model\UpdatePackagesCache $updatePackagesCache */ public function __construct(\Magento\Framework\Composer\ComposerInformation $composerInformation, \Magento\Setup\Model\ObjectManagerProvider $objectManagerProvider, \Magento\Setup\Model\UpdatePackagesCache $updatePackagesCache, \Magento\Setup\Model\MarketplaceManager $marketplaceManager) { $this->composerInformation = $composerInformation; $objectManager = $objectManagerProvider->get(); $this->enabledModuleList = $objectManager->get('Magento\\Framework\\Module\\ModuleList'); $this->fullModuleList = $objectManager->get('Magento\\Framework\\Module\\FullModuleList'); $this->packageInfo = $objectManager->get('Magento\\Framework\\Module\\PackageInfoFactory')->create(); $this->marketplaceManager = $marketplaceManager; $this->updatePackagesCache = $updatePackagesCache; $this->timezone = $objectManager->get('Magento\\Framework\\Stdlib\\DateTime\\TimezoneInterface'); }
/** * {@inheritdoc} */ protected function execute(InputInterface $input, OutputInterface $output) { $moduleList = $this->objectManagerProvider->get()->create('Magento\\Framework\\Module\\ModuleList'); $output->writeln('<info>List of enabled modules:</info>'); $enabledModules = $moduleList->getNames(); if (count($enabledModules) === 0) { $output->writeln('None'); } else { $output->writeln(join("\n", $enabledModules)); } $output->writeln(''); $fullModuleList = $this->objectManagerProvider->get()->create('Magento\\Framework\\Module\\FullModuleList'); $output->writeln("<info>List of disabled modules:</info>"); $disabledModules = array_diff($fullModuleList->getNames(), $enabledModules); if (count($disabledModules) === 0) { $output->writeln('None'); } else { $output->writeln(join("\n", $disabledModules)); } }
/** * @param ServiceLocatorInterface $serviceLocator * @param ObjectManagerProvider $objectManagerProvider */ public function __construct(ServiceLocatorInterface $serviceLocator, ObjectManagerProvider $objectManagerProvider) { $objectManager = $objectManagerProvider->get(); if ($objectManager->get('Magento\\Framework\\App\\DeploymentConfig')->isAvailable()) { $this->navStates = $serviceLocator->get('config')[self::NAV_UPDATER]; $this->navType = self::NAV_UPDATER; $this->titles = $serviceLocator->get('config')[self::NAV_UPDATER . 'Titles']; } else { $this->navStates = $serviceLocator->get('config')[self::NAV_INSTALLER]; $this->navType = self::NAV_INSTALLER; $this->titles = $serviceLocator->get('config')[self::NAV_INSTALLER . 'Titles']; } }
/** * Get Components info action * * @return \Zend\View\Model\JsonModel * @throws \RuntimeException */ public function componentsAction() { $objectManager = $this->objectManagerProvider->get(); $enabledModuleList = $objectManager->get('Magento\\Framework\\Module\\ModuleList'); $this->fullModuleList = $objectManager->get('Magento\\Framework\\Module\\FullModuleList'); $this->packageInfo = $objectManager->get('Magento\\Framework\\Module\\PackageInfoFactory')->create(); $lastSyncData = []; $authDetails = $this->packagesAuth->getAuthJsonData(); if ($authDetails) { $lastSyncData = $this->packagesData->syncPackagesData(); } $components = $this->composerInformation->getInstalledMagentoPackages(); $allModules = $this->getAllModules(); $components = array_replace_recursive($components, $allModules); foreach ($components as $component) { $components[$component['name']]['update'] = false; $components[$component['name']]['uninstall'] = false; $components[$component['name']]['moduleName'] = $this->packageInfo->getModuleName($component['name']); if ($this->composerInformation->isPackageInComposerJson($component['name'])) { if ($component['type'] !== \Magento\Framework\Composer\ComposerInformation::METAPACKAGE_PACKAGE_TYPE) { $components[$component['name']]['uninstall'] = true; } if (isset($lastSyncData['packages'][$component['name']]['latestVersion']) && version_compare($lastSyncData['packages'][$component['name']]['latestVersion'], $component['version'], '>')) { $components[$component['name']]['update'] = true; } } if ($component['type'] === \Magento\Framework\Composer\ComposerInformation::MODULE_PACKAGE_TYPE) { $components[$component['name']]['enable'] = $enabledModuleList->has($components[$component['name']]['moduleName']); $components[$component['name']]['disable'] = !$components[$component['name']]['enable']; } else { $components[$component['name']]['enable'] = false; $components[$component['name']]['disable'] = false; } $componentNameParts = explode('/', $component['name']); $components[$component['name']]['vendor'] = $componentNameParts[0]; } return new \Zend\View\Model\JsonModel(['success' => true, 'components' => array_values($components), 'total' => count($components), 'lastSyncData' => $lastSyncData]); }
/** * Constructor * * @param DeploymentConfig $deploymentConfig * @param DirectoryList $directoryList * @param Manager $taskManager * @param ObjectManagerProvider $objectManagerProvider * @param Filesystem $filesystem */ public function __construct( DeploymentConfig $deploymentConfig, DirectoryList $directoryList, Manager $taskManager, ObjectManagerProvider $objectManagerProvider, Filesystem $filesystem ) { $this->deploymentConfig = $deploymentConfig; $this->directoryList = $directoryList; $this->objectManager = $objectManagerProvider->get(); $this->taskManager = $taskManager; $this->filesystem = $filesystem; parent::__construct(); }
/** * Auto discover ConfigOptionsList class and collect them. * These classes should reside in <module>/Setup directories. * * @return \Magento\Framework\Setup\ConfigOptionsListInterface[] */ public function collectOptionsLists() { $optionsList = []; // go through modules foreach ($this->fullModuleList->getNames() as $moduleName) { $optionsClassName = str_replace('_', '\\', $moduleName) . '\\Setup\\ConfigOptionsList'; if (class_exists($optionsClassName)) { $optionsClass = $this->objectManagerProvider->get()->create($optionsClassName); if ($optionsClass instanceof ConfigOptionsListInterface) { $optionsList[$moduleName] = $optionsClass; } } } // check Setup $setupOptionsClassName = 'Magento\\Setup\\Model\\ConfigOptionsList'; if (class_exists($setupOptionsClassName)) { $setupOptionsClass = $this->serviceLocator->get($setupOptionsClassName); if ($setupOptionsClass instanceof ConfigOptionsListInterface) { $optionsList['setup'] = $setupOptionsClass; } } return $optionsList; }
/** * @return ViewModel|\Zend\Http\Response */ public function indexAction() { if ($this->deploymentConfig->isAvailable()) { $objectManager = $this->objectManagerProvider->get(); /** @var \Magento\Framework\App\State $adminAppState */ $adminAppState = $objectManager->get('Magento\Framework\App\State'); $adminAppState->setAreaCode(\Magento\Framework\App\Area::AREA_ADMIN); $objectManager->create( 'Magento\Backend\Model\Auth\Session', [ 'sessionConfig' => $objectManager->get('Magento\Backend\Model\Session\AdminConfig'), 'appState' => $adminAppState ] ); if (!$objectManager->get('Magento\Backend\Model\Auth')->isLoggedIn()) { $view = new ViewModel(); $view->setTemplate('/error/401.phtml'); $this->getResponse()->setStatusCode(\Zend\Http\Response::STATUS_CODE_401); return $view; } } return new ViewModel(); }
/** * {@inheritdoc} */ protected function execute(InputInterface $input, OutputInterface $output) { if (!$this->deploymentConfig->isAvailable()) { $output->writeln("<info>You need to install the Magento application before running this utility.</info>"); return; } $options = $input->getOptions(); $languages = $input->getArgument(self::LANGUAGE_OPTION); foreach ($languages as $lang) { if (!$this->validator->isValid($lang)) { throw new \InvalidArgumentException( $lang . ' argument has invalid value, please run info:language:list for list of available locales' ); } } try { $objectManager = $this->objectManagerProvider->get(); // run the deployment logic $filesUtil = $objectManager->create( '\Magento\Framework\App\Utility\Files', ['pathToSource' => BP] ); $objectManagerFactory = $this->objectManagerProvider->getObjectManagerFactory(); /** @var \Magento\Setup\Model\Deployer $deployer */ $deployer = $objectManager->create( 'Magento\Setup\Model\Deployer', ['filesUtil' => $filesUtil, 'output' => $output, 'isDryRun' => $options[self::DRY_RUN_OPTION]] ); $deployer->deploy($objectManagerFactory, $languages); } catch (\Exception $e) { $output->writeln('<error>' . $e->getMessage() . '</error>>'); if ($output->isVerbose()) { $output->writeln($e->getTraceAsString()); } return; } }
/** * Cleanup after updated modules status * * @param InputInterface $input * @param OutputInterface $output * @return void */ private function cleanup(InputInterface $input, OutputInterface $output) { $objectManager = $this->objectManagerProvider->get(); /** @var \Magento\Framework\App\Cache $cache */ $cache = $objectManager->get('Magento\\Framework\\App\\Cache'); $cache->clean(); $output->writeln('Cache cleared successfully.'); /** @var \Magento\Framework\App\State\CleanupFiles $cleanupFiles */ $cleanupFiles = $objectManager->get('Magento\\Framework\\App\\State\\CleanupFiles'); $cleanupFiles->clearCodeGeneratedClasses(); $output->writeln('Generated classes cleared successfully.'); if ($input->getOption(self::INPUT_KEY_CLEAR_STATIC_CONTENT)) { $cleanupFiles->clearMaterializedViewFiles(); $output->writeln('Generated static view files cleared successfully.'); } else { $output->writeln('<error>Alert: Generated static view files were not cleared.' . ' You can clear them using the --' . self::INPUT_KEY_CLEAR_STATIC_CONTENT . ' option.' . ' Failure to clear static view files might cause display issues in the Admin and storefront.'); } }
/** * Constructor * * @param ObjectManagerProvider $objectManagerProvider */ public function __construct( ObjectManagerProvider $objectManagerProvider ) { $this->objectManager = $objectManagerProvider->get(); }
/** * Constructor * * @param ObjectManagerProvider $objectManagerProvider * @param DirectoryList $directoryList * @param ComponentRegistrar $componentRegistrar */ public function __construct(ObjectManagerProvider $objectManagerProvider, DirectoryList $directoryList, ComponentRegistrar $componentRegistrar) { $this->objectManager = $objectManagerProvider->get(); $this->directoryList = $directoryList; $this->componentRegistrar = $componentRegistrar; parent::__construct(); }